GNU/Linux >> Tutoriales Linux >  >> Linux

Enumeración coherente de dispositivos Linux

Dado que estamos hablando de dispositivos USB y suponiendo que tiene udev, puede configurar algunas reglas de udev.

Supongo, y esto es solo una suposición descabellada, alguien o algo desconectó/retiró el dispositivo y lo volvió a enchufar/agregar el dispositivo nuevamente, lo que aumenta el número.

Ahora, primero necesita la identificación del proveedor y del producto:

$ lsusb
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 011: ID 0403:6001 FTDI FT232 USB-Serial (UART) IC

A continuación, necesitas el número de serie (en caso de que tengas varios):

# udevadm info -a -n /dev/ttyUSB1 | grep '{serial}' | head -n1
    ATTRS{serial}=="A6008isP"

Ahora, creemos una regla udev:

Las reglas de UDEV generalmente se encuentran dispersas en muchos archivos en /etc/udev/rules.d . Crea un nuevo archivo llamado 99-usb-serial.rules y pongo la siguiente línea allí, tengo tres dispositivos, cada uno con un número de serie diferente:

SUBSYSTEM=="tty", ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6001", ATTRS{serial}=="A6008isP", SYMLINK+="MySerialDevice"
SUBSYSTEM=="tty", ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6001", ATTRS{serial}=="A7004IXj", SYMLINK+="MyOtherSerialDevice"
SUBSYSTEM=="tty", ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6001", ATTRS{serial}=="FTDIF46B", SYMLINK+="YetAnotherSerialDevice"

ls -l /dev/MySerialDevice
lrwxrwxrwx 1 root root 7 Nov 25 22:12 /dev/MySerialDevice -> ttyUSB1

Si no desea el número de serie, cualquier dispositivo del proveedor con el mismo chip obtendrá el mismo enlace simbólico, solo se puede conectar uno en un momento dado.

SUBSYSTEM=="tty", ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6001", SYMLINK+="MySerialDevice"

Tomado de aquí


Linux
  1. Linux:¿significado por montar un dispositivo en Linux?

  2. ¿Por qué necesitamos un gestor de arranque en un dispositivo integrado?

  3. ¿Cómo programar archivos de árbol de dispositivos Linux .dts?

  4. Desconecte y vuelva a conectar ttyUSB0 mediante programación en Linux

  5. Salida lsblk de Linux

Cómo rastrear su computadora portátil Linux

Comando Lsblk en Linux (Lista de dispositivos de bloque)

Todo es archivo en Linux – Parte 1

Cómo detectar y administrar dispositivos en Linux

¿Cómo escribir en una cámara web virtual en Linux?

¿Qué significa montar un dispositivo en Linux?