我有一个从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?
中删除条目答案 0 :(得分:0)
也许您应该检查初始脚本(/etc/init.d/ ,/ etc / inittab),看它是否重新安装/ dev / file系统。重新安装可以删除您的/ dev / 条目。
“mdev -s”触发了一个冷插件事件并为您重新创建了该条目。
答案 1 :(得分:0)
如果使用静态设备表,则应在内核配置中取消激活:devtmpfs,mdev和udev。