0

Currently I have my arch install (pure arch + hyprland) installed so that my / (root) is on my NVME SSD (which has little space due to windows dual boot) but my /home directory is on my SSHD (hybrid of SSD and HDD but safe to just think of it as a HDD) because it has far more storage space. However due to installing more packages, drivers, etc it was getting too large to fit on my SSD so I followed some guides from askubuntu, superuser and some other sites which essentially said the same thing. Following them I booted into a live disk, mounted both drives. Here are all the drives and partitions on my system for reference (root is nvme0n1p8, home is sda5, the target for usr is sda6) Ran rsync -avh "/mnt/usr/" "sda6mnt/", edited etc/fstab and rebooted. However after reboot I got this screen

In an effort to fix this, I went back into the live disk, but this time mounted all drives like this (i.e. how they should be after its all done all done). And ran genfstab -U /mnt >> /mnt/etc/fstab, vimed into the fstab and edited it to remove the setup from before and ended up with this. It looked good to me so I rebooted but was met with the same errors from before.

So yeah I'm hoping someone can help me figure out what's wrong here of if I've made some mistake whilst partitioning or creating the fstab and thanks in advance!

P.s. I'm sorry about the pictures but I don't have a capture card and obviously couldn't screenshot in an arch recovery shell :)

1 Answer 1

0

Because /usr holds most of the main OS, it can't really be mounted by the same OS (for example, you don't have /usr/bin/mount yet), instead it must be mounted by the initramfs during the early part of the boot process. While distributions used to support /usr being mounted late via regular fstab, that's no longer the case with Arch (or Debian, or Gentoo, or Fedora).

With regular Arch mkinitcpio, edit /etc/mkinitcpio.conf to enable the usr hook; then rebuild your initramfs using mkinitcpio -P. See article. (Though since you are using Btrfs, you might generally want to switch the initramfs entirely to 'systemd' instead.)

(Realistically, however, I think there's little point in keeping the rest of / in your SSD. Without /usr, the only thing that's left on your SSD is /var and /etc, both of which are tiny and little-used – on a desktop PC it seems like a waste to store /var on the fastest disk; basically all it has is logs. I would rather either invest in a larger NVMe SSD – by now you could almost get a 2TB for the same price – or shrink the Windows installation to make space for /usr.)

Keep in mind also that rsync -a does not copy all metadata; you additionally need -HAX to preserve hard links, file ACLs, and extended attributes. (For example, there are several "setuid-like" binaries that have file capabilities assigned to them.)

3
  • Ah ok thanks for the answer. I think I might just reinstall arch on tthe sshd then. Can't really buy a new SSD right now though since I got the SSHD for free from a friend who didn't need it anymore. Also this might sound a bit stupid but do you think it just might be possible to rsync (with the new options you gave) this /usr onto the the new os after I install arch on the SSHD rather than reinstalling everything and setting all my hyprland apps and Configs again? Or will it just be way too much of a hassle? Commented Jul 12, 2023 at 14:08
  • Not really; it would look like it worked at first, but it would leave you with a ton of files that your new installation's pacman doesn't know about (that database is in /var), so the OS would only last until the first upgrade. And really I don't see the point of doing so, anyway – it's going to be easier to move the rest of the existing Arch installation to the new disk than to install it again. If you want to keep all the existing configs, you can literally keep them. Commented Jul 12, 2023 at 14:29
  • Yep thought it might be like that. Thanks for all the help though! Commented Jul 12, 2023 at 15:14

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .