GNU/Linux >> Linux の 問題 >  >> Linux

USBデバイスが削除されたときにシェルスクリプトでイベントをトリガーする方法は?

特定のUSBデバイスが削除/追加されたときにいくつかのアクションを実行する必要があります。ミリ秒のオーダーの高速応答が必要です。

シェルスクリプトでこれを行うにはどうすればよいですか?

承認された回答:

udevをサポートするLinuxディストリビューションを使用していて、ルート/管理者がアクセスできる場合は、udevルールを使用して特定の操作をトリガーできます。

次の例が/etc/udev/rules.d/example.rulesに追加された場合 次に、指定されたパラメータでブロックデバイスが追加されると、指定されたスクリプトが実行されます。

ACTION=="add", SUBSYSTEM=="block", ATTRS{manufacturer}=="HitachiGST", ATTRS{serial}=="31001206110000000000", RUN+="/a/script/to/run.sh"

その特定のルールは、USBハードドライブが挿入されてブロックシステムに接続されたときに実行されます。特定の低レベルUSBイベントに一致するようにルールを微調整するのは非常に簡単です。

DebianUDEVwikiページとWritingUdevRulesサイトは、自分の状況に適したルールを取得するのに非常に役立つことがわかりました。


Linux
  1. シェルスクリプトで一時ファイルを作成するにはどうすればよいですか?

  2. ショートカットキーが押されたときにシェルでスクリプトを実行するにはどうすればよいですか?

  3. Udev :ネットワーク インターフェイスの名前を変更する

  1. シェルスクリプトでスイッチを処理する方法は?

  2. udev ルールを使用してデバイス ファイルの所有者/グループを構成する方法

  3. USB バージョン 1.1 または 2.0 を確認する方法

  1. UDEV を使用して USB デバイスが接続または削除されたときにスクリプトを実行する方法

  2. ファイルまたはディレクトリが変更されたときにシェルスクリプトを実行する方法は?

  3. 起動時にシェルスクリプトを実行する方法