无系统自动挂载U盘的方式

使用udev规则文件实现自动挂载,挂载方式来源站内“ARM-Linux下实现U盘自动挂载 作者ZML_1009”

在/etc/udev/rules.d下创建文件
输入如下命令:

vi /etc/udev/rules.d/13-usb-mount.rules

按i进入编辑模式,输入如下内容:

KERNEL!="sd[a-z][0-9]", GOTO="media_by_label_auto_mount_end"
SUBSYSTEM!="block", GOTO="media_by_label_auto_mount_end"
IMPORT{program}="/sbin/blkid -o udev -p %N"
ENV{ID_FS_LABEL}!="", ENV{dir_name}="%E{ID_FS_LABEL}"
ENV{ID_FS_LABEL}=="", ENV{dir_name}="Untitled-%k"
ACTION=="add", ENV{mount_option}="relattime,sync"
ACTION=="add", ENV{ID_FS_TYPE}=="vfat", ENV{mount_options}="iocharset=utf8,umask=000"
ACTION=="add", ENV{ID_FS_TYPE}=="ntfs", ENV{mount_options}="iocharset=utf8,umask=000"
#ACTION=="add", RUN+="/bin/mount -o $env{mount_options} /dev/%k /mnt/usb"
#ACTION=="remove", ENV{dir_name}!="", RUN+="/bin/umount -l /mnt/usb"
ACTION=="add", RUN+="/bin/mkdir -p /mnt/%E{dir_name}", RUN+="/bin/mount -o $env{mount_options} /dev/%k /mnt/%E{dir_name}"
ACTION=="remove", ENV{dir_name}!="", RUN+="/bin/umount -l /mnt/%E{dir_name}", RUN+="/bin/rmdir /mnt/%E{dir_name}"
LABEL="media_by_label_auto_mount_end"

解释一下,此方法可以插入多个U盘分别挂载在不同的目录
当只需要挂载一个u盘时,可将注释去掉并将后面两行注释掉。

编辑好这个文件后,输入如下命令使其生效:

udevadm control --reload-rules

此时插入U盘会自动加载,如图所示:
![在这里插入图片描述](https://img-blog.csdnimg.cn/7e1f04bfb62049db94d27f46aa3f4574.png

有些U盘可能会多生成一个文件,如下图所示,此时同时插入了两个U盘:
在这里插入图片描述
这种情况如何如何快速得知挂载的位置呢?
输入如下命令后lsblk 结果如下:

在这里插入图片描述
我们可以看到挂载的位置是/mnt/DEEPINOS 和 /mnt/VTOYEFI

结合上一篇QT的指令,对其稍作修改:

lsblk|grep mnt|grep part|grep -o -E '/.*'

结果如下:

在这里插入图片描述

大功告成!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值