udev 实现 USB 设备自动挂载

代码如下:

KERNEL!="sd[b-z]?", GOTO="automount_exit"  
ACTION=="add", SUBSYSTEM=="block", RUN+="/bin/mkdir /mnt/%E{ID_FS_LABEL}-%E{ID_FS_UUID}", RUN+="/bin/mount -o uid=1000,user,codepage=936,utf8 $root/%k /mnt/%E{ID_FS_LABEL}-%E{ID_FS_UUID}"  
ACTION=="remove", SUBSYSTEM=="block", RUN+="/bin/umount /mnt/%E{ID_FS_LABEL}-%E{ID_FS_UUID}", RUN+="/bin/rmdir /mnt/%E{ID_FS_LABEL}-%E{ID_FS_UUID}"  
LABEL="automount_exit" 
  • 保存为 /etc/udev/rules.d/ 下的某個文件。
  • 第一行用 glob 跳过名称不是 sd[b-z]? 的设备。
  • %E{ID_FS_LABEL} 是卷标, %E{ID_FS_UUID} 是 UUID。
  • 第二行就是检测 add 事件,先根据卷标和 UUID 在 /mnt/ 下创建一个目录并挂载。
  • 第三行是相应的卸载命令。

你可能感兴趣的:(udev 实现 USB 设备自动挂载)