Linux--实现U盘,SD卡的自动挂载

1. 编辑/etc/init.d/rsC或S10mdev文件

在/etc/init.d/rsC或S10mdev中加入以下语句:

echo /sbin/mdev > /proc/sys/kernel/hotplug

当有热插拔事件产生时,内核会调用/proc/sys/kernel/hotplug文件里指定的应用程序来处理热插拔事件。把/sbin/mdev写到/proc/sys/kernel/hotplug文件里。当有热拔插事件时,内核调用/sbin/mdev来处理

2、在/etc/下修改mdev.conf的文件

sd[a-z][0-9] 0:0 666 @(/etc/hotplug/insert.sh $MDEV $SUBSYSTEM)

sd[a-z] 0:0 666 $(/etc/hotplug/remove.sh $MDEV $SUBSYSTEM)

ub[a-z][0-9] 0:0 666 @(/etc/hotplug/insert.sh $MDEV $SUBSYSTEM)

ub[a-z] 0:0 666 $(/etc/hotplug/remove.sh $MDEV $SUBSYSTEM)

mmcblk[0-9]p[0-9] 0:0 666 @(/etc/hotplug/insert.sh $MDEV $SUBSYSTEM)

mmcblk[0-9] 0:0 666 $(/etc/hotplug/remove.sh $MDEV $SUBSYSTEM)

3、创建设备节点创建、删除所执行的shell文件

在/etc/下建立以下文件夹hotplug,并在hotplug目录下建立以下文件,包含以下内容:

insert.sh:

if [ -n "$1" ] ; then   #判断参数1是否为空
     if [ -b /dev/$1 ]; then #判断文件夹 /dev/mmcblkp0b3是否存在
         if [ ! -d /run/media ]; then #如果/run/media文件夹不存在,创建
             mkdir -p /media
         fi
         if [ ! -d /run/media/$1 ]; then #如果/run/media/mmcblk0p3不存在,
             mkdir -p /media/$1
         fi
         mount /dev/$1 /media/$1  
         if [ $? != 0 ]; then #$?表示上一个程序是否成功,成功为0
             rm -rf /run/media/$1 #上一步执行不成功,删除文件夹
         fi
    fi
fi
MOUNTS=$(mount | grep $1 | cut -d' ' -f3) 
umount $MOUNTS
rm -rf $MOUNTS
MOUNTS=$(mount | grep $1 | cut -d' ' -f3)

umount $MOUNTS

rm -rf $MOUNTS

mount 查看挂载的文件

mount | grep mmcblk0p3 查找mount文件中的mmcblk0p3

插入U盘、SD等设备,即可在根目录的/run/media目录下建立相应的文件夹,挂载对用的磁盘文件

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值