linux udev 禁用u盘,udev自动挂载U盘
Linux可以通过udev自动挂载U盘,不过需要注意的是在udev中调用mount指令时会工作不正常,可以使用systemd-mount代替。
参考文档:udev、systemd-mount。
具体步骤:
在/etc/udev/rules.d/目录下新建规则文件
nano /etc/udev/rules.d/50-txfly.rules
输入以下内容,并在/media目录下挂载U盘
KERNEL!="sd*", 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_TYPE}=="", GOTO="media_by_label_auto_mount_end"
ENV{ID_FS_LABEL}!="", ENV{dir_name}="%E{ID_FS_LABEL}"
ENV{ID_FS_LABEL}=="", ENV{dir_name}="%E{ID_FS_UUID}"
ACTION=="add", ENV{mount_options}="relatime,sync"
ACTION=="add", RUN+="/bin/mkdir -p /media/%E{dir_name}", RUN+="/usr/bin/systemd-mount -o %E{mount_options} --no-block --automount=yes --collect /dev/%k /media/%E{dir_name}"
ACTION=="remove", ENV{dir_name}!="", RUN+="/usr/bin/systemd-mount --umount /media/%E{dir_name}", RUN+="/bin/rmdir /media/%E{dir_name}"
LABEL="media_by_label_auto_mount_end"
加载新规则
sudo udevadm control --reload
测试规则:
# lskbl
sda 8:0 1 14.3G 0 disk
mtdblock0 31:0 0 16M 0 disk
mmcblk2 179:0 0 7.3G 0 disk
├─mmcblk2p1 179:1 0 64M 0 part
└─mmcblk2p2 179:2 0 3G 0 part /
mmcblk2boot0 179:32 0 4M 1 disk
mmcblk2boot1 179:64 0 4M 1 disk
mmcblk2rpmb 179:96 0 4M 0 disk
# udevadm test $(udevadm info -q path -n /dev/sda) 2>&1
This program is for debugging only, it does not run any program
specified by a RUN key. It may show incorrect results, because
some values may be different, or not available at a simulation run.
Load module index
Parsed configuration file /usr/lib/systemd/network/99-default.link
Parsed configuration file /usr/lib/systemd/network/73-usb-net-by-mac.link
Created link configuration context.
Reading rules file: /usr/lib/udev/rules.d/50-firmware.rules
Reading rules file: /etc/udev/rules.d/50-txfly.rules
Reading rules file: /usr/lib/udev/rules.d/50-udev-default.rules
Reading rules file: /usr/lib/udev/rules.d/55-dm.rules
Reading rules file: /usr/lib/udev/rules.d/60-autosuspend-chromiumos.rules
Reading rules file: /usr/lib/udev/rules.d/60-block.rules
Reading rules file: /usr/lib/udev/rules.d/60-cdrom_id.rules
Reading rules file: /usr/lib/udev/rules.d/60-drm.rules
Reading rules file: /usr/lib/udev/rules.d/60-evdev.rules
Reading rules file: /usr/lib/udev/rules.d/60-fido-id.rules
Reading rules file: /usr/lib/udev/rules.d/60-input-id.rules
Reading rules file: /usr/lib/udev/rules.d/60-persistent-alsa.rules
Reading rules file: /usr/lib/udev/rules.d/60-persistent-input.rules
Reading rules file: /usr/lib/udev/rules.d/60-persistent-storage-dm.rules
Reading rules file: /usr/lib/udev/rules.d/60-persistent-storage-tape.rules
Reading rules file: /usr/lib/udev/rules.d/60-persistent-storage.rules
Reading rules file: /usr/lib/udev/rules.d/60-persistent-v4l.rules
Reading rules file: /usr/lib/udev/rules.d/60-sensor.rules
Reading rules file: /usr/lib/udev/rules.d/60-serial.rules
Reading rules file: /usr/lib/udev/rules.d/61-autosuspend-manual.rules
Reading rules file: /usr/lib/udev/rules.d/64-btrfs.rules
Reading rules file: /usr/lib/udev/rules.d/64-xorg-xkb.rules
Reading rules file: /usr/lib/udev/rules.d/65-libwacom.rules
Reading rules file: /usr/lib/udev/rules.d/70-joystick.rules
Reading rules file: /usr/lib/udev/rules.d/70-mouse.rules
Reading rules file: /usr/lib/udev/rules.d/70-power-switch.rules
Reading rules file: /usr/lib/udev/rules.d/70-touchpad.rules
Reading rules file: /usr/lib/udev/rules.d/70-uaccess.rules
Reading rules file: /usr/lib/udev/rules.d/71-seat.rules
Reading rules file: /usr/lib/udev/rules.d/73-seat-late.rules
Reading rules file: /usr/lib/udev/rules.d/73-special-net-names.rules
Reading rules file: /usr/lib/udev/rules.d/75-net-description.rules
Reading rules file: /usr/lib/udev/rules.d/75-probe_mtd.rules
Reading rules file: /usr/lib/udev/rules.d/78-sound-card.rules
Reading rules file: /usr/lib/udev/rules.d/80-debian-compat.rules
Reading rules file: /usr/lib/udev/rules.d/80-drivers.rules
Reading rules file: /usr/lib/udev/rules.d/80-ifupdown.rules
Reading rules file: /usr/lib/udev/rules.d/80-libinput-device-groups.rules
Reading rules file: /usr/lib/udev/rules.d/80-net-setup-link.rules
Reading rules file: /usr/lib/udev/rules.d/85-hwclock.rules
Reading rules file: /usr/lib/udev/rules.d/90-libinput-fuzz-override.rules
Reading rules file: /usr/lib/udev/rules.d/95-dm-notify.rules
Reading rules file: /usr/lib/udev/rules.d/96-e2scrub.rules
Reading rules file: /usr/lib/udev/rules.d/99-systemd.rules
Invalid inotify descriptor.
DEVPATH=/devices/platform/32e50000.usb/ci_hdrc.1/usb1/1-1/1-1.2/1-1.2:1.0/host0/target0:0:0/0:0:0:0/block/sda
DEVNAME=/dev/sda
DEVTYPE=disk
MAJOR=8
MINOR=0
ACTION=add
SUBSYSTEM=block
ID_FS_UUID=C0F00719F0071576
ID_FS_UUID_ENC=C0F00719F0071576
ID_FS_TYPE=ntfs
ID_FS_USAGE=filesystem
dir_name=C0F00719F0071576
ID_VENDOR=General
ID_VENDOR_ENC=General\x20
ID_VENDOR_ID=8644
ID_MODEL=USB_Flash_Disk
ID_MODEL_ENC=USB\x20Flash\x20Disk\x20\x20
ID_MODEL_ID=8005
ID_REVISION=1.00
ID_SERIAL=General_USB_Flash_Disk_152200000000F9BA-0:0
ID_SERIAL_SHORT=152200000000F9BA
ID_TYPE=disk
ID_INSTANCE=0:0
ID_BUS=usb
ID_USB_INTERFACES=:080650:
ID_USB_INTERFACE_NUM=00
ID_USB_DRIVER=usb-storage
DEVLINKS=/dev/disk/by-path/platform-ci_hdrc.1-usb-0:1.2:1.0-scsi-0:0:0:0 /dev/disk/by-uuid/C0F00719F0071576 /dev/disk/by-id/usb-General_USB_Flash_Disk_152200000000F9BA-0:0
ID_PATH=platform-ci_hdrc.1-usb-0:1.2:1.0-scsi-0:0:0:0
ID_PATH_TAG=platform-ci_hdrc_1-usb-0_1_2_1_0-scsi-0_0_0_0
TAGS=:systemd:
USEC_INITIALIZED=6378678
run: '/bin/mkdir -p /media/C0F00719F0071576'
run: '/usr/bin/systemd-mount -o relatime,sync --no-block --automount=yes --collect /dev/sda /media/C0F00719F0071576'
Unload module index
Unloaded link configuration context.
重新插拔U盘后可以看到:
ls /media
C0F00719F0071576
linux udev 禁用u盘,udev自动挂载U盘相关推荐
- Linux下应用程序扫描并自动挂载u盘
说明: 调用此函数,自动扫描系统中已经插入的u盘,如果u盘没有被挂载,则自动挂载u盘.如果u盘已经被挂载,则不挂载u盘.这个函数只扫描和挂载vfat格式的u盘,对于NTFS格式的u盘不进行扫描和挂载. ...
- n1 openwrt 挂载u盘_openwrt 自动挂载U盘、移动硬盘
openwrt 自动挂载U盘.移动硬盘 opkg update opkg install kmod-usb-core opkg install kmod-usb-ohci #安装us ...
- linux下挂载优盘脚本,一种linux系统下自动挂载U盘的方法与流程
技术领域 本发明涉及服务器维护技术领域,尤其涉及一种linux系统下自动挂载U盘的方法. 背景技术: 不管是测试服务器的维护,还是用户使用的服务器,在维护.更新.使用过程中,需要使用U盘向服务器拷贝文 ...
- arm开发板采用ubuntu根文件系统自动挂载U盘解决方案升级版!
背景 之前有一篇文章:<ARM-Linux下实现U盘自动挂载>在嵌入式Linux开发板中实现自动挂载U盘的方法.该方法有效,但局限.本人自己测试是在buildroot构建的根文件系统下实现 ...
- 双系统下ubuntu自动挂载windows盘
前言: 今天给大家分享一篇ubuntu的系列文章之一,作为研发人员的我们,在有需要的时候我们会把电脑装成双系统.主要的工作在Ubuntu上面,window下面有时候会去用一些特定的软件.总之会产生 ...
- Linux学习笔记1--Linux文件系统之CentOS7挂载U盘
Linux学习笔记(一) CentOS7挂载U盘 插入U盘连接虚拟机 打开终端 创建U盘目录 挂载U盘 卸载U盘 可能出现的bug Linux文件系统与Windows文件系统之比 二者文件系统具体 二 ...
- html文件导入到u盘中,技术分享 - 编程实现U盘插入自动复制U盘内容到本地
背景 U盘插入计算机后,不用任何操作,程序自动将U盘里的文件都拷贝到本地计算机上.这个功能是我自己开发的"恶魔的结界"系列程序里的一个小功能,至于有什么用,那就看个人的爱好了.在此 ...
- linux6.6挂载u盘失败,mini2440 Linux系统自动挂载U盘与SD卡失败 解决方法
对于有些U盘和SD卡,mini2440开发板自带的Linux系统不能有效的自动挂载在文件系统里面,这是因为mini2440的/etc/mdev.conf 和 /bin/hotplug.sh这两个文件写 ...
- arm linux 自动挂载,ARM-Linux支持并自动挂载U盘
受不了xxxx恶心人的行为,遂搬迁至博客园. 始发:2015-04-07 19:10:42 其实,我是想在ARM开发板上实现我的FW150US-USB无线网卡功能,所以测试下USB接口. 1.配置内核 ...
- linux自动挂载方法,Linux操作系统下硬盘手工和自动挂载的方法
1. 手工挂载 在Linux中也可以读取Windows分区,包括fat32格式的和ntfs格式的.首先你得知道Linux下对硬盘分区的称呼.比如Windows下的C盘通常是hda1,D盘是hda5,E ...
最新文章
- C#用XmlDocument操作XML
- Loss Function view
- 从零开始入门 K8s | Kubernetes 网络模型进阶
- 笔记-信息系统安全管理-网络安全工具
- 直接用IP访问知乎,我发现了一个秘密···
- TODO:Laravel增加验证码
- Power Platform之Power Automate新增RPA功能
- 【题解】洛谷P4158 [SCOI2009] 粉刷匠(DP)
- 手机PDF文档如何解密去除不能编辑的限制?
- 安装Office2016卸载WPS后office图标异常解决办法
- cdr多页面排版_CDR排版须掌握三大功能 值得收藏
- Word插入脚注后分节符自动变成分页符解决办法
- 7-85 根据输入的空气污染指数,输出相应的信息。
- 投掷骰子的python代码_模拟骰子(Python),掷骰子
- android java加密_Android、iOS和Java通用的AES128加密解密示例代码
- 智能风控平台之决策引擎介绍
- 钉钉签到后可以删除吗?钉钉签到考勤破解
- C语言typedef的用法
- Mplus for Mac 8.3 下载 – 强大的统计建模工具
- latex中的公式(AxMath)
热门文章
- 利用 EFS 快速搭建 NFS 文件系统
- php cpu飙高,PHP-FPM进程CPU 飙高的原因及解决方案
- python中、常见的结构化数据不包括_数据分析的主要内容仍是结构化计算_数据分析师...
- 【内网安全】基础知识:工作组、域和权限分配
- “二十一天好习惯”第一期-20
- 秦九韶算法java程序_算法 秦九韶算法
- 今天不学习,明天变垃圾
- 好物推荐:眼科OCT影像自动分割工具推荐
- centos7下解压rar文件
- python画菱形的代码_python绘制菱形