用于热插拔的正确 linux 内核配置

che*_*zgi 2 linux embedded linux-kernel

我正在使用 busybox 和 linux 2.6.32.4。我的配置基于fedora 12.并根据mdev文档启动mdev。但我看不到我的模块,如网络适配器和插入的 USB 设备。有什么必须要做的吗?mdev 命令(挂载后):

echo /sbin/mdev > /proc/sys/kernel/hotplug
/sbin/mdev -s
Run Code Online (Sandbox Code Playgroud)

jsc*_*ier 5

的输出是which mdev什么?根据BusyBox 文档,mdev 位于 /bin 而不是 /sbin。

假设正确激活了 mdev,您能否验证您使用的内核中是否配置了热插拔?这将是CONFIG_HOTPLUG内核配置文件中的行。您可以根据内核的配置检查/proc/config.gz*

假设 mdev 已正确激活并且内核中启用了热插拔,那么您的问题可能出在 mdev 的配置文件/etc/mdev.conf 中

另一件可能有用的事情是将 /proc/sys/kernel/hotplug 设置为记录环境和调用它的命令行的 shell 脚本。

#!/bin/sh
echo $* >> /tmp/hotplug.log
env >> /tmp/hotplug.log
Run Code Online (Sandbox Code Playgroud)