什么是mdev以及如何在Linux中创build/ dev / *节点?

我们的Linux内核是2.6.31,在带有busybox的embedded式MIPS处理器上运行。

初始化脚本(rcS)启动mdev:

echo "/sbin/stbhotplug" > /proc/sys/kernel/hotplug mdev -s 

任何人都可以告诉我什么是mdev的Linux工具?

它看起来像自动热插拔,因为stbhotplug是一个处理以太网接口的脚本。

另外,我们给出的rootfs只有一个控制台设备,即/dev/console/dev唯一的文件。

但是,当系统运行时, /dev目录中充满了设备文件(例如/dev/mtd等)。

我问的原因是,偶尔我们会得到一个错误,据报道没有find/dev/ubi1或者找不到/dev/ubi1

Linux如何或何时创build这些设备?

谢谢。

这是一个链接到mdev引物 。

mdev是udev在embedded式设备中使用的轻量级替代品。 两者都处理在/dev创build设备文件,以及在发生特定事件时处理动作。

mdev基本上调用mknod来获得一组预先configuration的设备文件。

如果您有select,请改用:

 CONFIG_DEVTMPFS=y CONFIG_DEVTMPFS_MOUNT=y 

它会自动挂载/dev下的特殊devtmpfs文件系统,并允许模块在insmod上自动创build自己的设备文件,如下所示: https : //stackoverflow.com/questions/5970595/how-to-create-a-device-节点从- -初始化模块代码对的一-Linux内核模块/ 45531867#45531867

这就是Buildroot和大多数发行版目前默认做的。