Ubuntu 无法启动:“无法写入字节:管道损坏”

Ubuntu 无法启动:“无法写入字节:管道损坏”

问题当我启动 Ubuntu 11.10 时,启动过程挂起,甚至在进入显示管理器的登录屏幕之前,并显示以下消息

Could not write bytes: broken pipes

在屏幕顶部,后面跟着几行文字(“PulseAudio”左侧有一颗黄色星星 - 不知道这是否重要...),最后是

* Stopping System V runlevel compatability                                          [Ok] 

之后我只能按 Ctrl+Alt+Del 来重新启动。

原因问题出现在我 2 月 18 日更新之后。在更新过程中,弹出一个窗口,要求我选择默认显示管理器。由于时间紧迫,我只好单击“确定”(该窗口中的默认选择是 gdm)。之后我发现 Ubuntu 11.10 使用的是 lightdm,所以我想,这可能是导致我出现问题的原因。在此更新之前,一切正常。

{到目前为止我尝试过如何修复它[如果太长请跳过此部分]我以 root 身份登录恢复模式并尝试重新安装 lightdm。使用 apt-get 命令时,我收到超过 3 行文本的错误,其中第一行是

Not using locking for read only lock file /var/lib/dpkg/lock;

但我不知道有任何使用 apt-get 的进程阻止它运行。

之后,我使用 dpkg-reconfigure lightdm 并选择 lightdm 作为默认显示管理器。它退出时显示以下行

mv: cannot move 'etc/X11/default-display-manager' to '/etc/X11/default-display-manager.pdkg-tmp': Read-only file system".

当我以正常模式启动时,它仍然挂起,但消息Could not write bytes: broken pipes消失了,只有两行文本,第一行是关于电池状态的,最后一行与上面的相同(“* 停止系统 V[...]”)。我尝试了一下,也尝试dpkg-reconfigure gdm 选择 gdm 而不是 lightdm,但这些都不起作用。系统仍然挂起,只是显示不同的文本行,但“* 停止系统 V[...]”始终是最后一行。}

其他信息这可能相关或不相关:我使用多个操作系统(其他的也可以),我使用的内核是 3.0.0-15-generic-pae。

请帮忙,我花了太多时间来设置我的 Ubuntu 系统,我不想再重复一遍。

答案1

实际上,情况是这样的,当你进入恢复模式时,你的磁盘被挂载为只读。我刚刚这样做了,由于某种原因,挂载磁盘选项不起作用,所以我只点击了“root”选项并使用:

mount -o remount,rw,errors=remount-ro /

这使得你的驱动器可写。一旦你这样做了,你应该能够做你的dkpkg-reconfigure lightdm

如果仍然显示“只读文件系统”,则执行相反的操作并开始磁盘检查:

mount -o remount,ro /
rootpartition=$(cat /etc/fstab | grep -E "# / was on .*installation" | awk '{print $5}')
e2fsck $rootpartition

如果您记不住那串很长的rootpartition=字符串,您也可以通过转到 /dev/disk/by-uuid 来获取设备,使用 36 个字符的长字符串文件(如果您没有其他 Ext 分区,它应该是唯一的字符串)。因此,它看起来像这样(使用我的 UUID):fsck /dev/disk/by-uuid/062b52ee-5df4-4ad2-829e-0734f822748c

如果发现任何错误,请务必重新启动!

事实上,当我尝试删除 Unity 并卸载 unity-greeter 时(尽管 lightdm 仍安装),我遇到了完全相同的问题。我认为它删除了 /etc/lightdm/unity-greeter.conf,但 /etc/lightdm/lightdm.conf(它引用了 unity-greeter.conf)保持不变。这解释了为什么它无法启动,虽然我没有想到要查看,只是在解决了我遇到的只读问题后重新安装了 unity-greeter。

无论如何,尝试一下吧!

相关内容