First, I have a working system with EOS. So no real problems but I don’t know if I have things installed correctly with respect to btrfs. When I installed I wiped everything out and chose the default for btrfs with no swap. I later implemented swap on zram. I ended up with an fstab that looks like:
UUID=CF54-F181 /boot/efi vfat defaults,noatime 0 2
UUID=fab39bc8-9e93-4759-945f-758257c0aeb4 / btrfs subvol=/@,defaults,noatime,compress=zstd 0 0
UUID=fab39bc8-9e93-4759-945f-758257c0aeb4 /home btrfs subvol=/@home,defaults,noatime,compress=zstd 0 0
UUID=fab39bc8-9e93-4759-945f-758257c0aeb4 /.snapshots btrfs subvol=/@snapshots,defaults,noatime,compress=zstd 0 0
UUID=fab39bc8-9e93-4759-945f-758257c0aeb4 /var/cache btrfs subvol=/@cache,defaults,noatime,compress=zstd 0 0
UUID=fab39bc8-9e93-4759-945f-758257c0aeb4 /var/log btrfs subvol=/@log,defaults,noatime,compress=zstd 0 0
I made sure I did not have any subvolid= options.
I followed the Archlinux wiki on snapper to set my subvol for @snapshots and then the recommended way of installing snapper.
I also installed grub-btrfs and snap-pac.
I really don’t understand why snapper can’t be installed without the @snapshots subvol being created first and it’s not clear why you have to unmount /.snapshots and the rm /.snapshots before configuring snapper, then deleted the subvol it creates during configuration. I’d love a clear explanation of that.
I know that you can just install eos with btrfs, then install snapper and a AUR btrfs-assistant and use that to configure snapper and manage all you taking and restoring of snapshots using that tool for both /root and /home.
So what is really missing between this 2 methods? Is it related to being about to use grub to boot into a ro snapshot?
There’s also the debate about not using snapper rollback while booting into one of your ro snapshots to restore. I see a lot of instructions on the web to follow but not enough explanation as to why. Being a computer engineer for 50 years makes me want to know why.
Thanks for any answers ahead of time.
BTW if it helps below are my subvol list and default subvol:
btrfs su get-default /
ID 697 gen 10013 top level 258 path @snapshots/238/snapshot
btrfs su list /
ID 258 gen 23439 top level 5 path @snapshots
ID 259 gen 23237 top level 5 path @cache
ID 260 gen 23542 top level 5 path @log
ID 266 gen 23438 top level 662 path @home/.snapshots
ID 276 gen 261 top level 258 path @snapshots/8/snapshot
ID 277 gen 263 top level 266 path @home/.snapshots/4/snapshot
ID 662 gen 23542 top level 5 path @home
ID 663 gen 9873 top level 266 path @home/.snapshots/131/snapshot
ID 695 gen 23541 top level 5 path @
ID 697 gen 10013 top level 258 path @snapshots/238/snapshot
ID 698 gen 10027 top level 266 path @home/.snapshots/133/snapshot
ID 723 gen 11445 top level 266 path @home/.snapshots/146/snapshot
ID 724 gen 11445 top level 258 path @snapshots/251/snapshot
ID 771 gen 14121 top level 266 path @home/.snapshots/170/snapshot
ID 772 gen 14122 top level 258 path @snapshots/275/snapshot
ID 819 gen 15873 top level 266 path @home/.snapshots/194/snapshot
ID 820 gen 15873 top level 258 path @snapshots/299/snapshot
ID 867 gen 17417 top level 266 path @home/.snapshots/218/snapshot
ID 868 gen 17417 top level 258 path @snapshots/323/snapshot
ID 919 gen 19648 top level 266 path @home/.snapshots/242/snapshot
ID 920 gen 19649 top level 258 path @snapshots/351/snapshot
ID 967 gen 21156 top level 266 path @home/.snapshots/266/snapshot
ID 968 gen 21156 top level 258 path @snapshots/375/snapshot
ID 1015 gen 22698 top level 266 path @home/.snapshots/290/snapshot
ID 1016 gen 22699 top level 258 path @snapshots/399/snapshot
ID 1025 gen 22983 top level 266 path @home/.snapshots/295/snapshot
ID 1026 gen 22983 top level 258 path @snapshots/404/snapshot
ID 1027 gen 23044 top level 266 path @home/.snapshots/296/snapshot
ID 1028 gen 23044 top level 258 path @snapshots/405/snapshot
ID 1029 gen 23101 top level 266 path @home/.snapshots/297/snapshot
ID 1030 gen 23101 top level 258 path @snapshots/406/snapshot
ID 1031 gen 23159 top level 266 path @home/.snapshots/298/snapshot
ID 1032 gen 23159 top level 258 path @snapshots/407/snapshot
ID 1033 gen 23216 top level 266 path @home/.snapshots/299/snapshot
ID 1034 gen 23216 top level 258 path @snapshots/408/snapshot
ID 1035 gen 23223 top level 258 path @snapshots/409/snapshot
ID 1036 gen 23226 top level 258 path @snapshots/410/snapshot
ID 1037 gen 23229 top level 258 path @snapshots/411/snapshot
ID 1038 gen 23230 top level 258 path @snapshots/412/snapshot
ID 1039 gen 23292 top level 266 path @home/.snapshots/300/snapshot
ID 1040 gen 23292 top level 258 path @snapshots/413/snapshot
ID 1041 gen 23351 top level 266 path @home/.snapshots/301/snapshot
ID 1042 gen 23351 top level 258 path @snapshots/414/snapshot
ID 1043 gen 23438 top level 266 path @home/.snapshots/302/snapshot
ID 1044 gen 23438 top level 258 path @snapshots/415/snapshot