嵌入式linux 实现mdev SD卡和U盘自动挂载和卸载的方法 mdev.conf

首先先参考这些博客做一些了解:http://linux.chinaunix.net/techdoc/install/2009/11/18/1144936.shtml

http://www.cnblogs.com/leaven/archive/2010/09/17/1828896.html,也可百度mdev.conf查看其他文章。


内核务必要支持mdev和hotplug功能。

etc目录下要有这个文件mdev.conf,内容如下(其他的类似):

sd[a-z][0-9]      0:0 666        @/etc/hotplug/usb/udisk_insert
sd[a-z]           0:0 666        $/etc/hotplug/usb/udisk_remove
mmcblk1p[0-9] 	  0:0 666        @/etc/hotplug/sd/sd_insert
mmcblk1       	  0:0 666        $/etc/hotplug/sd/sd_remove
从上面可以看到依赖四个脚本,对应的是U盘和SD卡的挂载和卸载。

在/etc/hotplug/usb目录下建立udisk_insert和udisk_remove两个脚本,内容分别如下:

udisk_insert:

#!/bin/sh
echo "usbdisk insert!" > /dev/console

if [ -e "/dev/$MDEV" ]  ; then

  mkdir -p /mnt/usbdisk/$MDEV

  mount /dev/$MDEV /mnt/usbdisk/$MDEV 
fi

udisk_remove:

#!/bin/sh
echo "usbdisk remove!" > /dev/console

umount -l /mnt/usbdisk/sd*
rm -rf /mnt/usbdisk/sd*

在/etc/hotplug/sd目录下建立sd_insert和sd_remove两个脚本,内容分别如下:

sd_insert:

#!/bin/sh
echo "sd card insert!" > /dev/console
 
if [ -e "/dev/$MDEV" ]; then

  mkdir -p /mnt/sdcard/sd

  mount -rw /dev/$MDEV /mnt/sdcard/sd 
fi

sd_remove:

#!/bin/sh
echo "sd card remove!" > /dev/console

umount -l /mnt/sdcard/sd*
rm -rf /mnt/sdcard/sd*

这样即可实现自动识别挂载和卸载了。


你可能感兴趣的:(嵌入式,usb,mdev,mdev.conf)