udevを使用して外部HDDプラグでバックアップスクリプトを実行する

udevを使用して外部HDDプラグでバックアップスクリプトを実行する

USB 3.0外付けハードドライブをホームサーバーに接続するときにbackup.shスクリプトを実行するためのカスタムudevルールを作成しようとしています。

/etc/udev/rules.d.という新しいファイルに新しいファイルを作成しました10-custom.rules。このフォルダには70-persistent-cd.rules60-vboxdrv.rules70-persistent-net.rules

これは私がファイルに書いたものです(すべて1行で)。

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 Wheezeを実行しています。

ベストアンサー1

問題が解決しました。udevsyslogにログインするには、次のコマンドを実行します。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

おすすめ記事