Outstanding ! I now have Fedora 35 installed in a Gnome Boxes VM. The steps you have shown work perfectly. Also, the native snapshots in Boxes (on Zorin OS) are completely independent of the ones on Fedora, which of course can be sent to an external drive via BTRFS. Bravo EF !. Together, I think these will provide tremendous flexibility and redundancy.
Thanks Ermanno - Fedora 35 install worked with your method too except for one difference: `snapper --config root create-config /` should be done *after* unmounting `/.snapshots` and deleting that directory otherwise it errors after trying to create it. Afterwards running `mount -a`, all your snapshots work as you expect :)
yes, you can follow everything on this guide only for small mod, on one string. Instead to deploy sudo mount /dev/vda2 /mnt/btrfs -- you can use sudo mount /dev/mapper/lucks-youridnumbers /mnt/btrfs. For find "youridnumbers use: sudo ls /dev/mapper. Have Fun bye
@@asfalted9199 I followed the guide exactly except for that part. There I used - sudo mount /dev/dm-0 /mnt/btrfs and it worked fine. Notes below for reference. Mind you, I did it on a 500 GB SSD. Thanks a TON, Ermanno! [joshua@fedora ~]$ sudo grubby --info=ALL index=0 kernel="/boot/vmlinuz-5.13.13-200.fc34.x86_64" args="ro rd.luks.uuid=luks-c90e0fa9-9901-4362-8726-0f46665d3b2c rhgb quiet" root="UUID=94361b80-7462-4a03-b937-6b0933e7220c" initrd="/boot/initramfs-5.13.13-200.fc34.x86_64.img" title="Fedora (5.13.13-200.fc34.x86_64) 34 (Workstation Edition)" id="1c1e27fad6b3402a980457eadbfee9bb-5.13.13-200.fc34.x86_64" index=1 kernel="/boot/vmlinuz-5.11.12-300.fc34.x86_64" args="ro rd.luks.uuid=luks-c90e0fa9-9901-4362-8726-0f46665d3b2c rhgb quiet" root="UUID=94361b80-7462-4a03-b937-6b0933e7220c" initrd="/boot/initramfs-5.11.12-300.fc34.x86_64.img" title="Fedora (5.11.12-300.fc34.x86_64) 34 (Workstation Edition)" id="1c1e27fad6b3402a980457eadbfee9bb-5.11.12-300.fc34.x86_64" index=2 kernel="/boot/vmlinuz-0-rescue-1c1e27fad6b3402a980457eadbfee9bb" args="ro rd.luks.uuid=luks-c90e0fa9-9901-4362-8726-0f46665d3b2c rhgb quiet" root="UUID=94361b80-7462-4a03-b937-6b0933e7220c" initrd="/boot/initramfs-0-rescue-1c1e27fad6b3402a980457eadbfee9bb.img" title="Fedora (0-rescue-1c1e27fad6b3402a980457eadbfee9bb) 34 (Workstation Edition)" id="1c1e27fad6b3402a980457eadbfee9bb-0-rescue" [joshua@fedora ~]$ sudo ls /dev/mapper [sudo] password for joshua: control luks-c90e0fa9-9901-4362-8726-0f46665d3b2c [joshua@fedora ~]$
Morning Ermanno, just wanted say that I have been reading fedora forum and this video gets mentioned in a thread Managing BTRFS snapshots (easy system rollback) with Fedora, just thought you'd like to know 👍
Btrfs is really a cool filesystem. i tried using it last year and also used snapper. however, idk if it is the nature of snapshots to slow down the system or i am limited to my hardware (i have a very slow Intel i3 laptop), but if i have at least 10 snapshots, it will slow down my system so hard, it gets annoying. in the end i limited my snapshots to 5 (using systemd timers like cron i think) to finally not using btrfs after all (since i realized i never needed the features plus I think beefy fast computers are more suitable for it). anyway, great video, i am very much interested in fedora but i got no time to distrohop. maybe i will try out soon probably not this year though.
Excellent work, really appreciate this type of walk through. What was the goal in creating the directory structures under /mnt (at 4:30) and pointing the sub-volume there, then removing that entire structure at 6:00?
To answer my own question. The goal here is simply to provide a means to point to the root volume so we can create a new .snapshots subvolume direct under the root volume. Once that new .snapshots subvolume is created we no longer need a reference to the root volume, so we can remove the directories under /mnt.
wait, i used this setup, and to my understanding the rollback feature works with snapshots and boots in to a read-write snapshot, but the snapshots seem to completely not effect the original root subvolume, what happens with the original root subvolume? should I do something with it? I'v searched and searched on the internet, I'v even installed OpenSUSE to see how they do it, to my understanding OpenSUSE uses nested subvolumes, Fedora uses a flat layout, on OpenSUSE the default root subvolume is actually a snapshot, while with the above procedure on Fedora your creating a snapshot of the default root subvolume and snapper changes the default subvolume to the snapshot, leaving the root subvolume unaffected, so ... what do i do with the default root subvolume? and should i even do something with it?
Great video and very informative. I couldn't see the last part of the statement in /etc/fstab as you had a picture in picture of yourself hiding the last part at 6:49 minutes. I am assuming that the last part of the statement is> subvol=snapshots,compress=zstd:0 0
Quick comment to note that this does not work with Gnome Software. Snapshots are only taken with software installs via command line dnf, not through Gnome Software.
What is the purpose of removing the rootflags argument? I did not get the exact purpose. Another guide I found did not mention to do that. Is it necessary or can it be skipped?
4:58 - How would you do this if / is on one drive and /home is on another drive? How do you mount two partitions into one to do snapshots that include both?
I will have to RTFM on this. I have run fedora for years but since it is upgraded, the FS remains ext4 w/ luks. If I can use snaps with ext4 and luks I would like that. Timeshift gave me restore issues so... that was not the right tool. I will research this. Thanks for the video!
Great im glad that i don't have to grab gnome from fedora 😂 personally they could put gnome on one of spacex test 🚀 and i would really watch every lunch. I really do like fedora's kde
I fucking HATE snapper. Everytime I need it, it fails to restore my system for one reason or another. Used your guide and it successfully rolled back but didn't restore the missing files. What a joke.
Outstanding ! I now have Fedora 35 installed in a Gnome Boxes VM. The steps you have shown work perfectly. Also, the native snapshots in Boxes (on Zorin OS) are completely independent of the ones on Fedora, which of course can be sent to an external drive via BTRFS. Bravo EF !. Together, I think these will provide tremendous flexibility and redundancy.
Snapshots on boot would be awesome! Thanks for the great video!
I understand nothing until you reboot. Thank you very much.
still golden and clear. thanks!
Oooh more snapper content :D thanks Ermanno. I really wish btrfs would go easy on an aging CPU.
Video fantastico e molto informativo! I used this on a fresh install of Fedora without any hiccups - amazing!
Grazie!
Thanks Ermanno - Fedora 35 install worked with your method too except for one difference: `snapper --config root create-config /` should be done *after* unmounting `/.snapshots` and deleting that directory otherwise it errors after trying to create it. Afterwards running `mount -a`, all your snapshots work as you expect :)
how can you delete a subvolume that was never created in the first place?
do you create it before the config and then you delete it?
Videos are always very good very clear
Thank you veru much for this video, very useful and I learned a lot.
Just the let anyone wondering know, it works on fedora with encryption.
yes, you can follow everything on this guide only for small mod, on one string.
Instead to deploy sudo mount /dev/vda2 /mnt/btrfs -- you can use sudo mount /dev/mapper/lucks-youridnumbers /mnt/btrfs.
For find "youridnumbers use: sudo ls /dev/mapper.
Have Fun bye
@@asfalted9199 I followed the guide exactly except for that part. There I used -
sudo mount /dev/dm-0 /mnt/btrfs
and it worked fine. Notes below for reference. Mind you, I did it on a 500 GB SSD.
Thanks a TON, Ermanno!
[joshua@fedora ~]$ sudo grubby --info=ALL
index=0
kernel="/boot/vmlinuz-5.13.13-200.fc34.x86_64"
args="ro rd.luks.uuid=luks-c90e0fa9-9901-4362-8726-0f46665d3b2c rhgb quiet"
root="UUID=94361b80-7462-4a03-b937-6b0933e7220c"
initrd="/boot/initramfs-5.13.13-200.fc34.x86_64.img"
title="Fedora (5.13.13-200.fc34.x86_64) 34 (Workstation Edition)"
id="1c1e27fad6b3402a980457eadbfee9bb-5.13.13-200.fc34.x86_64"
index=1
kernel="/boot/vmlinuz-5.11.12-300.fc34.x86_64"
args="ro rd.luks.uuid=luks-c90e0fa9-9901-4362-8726-0f46665d3b2c rhgb quiet"
root="UUID=94361b80-7462-4a03-b937-6b0933e7220c"
initrd="/boot/initramfs-5.11.12-300.fc34.x86_64.img"
title="Fedora (5.11.12-300.fc34.x86_64) 34 (Workstation Edition)"
id="1c1e27fad6b3402a980457eadbfee9bb-5.11.12-300.fc34.x86_64"
index=2
kernel="/boot/vmlinuz-0-rescue-1c1e27fad6b3402a980457eadbfee9bb"
args="ro rd.luks.uuid=luks-c90e0fa9-9901-4362-8726-0f46665d3b2c rhgb quiet"
root="UUID=94361b80-7462-4a03-b937-6b0933e7220c"
initrd="/boot/initramfs-0-rescue-1c1e27fad6b3402a980457eadbfee9bb.img"
title="Fedora (0-rescue-1c1e27fad6b3402a980457eadbfee9bb) 34 (Workstation Edition)"
id="1c1e27fad6b3402a980457eadbfee9bb-0-rescue"
[joshua@fedora ~]$ sudo ls /dev/mapper
[sudo] password for joshua:
control luks-c90e0fa9-9901-4362-8726-0f46665d3b2c
[joshua@fedora ~]$
Excellent video! Thank you very very much!
Morning Ermanno, just wanted say that I have been reading fedora forum and this video gets mentioned in a thread Managing BTRFS snapshots (easy system rollback) with Fedora, just thought you'd like to know 👍
Thanks for the info David :)
I got here the same way!
Thank you very much, you saved my day
That was great! Thanks!
Btrfs is really a cool filesystem. i tried using it last year and also used snapper. however, idk if it is the nature of snapshots to slow down the system or i am limited to my hardware (i have a very slow Intel i3 laptop), but if i have at least 10 snapshots, it will slow down my system so hard, it gets annoying. in the end i limited my snapshots to 5 (using systemd timers like cron i think) to finally not using btrfs after all (since i realized i never needed the features plus I think beefy fast computers are more suitable for it). anyway, great video, i am very much interested in fedora but i got no time to distrohop. maybe i will try out soon probably not this year though.
Excellent work, really appreciate this type of walk through. What was the goal in creating the directory structures under /mnt (at 4:30) and pointing the sub-volume there, then removing that entire structure at 6:00?
To answer my own question. The goal here is simply to provide a means to point to the root volume so we can create a new .snapshots subvolume direct under the root volume. Once that new .snapshots subvolume is created we no longer need a reference to the root volume, so we can remove the directories under /mnt.
Sorry for the late reply. Perfectly explained.
wait, i used this setup, and to my understanding the rollback feature works with snapshots and boots in to a read-write snapshot, but the snapshots seem to completely not effect the original root subvolume, what happens with the original root subvolume? should I do something with it? I'v searched and searched on the internet, I'v even installed OpenSUSE to see how they do it, to my understanding OpenSUSE uses nested subvolumes, Fedora uses a flat layout, on OpenSUSE the default root subvolume is actually a snapshot, while with the above procedure on Fedora your creating a snapshot of the default root subvolume and snapper changes the default subvolume to the snapshot, leaving the root subvolume unaffected, so ... what do i do with the default root subvolume? and should i even do something with it?
Great video and very informative. I couldn't see the last part of the statement in /etc/fstab as you had a picture in picture of yourself hiding the last part at 6:49 minutes. I am assuming that the last part of the statement is> subvol=snapshots,compress=zstd:0 0
Quick comment to note that this does not work with Gnome Software. Snapshots are only taken with software installs via command line dnf, not through Gnome Software.
True, thanks for pointing this out.
What is the purpose of removing the rootflags argument? I did not get the exact purpose. Another guide I found did not mention to do that. Is it necessary or can it be skipped?
4:58 - How would you do this if / is on one drive and /home is on another drive? How do you mount two partitions into one to do snapshots that include both?
do I need to remove flags for the newer kernels? it can be a pain removing it each time you've got a kernel update
does btrf assistant do same things as your settings with snapper?
I will have to RTFM on this. I have run fedora for years but since it is upgraded, the FS remains ext4 w/ luks. If I can use snaps with ext4 and luks I would like that. Timeshift gave me restore issues so... that was not the right tool. I will research this. Thanks for the video!
is it possible to rollback from a live dvd when the system is completely broken?
Great im glad that i don't have to grab gnome from fedora 😂 personally they could put gnome on one of spacex test 🚀 and i would really watch every lunch. I really do like fedora's kde
After changing the kernel parameters and reboot I’m stuck in the boot loop
7:05 when linux is not complaining it is a good sign.. Oh yea haha
Any way to show the snapshots in grub? Like on Suse
very good video, could you make a video of how to use grub-btrfs in fedora 34 i'm trying and not getting you
How to restore from snapshot at boot time?
Can you make a Pop_os 21 BTRFS Timeshift install?
Is this relevant for Arch as well?
In part only, as the plugin is of course Fedora only. In the coming weeks I am going to do a full Arch tutorial on that.
@@eflinux Looking forward to it!
wat the h... is snapper ? Landed here without any clue. Is it a fly-catcher function ??
snapper.io/
thanks man ... there is only one problem with this, Fedora doesn't deliver a cronjob for snapper
Why is this so unnecessary complex? Had I known I can't just use timeshift as is, I would not have ever installed Fedora.
snapper this snapper than who afraid of the big snap
I fucking HATE snapper. Everytime I need it, it fails to restore my system for one reason or another. Used your guide and it successfully rolled back but didn't restore the missing files. What a joke.