udevルールがアクション "add"に対して機能しません


0

私は以下のudevルールを持っています( /etc/udev/rules.d/97-automounter.rules これは、アクション "remove"では機能しますが、アクション "add"では機能しません。手動で実行した場合、アクション "add"のスクリプトは機能します。

# rule: mount/umount /dev/vd* when EBS volume is attached.
ENV{DEVNAME}=="/dev/vd[b-z]", ACTION=="add", SUBSYSTEMS=="block", RUN+="/usr/local/sbin/udev-automounter.sh %k"
ENV{DEVNAME}=="/dev/vd[b-z]", ACTION=="remove", SUBSYSTEMS=="block", RUN+="/usr/local/sbin/udev-autounmounter.sh %k"

これを修正またはデバッグする方法がわからない。どんな助けでも素晴らしいでしょう。

回答:


0

追加されたか削除されたかにかかわらず、同じ呼び出しがあるように見えます。

"/usr/local/sbin/udev-autounmounter.sh %k"

%kが何を呼んでいるのかよくわかりませんが、それはおそらくdevの場所です。それでは、スクリプトで追加ブロックを実行する必要があるのか​​、コードブロックを削除する必要があるのか​​を知る必要があります。必要に応じて追加部分を分割してudev-add.shを作成し、削除部分をスクリプトudev-rem.shにコピーしてそこにあるコマンドを調整し、追加部分とudevに対してudev-add.shを呼び出します削除のための-rem.sh。

それはあなたが軌道に乗るべきです。それ以外の場合は、追加サブルーチンと追加削除サブルーチンを呼び出すようにスクリプトに指示する方法が必要です。同じスクリプトを使用しなければならない場合は変数を使用することができます。削除すると変数が何かに変更されるため、スクリプトの実行時に変数がチェックされます。変数セットORそれが何か他のものに設定されている場合は、追加部分だけを実行します。

このコマンドの外観は、デバイスの追加と削除の両方で呼び出されたときに、同じデバイス追加サブルーチンを実行している場合がほとんどです。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.