Device USB persistant udev / udevadm
Posté : 15 févr. 2021, 14:43
Bonjour/Bonsoir,
J'ai un soucis, je souhaite que le "Device" d'un de mes périphériques USB reste persistant.
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 :
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 :
La commande cat me donne une seul valeur = 5, se qui correspond avec le Device actuelle.
Toutes ces informations corresponde bien à : Cependant cette commande me retourne :
ça me retourne :
Maintenant si je fait ça :
et que je ré-exécute la commande cette commande précédente :
sa m'affiche ça :
J'ai déjà utiliser ses commandes :
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.
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
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}"
Code : Tout sélectionner
cat /sys/devices/pci0000:00/0000:00:16.0/0000:0b:00.0/usb4/4-1/devnum
Toutes ces informations corresponde bien à :
Code : Tout sélectionner
udevadm info -a -p $(udevadm info -q path -n /dev/bus/usb/004/005)
Quand j'essaye d’exécuter cette commande :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"
Code : Tout sélectionner
udevadm test /devices/pci0000:00/0000:00:16.0/0000:0b:00.0/usb4/4-1
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.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.
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
Code : Tout sélectionner
udevadm test /devices/pci0000:00/0000:00:16.0/0000:0b:00.0/usb4/4-1
On peut bien voir deux erreurs : "ignoring: Input/output error" et "Invalid inotify descriptor."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.
J'ai déjà utiliser ses commandes :
Code : Tout sélectionner
udevadm trigger
sudo udevadm control --reload
reboot
Je vous en remercie de votre aide, Cordialement Zinux.