this post was submitted on 23 Mar 2026
72 points (98.6% liked)

Linux

12928 readers
742 users here now

A community for everything relating to the GNU/Linux operating system (except the memes!)

Also, check out:

Original icon base courtesy of lewing@isc.tamu.edu and The GIMP

founded 2 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
[–] Illecors@lemmy.cafe 17 points 19 hours ago (1 children)

That... Is literally how you do it. You install the system onto a subvolume. Or many, in fact - the way I do. Root, var, srv, home, opt all get their own subvolume. Only boot stays as a separate partition.

[–] fruitcantfly@programming.dev 7 points 15 hours ago (3 children)

Ignoring /boot, what is the benefit of putting everything else in different subvolumes? As opposed to just one subvolume for / and one for /home, which is what I currently have. It just looks to me like it’d be extra work, but I’m probably missing something

[–] infiniteface@programming.dev 2 points 9 hours ago* (last edited 9 hours ago)

For one thing if you're snapshotting your subvolumes for backup purposes then it will ignore nested subvolumes. Eg you dont want to preserve snapshots of huge installed game directories, cache directories, logs or docker / podman images, usually. Saves a lot of space.

Also you can tune copy on write on a subvolume, which is great for some use cases for performance.

[–] SteveTech@aussie.zone 13 points 15 hours ago

You can snapshot them independently. E.g. I snapshot / on every update and boot, /home every boot, and temporary file directories such as /tmp & /var/tmp don't get snapshot at all and are also mounted with nodev,nosuid,noexec flags.

[–] Ooops@feddit.org 7 points 14 hours ago* (last edited 14 hours ago)

You snapshot them separately, with snapshots stopping where another subvolume starts. Have a problem booting? Copy the latest /-snapshot. But if for example /var/log is a separate subvolume it persists and you can look up what was wrong.

My setup right now has subvolumes root(mounted to /), home(mounted to /home) , logs(mounted to /var/log), snapshots(mounted to /.snapshots), pacman-cache(mounted to /var/cache/pacman) and swap(for the swapfile obviously).

I do snapshots of root, home and logs (landing in snapshots) regularly that don't require much space (only the difference between on subvolume and its snapshot uses real space in btrfs) and which can all be restored together as well as separately, while losing the temporary data in cache and swap is not problem.

And you can also transfer the snapshots somewhere else as backup (into another brtfs filesystem or as a file), including just transfering the difference from the last one as an incremental backup.