udev:正在等待 Gentoo 上处理 uevents

udev:正在等待 Gentoo 上处理 uevents

在启动过程中,我看到机器执行了这个操作大约 30 秒:

udev: waiting for uevents to be processed

然后我收到一条简短消息,内容如下:

devfs: timeout (50 seconds)

我无法看到整个过程,因为该系统启动得非常快,包括 Xfce。

我需要提供哪些日志和配置以供进一步调查?

$uname -a

Linux genta 3.6.6-gentoo #1 SMP Sun Nov 11 11:02:23 NOVT 2012 i686 Genuine Intel(R) CPU T2300 @ 1.66GHz GenuineIntel GNU/Linux

谢谢你!

UPD:rc 状态

genta / # rc-status sysinit
Runlevel: sysinit
 dmesg                                                             [  started  ]
 udev                                                              [  started  ]
 devfs                                                             [  started  ]
genta / # rc-status boot
Runlevel: boot
 hwclock                                                           [  started  ]
 modules                                                           [  started  ]
 fsck                                                              [  started  ]
 root                                                              [  started  ]
 mtab                                                              [  started  ]
 localmount                                                        [  started  ]
 sysctl                                                            [  started  ]
 bootmisc                                                          [  started  ]
 hostname                                                          [  started  ]
 termencoding                                                      [  started  ]
 keymaps                                                           [  started  ]
 net.lo                                                            [  started  ]
 swap                                                              [  started  ]
 urandom                                                           [  started  ]
 procfs                                                            [  started  ]

UPD 2: 内核配置

genta / # cat /etc/kernels/kernel-config-x86_64-3.6.6-gentoo | grep 'DEVTMPFS\|UEVENT'
CONFIG_UEVENT_HELPER_PATH="/usr/bin/udevadm"
CONFIG_DEVTMPFS=y
CONFIG_DEVTMPFS_MOUNT=y

答案1

为了进一步调查,您可以通过编辑以下内容并重新启动来udev配置报告更详细的消息 :/etc/udev/udev.conf

udev_log="err"

"info"您可以在完成调试后将其重新设置为。udev现在应该将消息报告到var/log/messages文件中。希望这能有所帮助。

答案2

编译内核时,请确保在驱动程序 -> 通用部分中设置了以下配置选项:

CONFIG_UEVENT_HELPER_PATH="/usr/bin/udevadm"
CONFIG_DEVTMPFS=y
CONFIG_DEVTMPFS_MOUNT=y

这些不是默认值。

还可以运行这些来添加到你的初始化中:

rc-update add sysfs sysinit
rc-update add udev-mount sysinit

您是否在使用 initramrs?您的 /usr 是否位于单独的分区上?

答案3

我终于能解决这个问题了。

问题是 - 我有两个分区:/boot/,但我正在使用初始化内存文件系统启动系统。当时我还不太确定我是否需要它,但现在在积累了一些经验(构建 LFS ;))之后,我明白我不需要它,并initrd从我的/boot/grub/grub.conf文件中删除了该行

相关内容