Ubuntu Server 12.04:启动时挂起并显示错误“udevd[538] inotify_add_watch(…) 失败:参数无效

Ubuntu Server 12.04:启动时挂起并显示错误“udevd[538] inotify_add_watch(…) 失败:参数无效

我目前面临以下情况:

在更新后重新启动 Ubuntu 12.04 LTS 服务器时(它完美地运行了大约一年,我在大约两个月前更新了它,重新启动时没有任何问题,现在大约两周前我再次进行了 apt-get 更新/升级),它在我进入 Grub 菜单选择之前就挂起了,并显示以下消息:

udevd[538] inotify_add_watch(6, /dev/dm-2, 10) failed: invalid argument

done.

该服务器有 4 个硬盘,其中 3 个被组织成一个 LVM 组(这不是我做的,所以我不知道这是如何执行的,如果需要我可以提供 vgdisplay 的输出,对我来说看起来很好)并且最后一个用于启动系统。

从 Ubuntu 12.04 Live CD 启动时(我也遇到了 udev 错误,但它只会使启动过程停滞约 10 秒钟),我可以通过执行以下操作毫无问题地挂载所有分区

mount /media/ubuntuserver /dev/mapper/ubuntuserver-root (contains the root partition)
mount /media/sda1 /dev/ubuntuserver/boot (contains the /boot directory)

fsck 没有报告这些磁盘上有任何错误。

在类似的帖子中我读到“cryptsetup”的安装修复了一些 udev 错误,所以我尝试执行 chroot:

Boot from Live CD

sudo bash

mount /media/ubuntuserver /dev/mapper/ubuntuserver-root
mount /media/sda1 /dev/ubuntuserver/boot

mount -o bind /proc /media/ubuntuserver/proc
mount -o bind /dev media/ubuntuserver/dev
mount -o bind /dev/pts /media/ubuntuserver/dev/pts
mount -o bind /sys /media/ubuntuserver/sys

chroot /media/ubuntuserver /bin/bash

swapon /dev/mapper/ubuntuserver-swap_1

但是我无法完成 apt-get 升级(更新工作正常),因为每当要处理安装后触发器时,系统就会挂起并且不执行任何操作,没有错误,什么都没有。

使用 ctrl+c 取消此过程最终让我到达调用 initramfs-update 的部分,该部分也停止运行。当从第二个 shell chroot 到系统时,我看到 /boot 中的新 initrd 文件为 0 字节。

经过一些额外的调整后,我发现当调用

update-initramfs -u -v

它停在线上

Building cpio /boot/initrd.img-2.6.32-24-server.new initramfs

/sda1 已挂载到 /boot,在第二个 shell 上,我看到创建的文件大小为 0 字节,就是这样。

有没有提示我哪里做错了?还有什么提示我还可以尝试吗?我没什么主意了……

提前谢谢你,并致以最诚挚的问候 Manuel

相关内容