Udevadmは一時停止しても自動的には実行されません。

Udevadmは一時停止しても自動的には実行されません。

Ubuntuを使用してUSBモデムを設定して一時停止し、スリープモードから再起動するたびにモデムモードに自動的に切り替えるようにしました。

ここの指示に従って[1]これを行うことができましたが、奇妙なことに、sudo udevadm trigger --verbose私が書いたudevルールは、コマンドを手動で実行したときにのみ機能します。

たぶんこれはudevのバグであるか、まだ知らないいくつかの構成のためですか?助けて欲しい!

[1]ZTE MF110/MF190 - ArchWiki

答え1

さて、モデムは通常起動に時間がかかります(赤いインジケータから緑色のインジケータまで)、長期実行ジョブとしてコマンド/スクリプトを添付する必要があります。

スクリプトにコマンドを入れ、atコマンドを使用してudevルールのRUNキーに挿入しました。

ACTION=="add|change|bind", KERNEL=="*", SUBSYSTEM=="usb", ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="2000", RUN+="/usr/bin/at -M -f /modem_switch.sh now + 1 minutes"

これで期待どおりに動作します。引用:https://askubuntu.com/a/1017407

関連情報