Usando udev:
Puede obtener consultas de información útiles udev(en sistemas que lo usan, casi todos los Linux de tipo escritorio). Por ejemplo, si desea saber con qué unidad conectada está asociada /dev/sdb, puede usar:
udevadm info --query=property --name=sdb
Le mostrará una lista de propiedades de ese dispositivo, incluida la serie (ID_SERIAL_SHORT). Con esa información, puede ver la salida lsusb -vy conocer cosas como el fabricante y el nombre del producto.
Un camino más corto para hacer esto sería
udevadm info --query=property --name=sdb | grep "\(MODEL_ID\|VENDOR_ID\)"
y vea la línea con coincidencia $ID_VENDOR_ID:$ID_MODEL_IDen la salida mucho más corta de lsusb.
Otra opción útil es udevadm monitor. Úselo si desea saber qué nodo de dispositivo se crea en el punto de conectar el dispositivo . Así que primero corre
udevadm monitor --udev --subsystem-match=block
Y luego conecte el dispositivo. Verá los nombres de los dispositivos de bloque detectados (discos / particiones) impresos al final de cada línea de salida.
Un ejemplo práctico de función de shell:
Aquí hay una función que puede poner en su .bashrc (o .zshrc):
listusbdisks ()
{
[["x $ 1" == "xv"]] && shift && local VERBOSE = -v
para dsk en $ {@ - / dev / sd?}
hacer
/ sbin / udevadm info - consulta = ruta --nombre = "$ dsk" | grep --colour = auto -q usb || Seguir
echo "===== dispositivo $ dsk es:"
(eval $ (/ sbin / udevadm info --query = property --name = "$ dsk" | grep "\ (MODEL \ | VENDOR \) _ ID")
["$ ID_VENDOR_ID: $ ID_MODEL_ID" == ":"] && echo "Desconocido" || \
lsusb $ VERBOSE -d "$ ID_VENDOR_ID: $ ID_MODEL_ID"
)
grep -q "$ dsk" / proc / mounts && echo "----- EL DISPOSITIVO SE MONTA ----"
eco
hecho
}
Úselo así:
listusbdisks- para reconocer todos los /dev/sdxdispositivos;
listusbdisks sdbo listusbdisks /dev/sdbo listusbdisks sdb sdc- para obtener información sobre ciertos dispositivos solamente;
listusbdisks -v [optional devices as above] - para mostrar salidas detalladas de lsusb
[Editar]: se agregó alguna funcionalidad como consultar muchos dispositivos, verificar los montajes y controlar la verbosidad de lsusb.