AUTOTIER(8)
π AUTOTIER(8) β like, the autotier manual page, bestie
okay so this is AUTOTIER(8) from the System Manager's Manual section β yes it's a section 8 page, that means it's a system admin situation, and yes you're gonna read all of it because I said so π«Ά
β¨ NAME β¨
autotier β a passthrough FUSE filesystem that intelligently moves files between storage tiers based on frequency of use, file age, and tier fullness.
that's the whole vibe. it shuffles your files around so the ones you actually touch live on the fast stuff and the dusty ones go chill in the back. main character file placement energy π
π SYNOPSIS π
π§ MOUNTING FILESYSTEM
autotierfs [-choqvV] mountpoint [-o fuse,options,...]
π AD HOC COMMANDS
autotier [-chqvV] command [arg1 arg2 ...]
two different binaries, two different moods. autotierfs mounts stuff, autotier does the one-off lil errands. iykyk π
π¦ DESCRIPTION π¦
so autotier is a passthrough fuse filesystem β meaning it sits in front of your real filesystems and pretends to be one big one. it combines multiple underlying filesystems, a.k.a. tiers, into one pool of storage. literally gluing them together but make it elegant β¨
each tier should be a separate filesystem, ok? not optional, that's the whole point. any number of tiers can be defined in the configuration file for autotier β go off, add as many as you want π
files get moved between each tier based on their popularity, and autotier will attempt to keep the percent usage of each tier below the tier's watermark. it's out here doing vibe checks on your data fr fr π₯
π OPTIONS π
-c,--configpath/to/config/file β override configuration file path (default/etc/autotier.conf). you wanna point it somewhere else? this is your girl.-h,--helpβ display usage message and cancel current command. it's giving "help me help you" π-o,--fuse-optionscomma,separated,list β options for fuse filsystem. seefuse(8)for details. (yes the original says "filsystem", we're keeping her, she's iconic π)-q,--quietβ mute log output, other than warnings and errors. overridesLog Levelin the configuration file to0. silence is golden bestie π€«-v,--verboseβ print debug level output. overridesLog Levelin the configuration file to2. it's gonna tell you EVERYTHING. not me getting the full lore π-V,--versionβ print autotier version and exit. prints unicode logo as well if log level is1or higher. combine with-qto mute logo output. (a logo! in a terminal! we love a brand moment πΈ)
π MOUNTING π
π MANUALLY
autotierfs [flags] mountpoint [-o fuse,options,...]
just you, your hands, and a mountpoint. go off.
π IN FSTAB
autotierfs mountpoint fuse,options,... 0 0
drop it in /etc/fstab and let the boot process handle it, periodt.
β RECOMMENDED FSTAB SETTINGS
autotierfs mountpoint default_permissions,allow_other 0 0
this is the one. the glow-up config. use this π«Ά
πΈ AD HOC COMMANDS πΈ
configβ print current configuration values. receipts, basically π§Ύhelpβ display usage message and cancel current command.list-pinsβ show all pinned files along with the tier they are pinned to. π iconic behaviour, honestlylist-popularityβ print all files in filesystem along with their popularity scores (accesses per hour). this is the leaderboard, and yes we're ranking files now πoneshotβ execute tiering of files immediately. no waiting, we're doing it NOW π₯pinβtier nameβ path/to/file [path/to/file ...] β move files into the given tier and keep them there regardless of their popularity scores. locked in. no cap πstatusβ print info about each tier, including the tier name, path, usage, and watermark. the tier gossip session πunpinpath/to/file [path/to/file ...] β remove the "pinned" flag from each file to allow the tiering process to move it. freedom π¦which-tierpath/to/file [path/to/file ...] β display a table of each file passed in the argument list with the name of the tier containing the file and the full backend path to that file. to see where each file is in a given directory, usefind path/to/directory -type f | xargs autotier which-tier
π CONFIGURATION π
the default location of the configuration file is /etc/autotier.conf.
π§ FORMAT
autotier configuration contains sections and parameters. sections are groupings of parameters that begin with a header name in square brackets. there is one special section header name, global, which contains global autotier configuration parameters. sections with headers containing anything other than global are tiers. the parameters of each section take the form of Key = value.
so like: bracket, name, bracket, then key equals value. that's the whole grammar, we stan a simple syntax β¨
π GLOBAL PARAMETERS
the following parameters are to be put under the [Global] header.
Log Level = 0|1|2β the level at which to print log messages. if the value is0, all informational messages are muted and only warnings and errors are printed. if the value is1, normal informational log messages are printed. if the value is2, debug messages will also be printed. this value is overridden by the--verboseand--quietflags.Tier Period = nβ number of seconds between each tiering of files. must be an integer in the range[0, INT64_MAX]. yes that's a big range, live your truth πStrict Period = true|falseβ iftrue, file tiering strictly happens once per period. iffalse, tiering can be triggered after writing to a file when the tier is past it's quota. default value isfalse.Metadata Path = /full/path/to/metadataβ optional. if undefined, autotier defaults to using/var/lib/autotieras the path to store metadata in. to mount autotier as an unprivileged user, set this path to somewhere with write permissions for that user.Copy Buffer Size = n [prefix][i]Bβ size of buffer to use while moving a file from one tier to another. smaller buffers will use less memory, but larger buffers may be more efficient while tiering.nis a positive real number andprefix = K|M|G|T|P|E|Z|Y. includeibetween the prefix andBto use base-1024 units instead of base-1000. default size is1 MiB.
π¦ TIER DEFINITIONS
pick a friendly name for the tier and use that as the header name. there needs to be at least two tiers, however there is no upper limit. that said, keep the number of tiers reasonable. the following parameters are to be put in each tier section.
Path = /full/path/to/tierβ the path to the tier mountpoint/directory. keep in mind that each tier should be in a separate filesystem for intended functionality. (say it with me: separate. filesystem. π )Quota = n unitβ the tier's quota. tier usage is kept under this value. it can either be a percent of the tier's capacity, or an absolute value. to set it to a percent, useQuota = n %, wherenis a positive integer in the range[0, 100]. to use an absolute value, useQuota = n [prefix][i]B, wherenis a positive real number andprefix = K|M|G|T|P|E|Z|Y. includeibetween the prefix andBto use base-1024 units instead of base-1000. while moving files around, autotier attempts to keep the percent usage of each tier below this level.
π EXAMPLE CONFIGURATION
bestie. look at this. it's giving art π¨
# autotier config
[Global] # global settings
Log Level = 1 # 0 = none, 1 = normal, 2 = debug
Tier Period = 10 # number of seconds between file move batches
[SSDs] # tier name
Path = /mnt/ssd_pool # full path to tier storage pool
Quota = 15 TiB # abs usage at which to stop filling tier
[HDDs]
Path = /mnt/hdd_pool
Quota = 70 % # % usage at which to stop filling tier
[Cold Storage]
Path = /mnt/cold_storage
Quota = 100 %
three tiers, three vibes: fast, medium, and "we forgot this exists" π§ i'm obsessed.
π«Ά AUTHOR π«Ά
autotier was created by Josh Boudreau <jboudreau@45drives.com> and is maintained by the Research and Development team at 45Drives.
shoutout to the devs, absolute legends, no cap π
ok that's the whole page, go forth and tier your files π
and that's a wrap on this edition, babe β autotier 1.1.6, dated May 12 2021 β¨ if you made it this far you're officially a filesystem girlie now, welcome to the club ππ
π¦ where this page comes from
- nixos 26.05: autotier 1.2.0
- nixpkgs unstable: autotier 1.2.0
- Copyright 2021 Josh Boudreau <jboudreau@45drives.com>
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms