我想在安装或卸载任何网络驱动器时设置通知。 (基本上我想在安装或卸载任何网络存储时运行自定义脚本)。我认为 udev 可以做到这一点,但我不知道如何为这样的任务编写 udev 规则。
当我使用以下命令安装网络共享时:
sudo mount -t cifs -o username=user,password=pwd //ipaddr/sharename mountpoint
sysfs
文件系统已成功安装,我可以看到创建了以下条目:
/sys/class/bdi/cifs-<num>/ & /sys/devices/virtual/bdi/cifs-<num>
可以udev
监控这样的变化吗?如果是,规则是什么样的?或者还有其他方法可以做到这一点吗?
任何帮助表示赞赏。
答案1
好的,我已经成功了,但是有一个问题:
规则文件 ( /etc/udev/rules/99-nas.rule
) 如下所示:
SUBSYSTEM=="bdi", ACTION=="add" RUN+="/home/user/myscript.sh"
SUBSYSTEM=="bdi", ACTION=="remove" RUN+="/home/user/myscript.sh"
(myscript.sh
用途:mount -t cifs
列出所有已安装的 CIFS 设备)
问题是:当安装第一个远程存储时,输出mount -t cifs
为空。从第二次安装或卸载一切正常。我不知道如何解决这个问题。