Linux下TF卡和U盘的自动挂载卸载

前言:

    mdev是busybox自带的一个简化版的udev。作用是在系统启动和热插拔或动态加载驱动程序时,自动产生所需的节点文件,在文件系统中的/dev目录下的设备节点都是由mdev创建的。而本文所使用的hotplug正是由mdev实现的。

一、U盘的自动挂载和卸载

1.修改mdev.conf文件

    在mdev.conf文件最后添加如下内容:

# udisk auto mount and auto remove
sd[a-z][0-9]    0:0 666   @/etc/hotplug/usb/udisk_insert
sd[a-z]         0:0 666   $/etc/hotplug/usb/udisk_remove
2.创建udisk_insert文件

    使用如下命令来创建并修改udisk_insert文件:

mkdir -p /etc/hotplug/usb
vi /etc/hotplug/usb/udisk_insert

    在udisk_insert中写入如下内容:

#!/bin/sh
echo "udisk insert!" > /dev/console
if [ -e "/dev/$MDEV" ]; then
        mkdir -p /mnt/udisk/$MDEV
        mount /dev/$MDEV /mnt/udisk/$MDEV
fi

    最后使用命令chmod 755 /etc/hotplug/usb/udisk_insert给此文件加权限。

3.创建udisk_remove文件

    使用如下命令来创建并修改udisk_remove文件:

vi /etc/hotplug/usb/udisk_remove

    在udisk_remove中写入如下内容:

#!/bin/sh
echo "udisk remove!" > /dev/console
umount -l /mnt/udisk/sd*
rm -rf /mnt/udisk/sd*

    最后使用命令chmod 755 /etc/hotplug/usb/udisk_remove给此文件加权限。

二、TF卡的自动挂载和卸载

1.修改mdev.conf文件

    在mdev.conf文件最后添加如下内容:

# sdcard auto mount and auto remove
mmcblk0         0:0 666 @/etc/hotplug/sd/sd_insert
mmcblk0         0:0 666 $/etc/hotplug/sd/sd_remove
2.创建sd_insert文件

    使用如下命令来创建并修改sd_insert文件:

mkdir -p /etc/hotplug/sd
vi /etc/hotplug/usb/sd_insert

    在sd_insert中写入如下内容:

#!/bin/sh
echo "sd card insert!" > /dev/console
if [ -e "/dev/$MDEV" ]; then
        mkdir -p /mnt/sdcard
        mount -rw /dev/$MDEV /mnt/sdcard
fi

    最后使用命令chmod 755 /etc/hotplug/sd/sd_insert给此文件加权限。

3.创建sd_remove文件

    使用如下命令来创建并修改sd_remove文件:

vi /etc/hotplug/sd/sd_remove

    在sd_remove中写入如下内容:

#!/bin/sh
echo "sd card remove!" > /dev/console
umount -l /mnt/sdcard
rm -rf /mnt/sdcard

    最后使用命令chmod 755 /etc/hotplug/sd/sd_remove给此文件加权限。

注意:

    修改完后,需要重启机器,修改才能生效。重启完后,插入U盘和TF卡,可以看到,自动挂载成功,拔出也会自动卸载。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章