I had an EndeavourOS btrfs installation, but my fs got corrupted, so I needed to recreate it.
I created the system backup using Timeshift in rsync mode, and /home backup via rsync -av manually, reinstalled EOS on this drive and restored both backups.
After that I could not boot because it could not find the new volumes by UUID (hibernation device 'UUID=...' not found, /new_root: can't find UUID ...). So I updated them in /etc/fstab and /etc/default/grub, chrooted and grub-mkconfig -o /boot/grub/grub.cfg, but still getting the same errors, even though they seem to show the current UUIDs.
How is it possible that it can’t find UUIDs that exist? At least in lsblk from the LiveCD. (can’t check it in the emergency shell, my keyboard doesn’t work there)
Oh, mkinitcpio -P fixed it, I guess I did it somehow wrong before.
Now it boots and the system things are restored fine, but my home is missing. Looks like @home is not mounted during @ mounting.
When I was restoring it, I simply mounted the disk via the file manager in the EOS LiveCD and rsync to ......../@home. Is it wrong?
I checked via the LiveCD again, and indeed the /home of the mounted disk is empty, while my files are present in @home.
But if I mount via
sudo mount -o subvol=@ /dev/nvme1n1p2 /mnt
sudo mount -o subvol=@home /dev/nvme1n1p2 /mnt/home
then everything is correct in /mnt/home. So I thought the same is supposed to happen when booting.