USB Webカメラをいくつか持っていますが、残念ながらシリアル番号がありません。そのため、起動時にデバイスファイル名を切り替える傾向があります。
それらは常に同じUSBポートにあるので、それに基づいてルールを作成したいと思います。しかし、それは惨めに失敗しています。
これが私がこれまでに試したことです:
#/ sys/bus/usb/devices/2-5.1:1.1/uevent #SUBSYSTEM == "usb"、SYSFS {idVendor} == "05e1"、SYSFS {idProduct} = = "0408"、PLACE == "2-5.1"、NAME = "video98" #SUBSYSTEM == "usb"、PLACE == "2-5.1"、NAME = "video98" #SUBSYSTEM == "usb"、ATTR {busnum} = "002"、ATTR {devnum} = "009"、ATTR {idVendor} = "05e1"、NAME = "video98" SUBSYSTEM == " usb "、ATTR {busnum} =" 002 "、ATTR {devpath} ="/devices/pci0000:00/0000:00:1d.7/usb2/2-5/2-5.1 "、ATTR {idVendor} =" 05e1 "、NAME =" video98 " #/ sys/bus/usb/devices/2-5.3:1.1/uevent #SUBSYSTEM ==" usb "、ATTR { busnum} = "002"、ATTR {devnum} = "010"、ATTR {idVendor} = "05e1"、NAME = "video99" SUBSYSTEM == "usb"、ATTR {busnum} = "002" 、ATTR {devpath} = "/ devices/pci0000:00/0000:00:1d.7/usb2/2-5/2-5.3"、ATTR {idVendor} = "05e1"、NAME = "video99"
そうそう、私はいくつかの試みをしました。 devnumも起動時に変化するのを見たので、それを使いたくありません。
実は「2-5.3」と「2-5.1」のものを使いたいだけです。それはいつも同じです。しかし、どのように?
奇妙なことに、私はこれまでほぼ正確にこれを行ったことがあります。私のは外付けハードドライブでしたが、USBカメラでも違いはありません。ポートにはSCSIバスアドレスを使用しましたが、これはうまく機能しました。
lsscsi
を使用して情報を取得しました。これにより、USBデバイスの場合は次のように出力されます。
[2:0:0:0] disk <descriptor> <dev name>
次に、次のルールに似た何かがあなたが望むことをするはずです:
SUBSYSTEM=="usb", KERNEL=="sd*1", KERNELS=="2:0:0:0", SYMLINK+="<label_1>"