![単純なudevルールが機能しない](https://rvso.com/image/1127633/%E5%8D%98%E7%B4%94%E3%81%AAudev%E3%83%AB%E3%83%BC%E3%83%AB%E3%81%8C%E6%A9%9F%E8%83%BD%E3%81%97%E3%81%AA%E3%81%84.png)
この単純な udev ルールの何が問題なのでしょうか?
KERNEL=="sdc1", ACTION=="add", RUN+="/bin/mkdir /tmp/folder1"
USB スティックを接続しても、ルールは何も実行されません。
答え1
いいえ、フォルダを作成できない可能性があります。
sd??
パーティションがマウントされる前にカーネルによってノードが作成されるためです。
スクリプトを使用するなど、別のアプローチを探す方がよいでしょうudisks
。
答え2
UUID マッチングのルールを使用します。
KERNEL=="sd??", ENV{ID_FS_UUID}=="<the_uuid>", RUN+="/bin/mkdir /tmp/folder1"
以下のコマンドでUUIDを取得します
udevadm info /dev/<usb_stick_partition> | grep ID_FS_UUID=
例
$ udevadm info /dev/sda1 | grep ID_FS_UUID=
E: ID_FS_UUID=c44a008d-58b2-467d-8814-f06973e49dcb
したがって
KERNEL=="sd??", ENV{ID_FS_UUID}=="c44a008d-58b2-467d-8814-f06973e49dcb", RUN+="/bin/mkdir /tmp/folder1"