Linuxシステムで2つの同一のUSB-シリアルアダプタを使用しています。したがって、誰が最初に挿入されたかによって異なりますが、一方は/ dev/ttyUSB0という名前で表され、もう一方は/ dev/ttyUSB1で表されます。名前を永続化できるトリックはありますか? USBポートが3つあります。名前を物理ポートにリンクすることは可能ですか?
ありがとう、
udevadm monitor --properties
を実行すると、ルールの作成に使用できるさまざまなプロパティが表示されます。 ID_PATH
プロパティは、デバイスが接続されたポートを示します。シリアルをusbデバイスに挿入して、udevが何を認識しているかを確認します。
したがって、デバイスが接続されたときにシンボリックリンクを作成するudevルールを作成するのは簡単です。
SUBSYSTEM=="usb_device", SYSFS{idVendor}=="xxxx", SYSFS{idProduct}=="xxxx", ENV{ID_PATH}=="pci....usb-0:1:0",SYMLINK+="ttyUSBport0"
SUBSYSTEM=="usb_device", SYSFS{idVendor}=="xxxx", SYSFS{idProduct}=="xxxx", ENV{ID_PATH}=="pci....usb-0:1:1",SYMLINK+="ttyUSBport1"
これはメモリから実行されるため、構文を確認する必要があります。 idvendorとidproductをUSBVIDとPIDに変更し、ID_PATHをudevadm monitor
で見つけたものに変更します。
これにより、通常の/ dev/ttyUSB0デバイスがそのまま残りますが、接続されているポートに応じて、デバイスへのシンボリックリンクも作成されます。 minicomまたは使用しているものでシンボリックリンクを使用する場合は、接続するポートに基づいて常に適切なアダプターを入手できます。