新路程------udev影响sd卡挂载

来源:互联网 发布:乐拼积木 淘宝 编辑:程序博客网 时间:2024/06/05 01:57

  本来想搞个开机自动挂载sd卡,那在fstab里加了这么句话

/dev/mmcblk0p1   /mnt          vfat   defaults        0       0

奇怪的是看log报错了

[rcS]: /etc/init.d/S09mountall.sh
mount: mounting /dev/mmcblk0p1 on /mnt failed: No such file or directory

看看节点都有

mmc0: new ultra high speed SDR104 SDHC card at address 59b4
mmcblk0: mmc0:59b4  14.7 GiB
 mmcblk0: p1
VFS: Mounted root (jffs2 filesystem) on device 31:2.
Freeing init memory: 144K
[rcS]: /etc/init.d/S00mkdir.sh
mkdir: can't create directory 'boot': File exists
mkdir: can't create directory 'dev': File exists
mkdir: can't create directory 'home': File exists
mkdir: can't create directory 'mnt': File exists
mkdir: can't create directory 'opt': File exists
mkdir: can't create directory 'proc': File exists
mkdir: can't create directory 'share': File exists
mkdir: can't create directory 'sys': File exists
mkdir: can't create directory 'tmp': File exists
[rcS]: /etc/init.d/S09mountall.sh

然后我把mount加到了后面,尝试以后发现只要加在

mkdir -p /dev/.udev
udevd --daemon
udevadm trigger

这个后面就mount成功了,

修改脚本,ls /dev下的文件,发现udev之前,dev目录下只有两个节点,只有udev运行以后才出现那堆节点

[rcS]: /etc/init.d/S12udev.sh
pts      ttyS000
cannot open /dev/null
Not recognise ACTION:change
Not recognise ACTION:change
bus                 ram1                tty15               tty48
console             ram10               tty16               tty49
cpu_dma_latency     ram11               tty17               tty5
cuse                ram12               tty18               tty50
fd                  ram13               tty19               tty51
full                ram14               tty2                tty52
fuse                ram15               tty20               tty53
gmac                ram2                tty21               tty54
i2c-0               ram3                tty22               tty55
i2c-1               ram4                tty23               tty56
i2c-2               ram5                tty24               tty57
input               ram6                tty25               tty58
kmsg                ram7                tty26               tty59
mem                 ram8                tty27               tty6
mmcblk0             ram9                tty28               tty60
mmcblk0p1           random              tty29               tty61
mtd0                romblock0           tty3                tty62
mtd0ro              romblock1           tty30               tty63

出现了mmcblk了,所以后面挂载才成功了。

然后我有对照了sys/block目录下的文件,发现这个和udev没有关系

mmcblk0    mtdblock3  ram11      ram15      ram5       ram9       romblock3
mtdblock0  ram0       ram12      ram2       ram6       romblock0
mtdblock1  ram1       ram13      ram3       ram7       romblock1
mtdblock2  ram10      ram14      ram4       ram8       romblock2

但是这个只有设备,没有分区,所以不能以此挂载。驱动里生成的是sys下面的节点,看起来dev目录下的节点需要udev来生成,但是需要证据。


原创粉丝点击