Используя udev:
Вы можете получить полезную информацию, запрашивая ее udev
(в системах, которые ее используют - наверняка почти во всех настольных Linux). Например, если вы хотите узнать, с каким подключенным диском связан /dev/sdb
, вы можете использовать:
udevadm info --query=property --name=sdb
Он покажет вам список свойств этого устройства, включая серийный номер (ID_SERIAL_SHORT). Имея эту информацию, вы можете посмотреть на результаты lsusb -v
и узнать такие вещи, как производитель и название продукта.
Более короткий путь для этого будет
udevadm info --query=property --name=sdb | grep "\(MODEL_ID\|VENDOR_ID\)"
и увидеть строку с соответствием $ID_VENDOR_ID:$ID_MODEL_ID
в гораздо более коротком выводе lsusb
.
Еще одна полезная опция udevadm monitor
. Используйте его, если вы хотите знать, какой узел устройства создается в точке подключения устройства . Итак, первый запуск
udevadm monitor --udev --subsystem-match=block
А затем подключите устройство. Вы увидите имена устройств обнаруженных блочных устройств (дисков / разделов), напечатанные в конце каждой строки вывода.
Практический пример функции оболочки:
Вот функция, которую вы можете вставить в свой .bashrc
(или .zshrc
):
listusbdisks ()
{
[["x $ 1" == "xv"]] && shift && local VERBOSE = -v
для дск в $ {@ - / dev / sd?}
делать
/ sbin / udevadm info --query = путь --name = "$ dsk" | grep --colour = auto -q usb || Продолжить
echo "===== устройство $ dsk is:"
(eval $ (/ sbin / udevadm info --query = property --name = "$ dsk" | grep "\ (MODEL \ | VENDOR \) _ ID")
["$ ID_VENDOR_ID: $ ID_MODEL_ID" == ":"] && echo "Неизвестно" || \
lsusb $ VERBOSE -d "$ ID_VENDOR_ID: $ ID_MODEL_ID"
)
grep -q "$ dsk" / proc / mounts && echo "----- УСТРОЙСТВО УСТАНОВЛЕНО ----"
эхо
сделано
}
Используйте это так:
listusbdisks
- распознать все /dev/sdx
устройства;
listusbdisks sdb
или listusbdisks /dev/sdb
или listusbdisks sdb sdc
- чтобы получить информацию только об определенных устройствах;
listusbdisks -v [optional devices as above]
- показать подробные выводы lsusb
[Редактировать]: добавлены некоторые функции, такие как запросы многих устройств, проверка монтирования и контроль многословия lsusb
.