Я использую Linux (по аналогии с Ubuntu, 2.6.38) и подключаю несколько сетевых адаптеров через USB.
Я хочу найти номер USB, где адаптер в настоящее время подключен.
- Устройства usb-serial, например, имеют обработчики ttyUSB, поэтому я могу использовать udevadm
для определения его местоположения USB (например, '/devices/pci0000:00/0000:00:17.0/0000:01:00.0/0000:02:02.3/usb1/1-1/1-1:1,0/ttyUSB0')
- Ethernet-устройства (и адаптеры USB-ETH) имеют узел «устройство» в /sys/class/net/ethN/device
который ссылается на файловую систему устройства.
я ищу другой хитрый способ найти то же самое для WiFi USB-ключа, который я подключаю.
WiFi основан на ralink, и я использую модуль rt5370sta.ko, чтобы он работал.
так что это работает, и создает интерфейс ra0
, но я не могу найти его номер USB.
Я попытался найти ra0
в /sys/devices
, но все, что я получил, это /sys/devices/virtual/net/ra0
который не очень помогает.
Есть ли автономное решение, которое не требует проверки dmesg/udev (я менее предпочитаю такого рода решения)?