udev は、カスタムルールを使用するときにデバイスへのシンボリックリンクを生成しません。

udev は、カスタムルールを使用するときにデバイスへのシンボリックリンクを生成しません。

私は以下を作成しましたfoo.rule

KERNEL=="sd*", ATTRS{serial}=="D93E7DF61B000174", ATTRS{idVendor}=="0x04e8", ATTRS{idProduct}=="0x61b6", SYMLINK+="foo"

対応するserial、およびはidVendor(修飾子を含む)によって提供される対応するidProduct値です。lsusbその後udevadm trigger。そのデバイスファイルが必要ですが/dev/foo、そのファイルは存在しません。

答え1

次のことができます。

udevadm info -a -n /dev/sdf

このようなプロパティを確認すると、udevこの問題を解決するのに非常に役立ちます。特に、任意のUSBドライブにidVendorとidProductが必要であることがわかりました。いいえ0x接頭辞があります。したがって、次のことを試してください。

… ATTRS{idVendor}=="04e8", ATTRS{idProduct}=="61b6", …

答え2

助ける最も簡単な方法reboot- このようなプログラム

udevadm control --reload
udevadm trigger

正しい結果が出ません。以下は.ruleうまくいきます4.7.0-1-ARCH

KERNEL=="sd*", ATTRS{serial}=="D93E7DF61B000174", ATTRS{idVendor}=="04e8", ATTRS{idProduct}=="61b6", SYMLINK+="foo"

答え3

私にとっての答えは、ルールACTION="add"をからに変更することですACTION="add|change"

関連情報