udevadm ルールは「udevadm テスト」には適用されますが、「udevadm トリガー」には適用されません。

udevadm ルールは「udevadm テスト」には適用されますが、「udevadm トリガー」には適用されません。

特定のデバイスのttyポート名を指定する「99-usb.rules」という単純なルールを作成しました。

KERNEL=="ttyACM*", ATTRS{idVendor}=="2341", NAME="mydevice"

このルールは、次のようにudevadmテストを実行すると正しく機能します。

udevadm test $(udevadm info -q path -n /dev/ttyACM0)

このコマンドを実行すると、「/dev/mydevice」と表示され、「mydevice」を介してUSBデバイスと通信できます。問題は、テスト環境の外部でこのルールを実行できないことです。 「udevadm control -R」と「udevadm Trigger」を試しただけでなく、デバイスを切断して再接続してシステムを再起動しました。 「udevadmトリガー」が失敗する理由のアイデアはありますか?私はOpenWrt Barrier Breaker 14.07オペレーティングシステムでudevバージョン173を使用しています。

ベストアンサー1

私のLinuxシステムにも同様の問題があります。私は最終的にこのNAMEオプションはネットワークインターフェイスでのみ機能するため、パフォーマンスが悲惨なほど不足していることがわかりました。ディスクドライブ、TTY、カーネルが管理するその他の項目には影響しません。代わりに、SYMLINK+=...デバイスへのシンボリックリンクを作成する必要があります。私の考えでは、それはあなたの目的にもっと合うと思います。

おすすめ記事