Device USB persistant udev / udevadm

Cet espace permet de solliciter aide et conseils concernant l'installation, la personnalisation et l'utilisation de Xubuntu.
Bienvenue à tous !
Zinux
Messages : 2
Enregistré le : 15 févr. 2021, 13:05
Contact :

Device USB persistant udev / udevadm

Message par Zinux »

Bonjour/Bonsoir,

J'ai un soucis, je souhaite que le "Device" d'un de mes périphériques USB reste persistant.

Code : Tout sélectionner

lsusb
Bus 004 Device 005: ID 0bda:8153 Realtek Semiconductor Corp. RTL8153 Gigabit Ethernet Adapter
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Comme vous pouvez le constater ce n'est pas un USB de stockage mais une carte réseaux sur un port USB, J'ai créée une règle udev / udevadm la voici :

Code : Tout sélectionner

ACTION=="add", ATTR{idVendor}=="0bda", ATTR{idProduct}=="8153", ATTR{bConfigurationValue}!="$env{REALTEK_NIC_MODE}", MODE="0666", OWNER="zinux", ATTR{devnum}="{9}"
Je me suis basée sur le fichier rules du constructeur "50-usb-realtek-net.rules". Je suppose que la valeur du Device ce situe ici :

Code : Tout sélectionner

cat /sys/devices/pci0000:00/0000:00:16.0/0000:0b:00.0/usb4/4-1/devnum
La commande cat me donne une seul valeur = 5, se qui correspond avec le Device actuelle.
Toutes ces informations corresponde bien à :

Code : Tout sélectionner

udevadm info -a -p $(udevadm info -q path -n /dev/bus/usb/004/005)
Cependant cette commande me retourne :
looking at device '/devices/pci0000:00/0000:00:16.0/0000:0b:00.0/usb4/4-1':
KERNEL=="4-1"
SUBSYSTEM=="usb"
DRIVER=="usb"
ATTR{bMaxPower}=="288mA"
ATTR{speed}=="5000"
ATTR{bMaxPacketSize0}=="9"
ATTR{quirks}=="0x400"
ATTR{bmAttributes}=="a0"
ATTR{bDeviceProtocol}=="00"
ATTR{ltm_capable}=="yes"
ATTR{version}==" 3.20"
ATTR{avoid_reset_quirk}=="0"
ATTR{bNumConfigurations}=="2"
ATTR{bNumInterfaces}==" 1"
ATTR{authorized}=="1"
ATTR{configuration}==""
ATTR{idVendor}=="0bda"
ATTR{idProduct}=="8153"
ATTR{bDeviceSubClass}=="00"
ATTR{urbnum}=="465614"
ATTR{manufacturer}=="Realtek"
ATTR{bDeviceClass}=="00"
ATTR{serial}=="000000"
ATTR{devnum}=="5"
ATTR{devpath}=="1"
ATTR{busnum}=="4"
ATTR{product}=="USB 10/100/1000 LAN"
ATTR{bcdDevice}=="3000"
ATTR{rx_lanes}=="1"
ATTR{maxchild}=="0"
ATTR{bConfigurationValue}=="1"
ATTR{tx_lanes}=="1"
ATTR{removable}=="unknown"
Quand j'essaye d’exécuter cette commande :

Code : Tout sélectionner

udevadm test /devices/pci0000:00/0000:00:16.0/0000:0b:00.0/usb4/4-1
ça me retourne :
Invalid inotify descriptor.
4-1: /etc/udev/rules.d/50-usb-realtek-net.rules:13 Failed to write ATTR{/sys/devices/pci0000:00/0000:00:16.0/0000:0b:00.0/usb4/4-1/devnum}, ignoring: Permission denied
DEVPATH=/devices/pci0000:00/0000:00:16.0/0000:0b:00.0/usb4/4-1
DEVNAME=/dev/bus/usb/004/005
DEVTYPE=usb_device
DRIVER=usb
PRODUCT=bda/8153/3000
TYPE=0/0/0
BUSNUM=004
DEVNUM=005
MAJOR=189
MINOR=388
ACTION=add
SUBSYSTEM=usb
ID_VENDOR=Realtek
ID_VENDOR_ENC=Realtek
ID_VENDOR_ID=0bda
ID_MODEL=USB_10_100_1000_LAN
ID_MODEL_ENC=USB\x2010\x2f100\x2f1000\x20LAN
ID_MODEL_ID=8153
ID_REVISION=3000
ID_SERIAL=Realtek_USB_10_100_1000_LAN_000000
ID_SERIAL_SHORT=000000
ID_BUS=usb
ID_USB_INTERFACES=:ffff00:020600:0a0000:
ID_VENDOR_FROM_DATABASE=Realtek Semiconductor Corp.
ID_MODEL_FROM_DATABASE=RTL8153 Gigabit Ethernet Adapter
REALTEK_NIC_MODE=1
ID_PATH=pci-0000:0b:00.0-usb-0:1
ID_PATH_TAG=pci-0000_0b_00_0-usb-0_1
USEC_INITIALIZED=2377194066
Unload module index
Unloaded link configuration context.
Ont peut bien voir que sur la deuxième ligne la permissions a bien était refusé. Sachant que même le fichier : "Reading rules file: /etc/udev/rules.d/50-usb-realtek-net.rules" à bien était lu par udevadm.

Maintenant si je fait ça :

Code : Tout sélectionner

chmod 777 /sys/devices/pci0000:00/0000:00:16.0/0000:0b:00.0/usb4/4-1/devnum
et que je ré-exécute la commande cette commande précédente :

Code : Tout sélectionner

udevadm test /devices/pci0000:00/0000:00:16.0/0000:0b:00.0/usb4/4-1
sa m'affiche ça :
Invalid inotify descriptor.
4-1: /etc/udev/rules.d/50-usb-realtek-net.rules:13 Failed to write ATTR{/sys/devices/pci0000:00/0000:00:16.0/0000:0b:00.0/usb4/4-1/devnum}, ignoring: Input/output error
DEVPATH=/devices/pci0000:00/0000:00:16.0/0000:0b:00.0/usb4/4-1
DEVNAME=/dev/bus/usb/004/005
DEVTYPE=usb_device
DRIVER=usb
PRODUCT=bda/8153/3000
TYPE=0/0/0
BUSNUM=004
DEVNUM=005
MAJOR=189
MINOR=388
ACTION=add
SUBSYSTEM=usb
ID_VENDOR=Realtek
ID_VENDOR_ENC=Realtek
ID_VENDOR_ID=0bda
ID_MODEL=USB_10_100_1000_LAN
ID_MODEL_ENC=USB\x2010\x2f100\x2f1000\x20LAN
ID_MODEL_ID=8153
ID_REVISION=3000
ID_SERIAL=Realtek_USB_10_100_1000_LAN_000000
ID_SERIAL_SHORT=000000
ID_BUS=usb
ID_USB_INTERFACES=:ffff00:020600:0a0000:
ID_VENDOR_FROM_DATABASE=Realtek Semiconductor Corp.
ID_MODEL_FROM_DATABASE=RTL8153 Gigabit Ethernet Adapter
REALTEK_NIC_MODE=1
ID_PATH=pci-0000:0b:00.0-usb-0:1
ID_PATH_TAG=pci-0000_0b_00_0-usb-0_1
USEC_INITIALIZED=2377194066
Unload module index
Unloaded link configuration context.
On peut bien voir deux erreurs : "ignoring: Input/output error" et "Invalid inotify descriptor."

J'ai déjà utiliser ses commandes :

Code : Tout sélectionner

udevadm trigger
sudo udevadm control --reload
reboot
S'il vous plaît, comment changer ou rendre le "Device persistant", ma priorité c'est qu'il devienne persistant, à chaque branchement et débranchement.
Je vous en remercie de votre aide, Cordialement Zinux.
Zinux
Messages : 2
Enregistré le : 15 févr. 2021, 13:05
Contact :

Re: Device USB persistant udev / udevadm

Message par Zinux »

Soucis résolus, la réponse se trouve ici https://forum.ubuntu-fr.org/viewtopic.php?id=2061987
Répondre