如何在没有 initramfs 的情况下在启动时挂载 /usr?

如何在没有 initramfs 的情况下在启动时挂载 /usr?

我在启动安装了 systemd 的系统时遇到问题。我不想使用 initramfs,所以我使用一个自配置的内核,它使用以下内置命令行启动我的内核:

root=/dev/sda1 init=/usr/lib/systemd/systemd

但它显然不起作用,因为此时 /usr 尚未挂载。我怎样才能做到这一点?

答案1

很简单……不要再分开//usr。这是一个毫无意义的头痛。如果你对所有东西都有一个分区,/那么无论如何文件系统都将是一个几乎空的文件系统。将它们合并为一。

/合并到的示例/usr

mount /dev/sda1 /mnt/root
mount /dev/sda2 /mnt/usr
cp -a /mnt/root/usr /mnt/usr/usr
mv /mnt/usr/* /mnt/usr/usr/
cp -a /mnt/root/. /mnt/usr/.

最后将cmdline更改为root=/dev/sda2.不要忘记/etc/fstab相应地调整你的。

相关内容