Linux で USB シリアル ハブの特定のシリアル ポートを取得する方法

Linux で USB シリアル ハブの特定のシリアル ポートを取得する方法

USB ハブ (5 ポート) が接続された Linux マシンがあり、この USB ハブにシリアル ハブ (8 シリアル ポート) も接続されています。次のようになります。

Linux -> USB ハブ -> USB シリアル ハブ -> シリアル デバイス

今実行するとls -la /sys/bus/usb-serial/devices、次の出力が表示されます。

ttyUSB0 -> ../../../devices/pci0000:00/0000:00:1d.0/usb8/8-3/8-3.1/8-3.1.1/8-3.1.1:1.0/ttyUSB0
ttyUSB1 -> ../../../devices/pci0000:00/0000:00:1d.0/usb8/8-3/8-3.1/8-3.1.1/8-3.1.1:1.0/ttyUSB1
ttyUSB2 -> ../../../devices/pci0000:00/0000:00:1d.0/usb8/8-3/8-3.1/8-3.1.1/8-3.1.1:1.0/ttyUSB2
ttyUSB3 -> ../../../devices/pci0000:00/0000:00:1d.0/usb8/8-3/8-3.1/8-3.1.1/8-3.1.1:1.0/ttyUSB3
ttyUSB4 -> ../../../devices/pci0000:00/0000:00:1d.0/usb8/8-3/8-3.1/8-3.1.2/8-3.1.2:1.0/ttyUSB4
ttyUSB5 -> ../../../devices/pci0000:00/0000:00:1d.0/usb8/8-3/8-3.1/8-3.1.2/8-3.1.2:1.0/ttyUSB5
ttyUSB6 -> ../../../devices/pci0000:00/0000:00:1d.0/usb8/8-3/8-3.1/8-3.1.2/8-3.1.2:1.0/ttyUSB6
ttyUSB7 -> ../../../devices/pci0000:00/0000:00:1d.0/usb8/8-3/8-3.1/8-3.1.2/8-3.1.2:1.0/ttyUSB7

このパスは次のように「復号化」できます。バス番号 8、3 番目の USB ポートに USB ハブを接続し、このハブの最初の USB ポートにシリアル ハブを接続します。これで問題ありません。

しかし、この USB シリアル ハブの特定のシリアル ポートを識別するにはどうすればよいでしょうか。たとえば、シリアル ポート 1 (ttyUSB0) からデバイスを取り外して再度差し込むと、ttyUSB8、つまり次の空き番号である 9、10、11 が設定されます。しかし、新しい ttyUSB デバイスが差し込まれている特定のシリアル ポート番号を取得するにはどうすればよいでしょうか。

関連情報