Timeshift works only with BTRFS subvolumes, thus, if you wanna have backups (snapshots), you have to have subvolumes and not install in the root of a BTRFS filesystem 😔.
That’s only to backup/rollback the root though, right? If one’s looking to backup - say - their home dir, they can just recreate the home as a subvolume without reinstalling the system. Or am I mistaken?
If you want to you can just create a new subvolume, mount it temporarily and move all your files from root to there. Then you need to figure out how to make the new subvolume your root directory upon boot and you are done.
I know how to do that, you set the subvolume as the default one, thus, when mounting, if no options are passed, it always mounts that subvolume as root.
But, you have to disable that. Sure, I set it during install, cuz installers are stupid (if you tell it to install in /@, it will most probably moan), but disable it after first run (set the real root as the default subvol, i.e. mount point) and just add subvol mount options in fstab.
It’s just extra steps I have to do now 😒, that’s why the rant.
Snapper also uses btrfs subvolumes to create snapshots, so if you did create them during your installation process, nothing to worry about.
I don’t remember if there is a way to create them after the installation, neither if it’s a tough process tho. I used to simply reinstall when I messed up with the subvolumes.
Timeshift works only with BTRFS subvolumes, thus, if you wanna have backups (snapshots), you have to have subvolumes and not install in the root of a BTRFS filesystem 😔.
That’s only to backup/rollback the root though, right? If one’s looking to backup - say - their home dir, they can just recreate the home as a subvolume without reinstalling the system. Or am I mistaken?
You can definitely do this with a few commands.
https://github.com/raldone01/config_fish/blob/main/tdcff_functions/btrfs_folder_to_subvol.fish
Because I often forget to do it I wrote a little helper script.
This file can be run or sourced and only depends on btrfs-progs and fish.
Awww man, thanks ☺️.
Good thing I love fiish, it’s my default shell 😉.
Yes, you can just set it to mount a, let’s say @home, subvolume to /home and that’s that, done.
If you want to you can just create a new subvolume, mount it temporarily and move all your files from root to there. Then you need to figure out how to make the new subvolume your root directory upon boot and you are done.
I know how to do that, you set the subvolume as the default one, thus, when mounting, if no options are passed, it always mounts that subvolume as root.
But, you have to disable that. Sure, I set it during install, cuz installers are stupid (if you tell it to install in /@, it will most probably moan), but disable it after first run (set the real root as the default subvol, i.e. mount point) and just add subvol mount options in fstab.
It’s just extra steps I have to do now 😒, that’s why the rant.
Thank you for sharing your knowledge.
Oh okey so if I have Snapper already, nothing I need to worry about?
Snapper also uses btrfs subvolumes to create snapshots, so if you did create them during your installation process, nothing to worry about.
I don’t remember if there is a way to create them after the installation, neither if it’s a tough process tho. I used to simply reinstall when I messed up with the subvolumes.
Immutable distros rejoice 😎
Take way too much space… I dual boot on the same drive 🤷.