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.
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.