Linux下监控USB硬盘的插拔事件并自动挂载和卸载

定义udev规则来监控USB插拔事件。

一、在/etc/udev/rules.d目录下随意创建一个规则文件,例:99-usb-mount.rules

KERNEL=="sd[b-z]?",SUBSYSTEM=="block",RUN+="/usr/local/src/mountusb.sh %k $env{ACTION}"

KERNEL=="sd[b-z]",SUBSYSTEM=="block",RUN+="/usr/local/src/mountusb.sh %k $env{ACTION}"

二、创建 /usr/local/src/mountusb.sh 脚本文件

#!/bin/sh

DEV_NODE="/dev/"$1

MOUNT_NODE="/data/linkdood/im/vrv/nginx/html/owncloud/local-data"

echo -e "$(date) \n $2 " >> /tmp/mount.txt

if [ $2 == "add" ]; then

  mount -o sync -o  $DEV_NODE $MOUNT_NODE

#fi

  elif [ $2 == "remove" ]; then

  umount -l $MOUNT_NODE

fi

保存,然后确保mountusb.sh脚本有执行权限。重启下服务器。

可以在/tmp/mount.txt下看到插拔的日志。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 转自,格式做了调整。 如果你使用Linux比较长时间了,那你就知道,在对待设备文件这块,Linux改变了几次策略。...
    mikeliuy阅读 7,853评论 0 1
  • ping 出现 dup! 解决方案: udev 详解 如果你使用Linux比较长时间了,那你就知道,在对待设备文件...
    小灰灰1999阅读 288评论 0 0
  • feisky云计算、虚拟化与Linux技术笔记posts - 1014, comments - 298, trac...
    不排版阅读 3,893评论 0 5
  • 2019-06-10 遇到的一点小问题新需求是在U盘插入设备时实现自动挂载功能,一般都是推荐使用udev。记录...
    苍蝇的梦阅读 6,846评论 1 0
  • 第一章 1.Linux是一套免费使用和自由传播的类UNIX操作系统,它可以基于Intel x86系列处理器以及Cy...
    yansicing阅读 5,483评论 0 9