本文共 1505 字,大约阅读时间需要 5 分钟。
使用udev自动挂载SD卡和U盘的方法
作为技术量的应用,那么是否有方法可以让SD卡和U盘在插入时自动挂载呢?当然是有的!接下来我将详细介绍一下udev rules的配置方法以及相关脚本的编写步骤。
首先,我们需要创建udev规则文件。 ubicación: /etc/udev/rules.d/11-add-usb.rules
以下是两条udev规则:一条用于SD卡,另一条用于U盘。
# SD卡自动挂载ACTION=="add", GOTO="farsight", KERNEL=="mmcblk[0-9]p[0-9]", RUN+="mount -t vfat /dev/$K %k", LABEL="farsight"# U盘自动挂载ACTION=="add", GOTO="farsight", KERNEL=="sd[a-z][0-9]", RUN+="mount -t vfat /dev/$K %k", LABEL="farsight"
同时,我们还需要创建一个卸载规则文件 ubicación: /etc/udev/rules.d/11-add-remove.rules
# 卸载SD卡ACTION=="remove", GOTO="farsight", SUBSYSTEM=="block", GOTO="farsight", KERNEL=="mmcblk[0-9]p[0-9]", RUN+="umount -t vfat /mnt/sdsync", LABEL="farsight"# 卸载U盘ACTION=="remove", GOTO="farsight", SUBSYSTEM=="block", GOTO="farsight", KERNEL=="sd[a-z][0-9]", RUN+="umount -t vfat /mnt/usb", LABEL="farsight"
在挂载之前,需要先创建挂载目录:
mkdir -p /mnt/sdmkdir -p /mnt/usb
接下来,我们需要编写相应的脚本来自动挂载和卸载设备。
首先是挂载SD卡的脚本: ubicación: /etc/mount-sd.sh
#!/bin/shmount -t vfat /dev/$1 /mnt/sdsync
接着,赋予脚本执行权限:
chmod +x /etc/mount-sd.sh
同理,编写卸载SD卡的脚本: ubicación: /etc/umount-sd.sh
#!/bin/shumount -t vfat /mnt/sdsync
赋予执行权限:
chmod +x /etc/umount-sd.sh
对于U盘,挂载脚本是: ubicación: /etc/mount-usb.sh
#!/bin/shmount -t vfat /dev/$1 /mnt/usbsync
赋予执行权限:
chmod +x /etc/mount-usb.sh
最后,写一个卸载U盘的脚本: ubicación: /etc/umount-usb.sh
#!/bin/shumount -t vfat /mnt/usb
同样赋予执行权限:
chmod +x /etc/umount-usb.sh
记住,所有脚本必须有执行权限。可以在shell中使用chmod命令赋予它们执行权限。
所以,整个过程基本完成啦。只要按照上面的步骤操作,系统就会自动根据udev规则挂载或卸载你插入的SD卡或U盘。现在就可以方便地在不同设备间切换了。
转载地址:http://uswfk.baihongyu.com/