在升级的“安装”阶段发生电源故障。重新启动后报告以下错误:
init: udevtrigger main process (420) terminated with status 1
init: udevtrigger post-stop process (428) terminated with status 1
init: udevmonitor main process (419) killed by TERM signal
The disk drive for / is not ready yet or not present
Continue to wait; or press S to skip mounting or M for manual recovery
按 M 键会出现以下消息:
Root filesystem check failed.
A maintenance shell will now be started.
CONTROL-D will terminate this shell and reboot the system.
答案1
我遇到了同样的情况——升级期间断电。
进入维护外壳并尝试以下操作:
sudo mount -o remount,rw /
sudo dpkg --configure -a
sudo mount -o remount,ro /
sudo sync
sudo reboot
(最后的重新安装/同步可能只是出于偏执,但以防万一......)
答案2
当您进入这个根 shell 时,键入fdisk -l
以获取系统中的驱动器列表,然后对其执行操作fsck
(/
使用列表中的名称,例如/dev/sd5
分区。
要强制进行磁盘检查,请使用sudo fsck -f
。
答案3
我也遇到过同样的问题(升级期间断电)。我遇到的情况是系统在显示错误消息后冻结:按 S 或 M(或任何其他键)没有任何效果。
我按照@scott-wood 的说明修复了这个问题。只是一点补充:要进入维护 shell,您需要从活动磁盘启动并选择以下选项:
- 拯救一个崩溃的系统;
- 选择用作根文件系统的设备(通常是第一个条目);
- 选择“在 /dev/... 中执行 shell”作为救援操作。
我忘记执行 mount 和 sync 命令,系统成功恢复,所以我认为跳过它们是安全的。
最后记得运行“reboot”重启系统。或者,您需要通过键入“exit”或按 CTRL+D 退出 shell;退出 shell 后,选择选项“Reboot the system”。
答案4
我也遇到了这个错误,但我的问题(以及解决方法)有所不同。
成功安装 Ubuntu 11.04 后,我运行了 dist-upgrade。不知什么原因,在升级过程中,它随机更改了 /etc/fstab 中所有未通过 UUID 标识的分区的驱动器号。
编辑 /etc/fstab 并修复驱动器号为我解决了这个问题。