/sbin/init 不存在 - 退出,你只能靠自己了。祝你好运

/sbin/init 不存在 - 退出,你只能靠自己了。祝你好运

我正在尝试安装 arch linux。当我启动时,它会显示下面的消息。

ERROR: Root device mounted successfully, but /sbin/init does not exist.
Bailing out, you are on your own now. Good luck.

sh: can't access tty: job control turned off
[rootfs /]# _

答案1

你应该需要systemd-sysvcompat如果你想使用init.这/sbin/init是一个简单的符号链接/lib/systemd/systemd(参见PKG构建) 由...提供systemd-sysvcompat

因此,如果你想启动你的系统,你应该添加grub kernel line(如果你使用 grub):

init=/lib/systemd/systemd

如果您不想使用,systemd-sysvcompat您应该将上面的行添加到您的GRUB's configuration

答案2

我遇到了这个问题并通过重新安装arch base系统解决了它更加注意说明给予。具体在Syslinux - BIOS 上的安装

我选择安装系统Linux阅读说明太快而忘记

配置 syslinux.cfg 以指向正确的根分区。这一步是必不可少的

在我的例子中,我的根分区位于 /dev/sda2 上,正如您在下面看到的那样,它没有指向它。

...
LABEL arch
    ...
    APPEND root=/dev/sda3 rw
    ...

它指向我的主分区 /dev/sda3

答案3

从以下位置下载最新的安装 ISO(当前为 2013.10.1)拱门下载页面。将该 ISO 放入 CD 或其他介质上,然后重新安装。

您可能使用了较旧的安装 ISO,或者安装过程中出现了问题。在我相对最新的 Arch 服务器上,/sbin/init有一个指向/lib/systemd/systemd.

您可以检查它/sbin/init是否存在,以及它是真实文件还是符号链接。如果是后者,请检查符号链接是否存在、是否可执行、是否是一个文件等。我的猜测是该过程中的某些内容会显示安装出错的地方,但您可能应该重新安装来自新下载的 ISO 映像。

答案4

如果您为 root 使用了错误的分区,则可能会发生这种情况。查找您的加载器条目(如果您像我一样在 Arch Linux 上使用 systemd-boot,则在 /boot/loader/entries/arch.conf 中),并确保“root”UUID 是您的根分区。

相关内容