为什么我在启动时遇到“init:failed to create pty …”错误?

我昨天用LiveUSB安装了Ubuntu 12.04。 我在启动时遇到问题,所以我不得不修复grub,这没关系。 但是现在当我启动电脑时,我收到了错误信息

‘init:无法创建pty – 禁用作业日志记录’

没有任何反应。 如何解决?

这是目前upstart中的已知错误 (Ubuntu的启动管理器或init -replacement)。

对于在台式机/笔记本电脑上运行常规Ubuntu内核的普通用户来说,这不应该发生,但显然它确实对其中一些用户有效。

修复方法是在内核命令行中添加--no-log引导选项。 你可以通过编辑/etc/default/grub来做到这一点:

  • Alt+F2 ,然后是gksudo gedit /etc/default/grub
  • 查找以GRUB_CMDLINE_LINUX_DEFAULT=开头的行
  • 该行通常会这样说:

    GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"

  • 添加--no-log到该行,即:

    GRUB_CMDLINE_LINUX_DEFAULT="quiet splash --no-log"

  • 保存并退出。 重启并且错误/警告应该消失。


技术解释

根据错误报告中的评论,upstart期望挂载/dev/pts并且/dev/ptmx设备在启动时存在,并在无法找到设备时打印这些错误。 这些是由Ubuntu上的initramfs设置的,因此理论上这些错误只应发生在没有initramfs的嵌入式设备上。 它们不应该是致命的,因为最终在启动过程中, mountall将确保正确设置/dev/pts/dev/ptmx