根据网上了解,可以通过udev来实现U盘的自动识别和挂载,操作方法如下:
1. 在/etc/udev/rules目录下新建11-add-usb.rules和11-add-remove.rules,负责设备监测。
root@am335x-evm:/etc/udev/rules.d# vi 11-add-usb.rules
ACTION!="add",GOTO="farsight"
KERNEL=="sd[a-z][0-9]",RUN+="/opt/usb/mountusb.sh %k"
KERNEL=="sd[a-z]",RUN+="/opt/usb/mountusb.sh %k"
LABEL="farsight"
root@am335x-evm:/etc/udev/rules.d# vi 11- remove -usb.rules
ACTION !="remove",GOTO="farsight"
SUBSYSTEM!="block",GOTO="farsight"
KERNEL=="sd[a-z][0-9]",RUN+="/opt/usb/umountusb.sh"
LABEL="farsight"
2. 在/opt/usb下建立执行脚本,负责挂载和卸载。
root@am335x-evm:/opt/usb# vi mountusb.sh
#!/bin/sh
mount -t vfat /dev/$1 /mnt/usb
sync
root@am335x-evm:/opt/usb# vi umountusb.sh
#!/bin/sh
sync
umount /mnt/usb
3. 完成操作,可实现自动挂载。如要读写U盘文件,则可以在执行脚本中添加其他操作即可。
注意: 经实际测试,以上方法需要U盘是FAT32格式的,若是NTFS则无效!!!
参考文章:
http://blog.chinaunix.net/uid-26119896-id-5211736.html (u盘挂载)
http://www.cnblogs.com/sopost/archive/2013/01/09/2853200.html (udev简介)
2022-06-01 17:40:31
407B
udev
1