基于对hotplug机制和udev机制的理解,实现外设存储设备的自动挂载有以下方法:

mdev仅仅是作为引导,真正起作用的是hotplug。
下面是利用hotplug实现自动加载的方法:

1.在busybox当中添加对mdev的支持

mdev是busybox中udev设备文件系统的精简版

make menuconfig

确保以下几项被选中:

Linux System Utilities  --->
mdev  
   Support /etc/mdev.conf
     Support subdirs/symlinks
       Support regular expressions substitutions when renaming dev
     Support command execution at device addition/removal
   Support loading of firmwares

2.在rcS脚本当中加入以下内容:

#mount -a
#mount -t devpts devpts /dev/pts
#echo /sbin/mdev    > /proc/sys/kernel/hotplug

3.在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

4.创建/etc/hotplug/usb/udisk_insert和/etc/hotplug/usb/udisk_remove可执行脚本,在脚本当中完成mount动作。
5.udisk_insert脚本实现:

#!/bin/sh

if[-d /sys/block/*/$MDEV];then
        mkdir -p /media/udisk-$MDEV
    if[.....];then
            ntfs-3g /dev/$MDEV /media/udisk-$MDEV
    else
        mount /dev/$MDEV /media/udisk-$MDEV
    fi
fi

6.udisk_remove脚本实现:

#!/bin/sh
umount -l /media/udisk*
rm /media/udisk* -rf