为了账号安全,请及时绑定邮箱和手机立即绑定

Linux3.9的内核,如何使用脚本自动检测U盘的插入,实现U盘的自动挂载?

/ 猿问

Linux3.9的内核,如何使用脚本自动检测U盘的插入,实现U盘的自动挂载?

缥缈止盈 2018-07-15 07:14:04

现已知2.6版本的内核使用的是udev的方式,检测U盘等设备。3.9的内核是否还支持udev的方式,需要什么版本的udev?


查看完整描述

1 回答

?
qq_笑_17

第一次搞shell,好难过………………

 

平台:Linux 3.9.0

一、

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

二、修改、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)

三、在/etc路径下创建目录 hotplug,/etc/hotplug路径下,存放两个脚本insert.sh,remove.sh

四、insert.sh内容

#!/bin/bash
echo "Insert*****************" > /dev/console
if [ -n "$1" ] ; then 
if [ -b /dev/$1 ]; then
mkdir -p /media/$1
mount /dev/$1 /media/$1
chmod -R 777 /media/$1
/media/$1/hello > /dev/console #helloworld
if [ $? -ne 0 ]; then
echo "err" > /home/err
umount -l /media/$1
fi
fi
fi

五、remove.sh内容

echo "Remove" > /dev/console

MOUNTS=$(mount | grep $1 | cut -d' ' -f3)
umount $MOUNTS
rm -rf $MOUNTS

 

总结:

1、脚本中想向控制台输出信息 > /dev/console。前期可能已经得到想要的结果了,但没有在控制台上看到输出结果,所以以为没有成功,很纠结

2、在脚本中 cd改变路径,并不会影响当前控制台的路径,脚本执行是单开一个控制台来执行脚本的

 

用途:ARM中写好脚本,可以执行U盘中的程序,获取ARM信息、升级程序、应急恢复产品等

结贴了,有其他想法的朋友,请留言。

感谢原作者:http://blog.csdn.net/hktkfly6/article/details/23390987


查看完整回答
反对 回复 2018-08-14

添加回答

回复

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信