SNAPPER-CONFIGS(5)
โจ snapper-configs(5) โจ โ the config files for snapper configs, bestie edition
okay so real talk: this is the snapper-configs page from the snapper manual (section 5, filesystem snapshot management, iykyk). it's the cheat sheet for the little config files that tell snapper what to do. let's go ๐
๐ธ NAME ๐ธ
snapper-configs โ the configuration files for snapper configs ๐
๐ฆ DESCRIPTION ๐ฆ
every single file matching /etc/snapper/configs/* describes one (1) snapper config. that's it, that's the whole vibe. one file, one config, no cap โจ
๐ VARIABLES ๐
here's the full list of variables that can show up in a config file. important: boolean values must be literally "yes" or "no" โ no true, no 1, no vibes-based interpretations ๐
SUBVOLUME=pathโ the path of the subvolume or the mount point. there's no default value, like at all, and the value must always be specified. non-negotiable, periodt ๐FSTYPE=valueโ the filesystem type for the subvolume. default is"btrfs", but honestly it's recommended to always specify the filesystem type anyway. main character move ๐ซถQGROUP=qgroupโ the btrfs quota group used for the space-aware cleanup algorithms. only supported for btrfs, bestie. ๐งSPACE_LIMIT=float or sizeโ the threshold for the max space snapshots should use on the filesystem. when snapshots exceed this limit โ either as a fraction of the whole filesystem or an absolute value โ snapper will remove older snapshots during cleanup operations. an absolute value must use the C locale. only supported for btrfs. default is"0.5"(that's 50% of the filesystem, iconic). new in version0.3.0, absolute value new in version0.9.0โญFREE_LIMIT=float or sizeโ the threshold for the minimum free space that should stay free on the filesystem. when free space falls below this limit โ again, either as a fraction of the whole filesystem or an absolute value โ snapper will remove older snapshots during cleanup to reclaim space. an absolute value must use the C locale. only supported for btrfs. default is"0.2"(20% of the filesystem ๐). new in version0.8.0, absolute value new in version0.9.0UNIQUE_NUMBERS=booleanโ whether snapshot numbers should be all-time unique. if set toyes, snapshot numbers are not reused even after snapshots get deleted. default is"yes". new in version0.13.2โจALLOW_USERS=usersโ list of users allowed to operate with the config. the user-names must be separated by spaces, and spaces inside usernames can be escaped with a"\ ". also see the PERMISSIONS section insnapper(8). using network users should be avoided since it can break most commands including rollback when the network does not work ๐ญ. default is""โ but"root"is always implicitly included, no exceptions ๐ALLOW_GROUPS=groupsโ list of groups allowed to operate with the config. group-names must be separated by spaces, and spaces in group-names can be escaped with a"\ ". also see the PERMISSIONS section insnapper(8). using network groups should be avoided since it can break most commands including rollback when the network does not work ๐. default is""SYNC_ACL=booleanโ defines whether snapper will sync the users and groups fromALLOW_USERSandALLOW_GROUPSto the ACL of the.snapshotsdirectory. also see the PERMISSIONS section insnapper(8). default is"no". new in version0.2.0๐ฆBACKGROUND_COMPARISON=booleanโ defines whether pre and post snapshots should be compared in the background after creation. default is"yes"๐COMPRESSION=algorithmโ defines the compression algorithm used for saving the file list. allowed values are"none"and"gzip". depending on the installed libraries, some compression algorithms might not be available. default is"gzip". new in version0.10.1๐NUMBER_CLEANUP=booleanโ defines whether the number cleanup algorithm should be run for the config. default is"no"๐NUMBER_MIN_AGE=secondsโ minimal age for snapshots to be deleted by the number cleanup algorithm. default is"3600"โณNUMBER_LIMIT=number or rangeโ defines how many snapshots the number cleanup algorithm should keep. the youngest snapshots will be kept. default is"50"๐NUMBER_LIMIT_IMPORTANT=number or rangeโ defines how many important snapshots the number cleanup algorithm should keep. important snapshots haveimportant=yesin the userdata. the youngest important snapshots will be kept. the number of normal and important snapshots are counted independently. default is"10". new in version0.1.8๐TIMELINE_CREATE=booleanโ defines whether hourly snapshots should be created. together with the timeline cleanup algorithm this will create a collection of snapshots with more snapshots in the recent past and fewer snapshots in the far past (it's giving "radial decay", love that for us). default is"no"โจTIMELINE_CLEANUP=booleanโ defines whether the timeline cleanup algorithm should be run for the config. default is"no"TIMELINE_MIN_AGE=secondsโ minimal age for snapshots to be deleted by the timeline cleanup algorithm. default is"3600"โณTIMELINE_LIMIT_HOURLY=number or rangeโ defines how many hourly snapshots the timeline cleanup algorithm should keep. an hourly snapshot is the first snapshot in an hour. the youngest hourly snapshots will be kept. default is"10"๐TIMELINE_LIMIT_DAILY=number or rangeโ defines how many daily snapshots the timeline cleanup algorithm should keep. a daily snapshot is the first snapshot in a day. the youngest daily snapshots will be kept. default is"10"๐TIMELINE_LIMIT_WEEKLY=number or rangeโ defines how many weekly snapshots the timeline cleanup algorithm should keep. a weekly snapshot is the first snapshot in a week. the youngest weekly snapshots will be kept. in compliance with ISO 8601, weeks start on Monday ๐. default is"0"TIMELINE_LIMIT_MONTHLY=number or rangeโ defines how many monthly snapshots the timeline cleanup algorithm should keep. a monthly snapshot is the first snapshot in a month. the youngest monthly snapshots will be kept. default is"10"๐TIMELINE_LIMIT_QUARTERLY=number or rangeโ defines how many quarterly snapshots the timeline cleanup algorithm should keep. a quarterly snapshot is the first snapshot in a quarter. the youngest quarterly snapshots will be kept. default is"0"๐๏ธTIMELINE_LIMIT_YEARLY=number or rangeโ defines how many yearly snapshots the timeline cleanup algorithm should keep. a yearly snapshot is the first snapshot in a year. the youngest yearly snapshots will be kept. default is"10"๐EMPTY_PRE_POST_CLEANUP=booleanโ defines whether the empty-pre-post cleanup algorithm should be run for the config. default is"no"๐ซงEMPTY_PRE_POST_MIN_AGE=secondsโ minimal age for snapshots to be deleted by the empty-pre-post cleanup algorithm. default is"3600"โณ
๐ฅ TYPES ๐ฅ
some of the types used for the variables genuinely deserve an explanation, bestie:
- range โ a range of numbers written as
min-value-max-value, e.g."10-20"๐ - qgroup โ a btrfs qgroup in the standard form
level-id, e.g."1/0"๐งฎ
๐ NOTES ๐
the default values stated here are the values snapper uses when the entry is missing in the configuration file. some of them are not identical to the values from the configuration file template โ so don't come for me if the template says something else, that's just how it is ๐
๐ HOMEPAGE ๐
http://snapper.io/ โ go say hi ๐
๐ AUTHORS ๐
Arvin Schnell <aschnell@suse.com> โ the icon who made this happen ๐ซถ
๐ฆ SEE ALSO ๐ฆ
snapper(8), snapperd(8) โ go read those next, bestie, they're the whole ecosystem โจ
and that's the tea ๐ต โ this page is snapper version 0.13.2, dated 2026-06-16, brought to you with love and zero cap. go forth and configure ur snapshots responsibly, queen ๐
๐๐ธ
๐ฆ where this page comes from
- arch rolling: snapper 0.13.2-1 ยท GPL-2.0-only
- ๐ girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms