我不再看到 rc 脚本的输出

我不再看到 rc 脚本的输出

我目前的问题

将我的 debian 系统的根文件系统克隆到 SSD 后 ( cp -ax)我不再看到 rc 脚本的输出从 SSD 启动期间。我确实在关机期间或手动运行 rc 脚本时看到它们。当我启动到运行级别 1、以 root 身份登录然后退出时,我也会看到它们。内核是我自己编译的3.8.2。

当系统启动时,我看到内核消息(看起来像dmesg显示的那样),然后有一段时间没有更多消息,直到我最终看到登录提示或显示管理器登录。一些内核消息确实源自 rc 脚本,但我只看到内核消息,而不是像[ ok ] starting foo它们一样的 rc 脚本的输出。除此之外系统运行一切正常。

我尝试启动位于另一个分区(/dev/sda3)上的库存 debian 内核(3.2.0-4-486)并传递它我的root (/dev/sda1),所以它需要我的 rc 脚本。在这种情况下,我看到了这些消息。

在互联网上,我发现了一些关于完全相同问题的报告。但要么没有发布解决方案,要么解决方案是“重新安装”。

一个可能相关的问题是我无法再启动到单用户模式(运行级别 1 有效)。它直接启动到 initdefault (=3)。我怀疑控制台丢失,sulogin 失败,引导过程继续,就像我退出 sulogin 一样。我也无法启动进入 shell ( sash)。我看到来自 sash 的欢迎消息,但它不会跟我说话(没有提示)。

我目前的理论徘徊

  • cp -ax 是否遗漏了任何内容(例如 /dev)?
  • 更快的光盘会导致计时问题吗?
  • 或者这是一些完全微不足道的事情而我只是看不到它?

5月4日编辑

我最终意识到 /dev/console 需要从一开始就存在。所以我创建了一个,使用mknod,现在我又能看到来自 rc 脚本的消息了。而 /dev/console得到由 早期创建udev,这似乎并不能在启动过程中修复问题。这样我原来的问题就解决了。我还是想知道

  • 为什么启动另一个内核可以解决这个问题。在 udev 运行之前,/dev/console 存在于 /dev/sda3(另一个内核的位置)上。这个观察让我首先创建了 /dev/console。但我不明白为什么内核会采取/dev 即使我给它传递了另一个根。
  • /dev 在引导期间来自哪里
  • 为什么 udev 创建的 /dev/console 不够好
  • 还需要哪些其他 /dev 节点

  • 为什么启动到 init=/bin/sash 仍然不起作用

答案1

我的 FreeBSD livecd 也有类似的问题 - 在某些 PC 上没有 rc 脚本的输出。

该问题与内核选项“dcons_crom”有关,该选项存在于内核配置中。启用此选项后,控制台输出将重定向到 FireWire 端口(如果存在)。当我从内核配置中删除此选项后,问题就消失了。

也许您的问题有相同的来源。

相关内容