使用 udev 在外部 HDD 插头上执行备份脚本

使用 udev 在外部 HDD 插头上执行备份脚本

当我将 USB 3.0 外部硬盘插入家庭服务器时,我尝试编写自定义 udev 规则来运行 backup.sh 脚本。

我在/etc/udev/rules.d名为 的新文件中创建了一个新文件10-custom.rules。在此文件夹中,我还有其他文件:70-persistent-cd.rules60-vboxdrv.rules70-persistent-net.rules.

这是我在文件中写的内容(全部写在一行中):

BUS="usb", SYSFS{idVendor}="1058", SYSFS{product}="Western Digital Technologies, Inc.", NAME="gioviusb", RUN+="/home/scripts/usbplug.sh"

这是以下的输出lsusb

Bus 006 Device 011: ID 1058:0748 Western Digital Technologies, Inc.

我发现的所有其他解决方案似乎都已经过时了。我正在运行 Debian 7 喘息。

答案1

问题解决了。我发出此命令将udev日志记录到 syslog:udevadm control --log-priority=info 在深入研究 syslog 后,我注意到此错误:

Jun 10 10:33:16 GC01SRVR udevd[4707]: failed to execute '/home/scripts/usbplug.sh' '/home/scripts/usbplug.sh': Exec format error

我通过在脚本的第一行添加/home/scripts/usbplug.sh以下文本来解决这个问题:

#!/bin/sh

相关内容