/ dev / hda1在启动时从我的static / dev目录中消失

时间:2012-07-02 12:58:35

标签: linux embedded-linux busybox buildroot

我有一个从initramfs映像引导的嵌入式Linux(vanilla,3.3.8,i486,Vortex86dx)系统。

我有一个IDE闪存盘,在/ dev / hda1和/ dev / hda2有两个分区。

它有一个静态/ dev目录。

启动时,/ dev / hda1条目不再存在。 / dev / hda1似乎已被内核删除(?)。

如果我从NFS根文件系统启动目标,我没有同样的问题。

我使用Buildroot通过device_table_dev.txt文件创建/ dev目录。例如

# IDE Devices
/dev/hda    b   640 0   0   3   0   0   0   -
/dev/hda    b   640 0   0   3   1   1   1   4

我从Buildroot输出/图像中检查了rootfs.tar.gz。 / dev目录包含/ dev / hda1:

brw-r-----  1 root root  3,   0 Jul  2 13:44 hda
brw-r-----  1 root root  3,   1 Jul  2 13:44 hda1
brw-r-----  1 root root  3,   2 Jul  2 13:44 hda2
brw-r-----  1 root root  3,   3 Jul  2 13:44 hda3
brw-r-----  1 root root  3,   4 Jul  2 13:44 hda4

我在目标上的启动后目录列表(在rcS中完成)如下所示:

brw-r-----   1 root   root    3,   0 Jul  2 12:44 hda
brw-r-----   1 root   root    3,   2 Jul  2 12:44 hda2
brw-r-----   1 root   root    3,   3 Jul  2 12:44 hda3
brw-r-----   1 root   root    3,   4 Jul  2 12:44 hda4

/ dev / hda1缺失。

如果我运行Busybox实用程序“mdev -s”,它会恢复目标上的/ dev / hda1并且它正常工作。例如我可以装载它

以前有没有人见过这种行为?

内核是否从/ dev?

中删除条目

2 个答案:

答案 0 :(得分:0)

也许您应该检查初始脚本(/etc/init.d/ ,/ etc / inittab),看它是否重新安装/ dev / file系统。重新安装可以删除您的/ dev / 条目。

“mdev -s”触发了一个冷插件事件并为您重新创建了该条目。

答案 1 :(得分:0)

如果使用静态设备表,则应在内核配置中取消激活:devtmpfs,mdev和udev。