J'essaie d'empêcher le gestionnaire de modem de fonctionner lorsque je branche mon téléphone portable sur un port USB.
J'ai essayé d'ajouter une règle personnalisée avec udev, mais mes règles personnalisées semblent ignorées. J'ai créé un fichier /etc/udev/rules.d/99-mm-usb-device-blacklist.rules
qui contient
# LG Phone
ATTRS{idVendor}=="1004", ENV{ID_MM_DEVICE_IGNORE}="1"
Et pourtant, lorsque je branche le téléphone et vérifie dmesg, voici ce que j'obtiens:
[ 1809.761940] usb 3-1: new high-speed USB device number 11 using xhci_hcd
[ 1809.778662] usb 3-1: New USB device found, idVendor=1004, idProduct=61fc
[ 1809.778670] usb 3-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 1809.778674] usb 3-1: Product: B Project USB Device
[ 1809.778677] usb 3-1: Manufacturer: LG Electronics. Inc
[ 1809.778680] usb 3-1: SerialNumber: XXXXXXXXXXXXXXXXX
[ 1809.779501] cdc_acm 3-1:1.0: This device cannot do calls on its own. It is not a modem.
[ 1809.779584] cdc_acm 3-1:1.0: ttyACM0: USB ACM device
[ 1809.780899] cdc_ether 3-1:1.3 usb0: register 'cdc_ether' at usb-0000:00:14.0-1, CDC Ethernet Device, 6e:34:73:4f:68:4c
[ 1809.781454] scsi8 : usb-storage 3-1:1.5
[ 1809.807331] IPv6: ADDRCONF(NETDEV_UP): usb0: link is not ready
[ 1809.816566] IPv6: ADDRCONF(NETDEV_UP): usb0: link is not ready
[ 1809.816759] IPv6: ADDRCONF(NETDEV_UP): usb0: link is not ready
J'ai également essayé l'édition, /lib/udev/rules.dev/77-mm-usb-device-blacklist.rules
mais cela n'a pas fonctionné non plus. Qu'est-ce que je rate? Quelle serait une étape utile pour déboguer cela?
Mise à jour: l'exécution udevadm info --export-db
montre que la règle udev est en cours de mise à jour. La sortie pertinente est:
P: /devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.7
N: bus/usb/002/012
E: BUSNUM=002
E: DEVNAME=/dev/bus/usb/002/012
E: DEVNUM=012
E: DEVPATH=/devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.7
E: DEVTYPE=usb_device
E: DRIVER=usb
E: ID_BUS=usb
E: ID_MM_DEVICE_IGNORE=1
E: ID_MODEL=B_Project_USB_Device
E: ID_MODEL_ENC=B\x20Project\x20USB\x20Device
E: ID_MODEL_ID=61fc
E: ID_REVISION=0216
E: ID_SERIAL=LG_Electronics._Inc_B_Project_USB_Device_XXXXXXXXXXXXX
E: ID_SERIAL_SHORT=XXXXXXXXXXXX
E: ID_USB_INTERFACES=:020201:0a0000:ffffff:020600:080650:
E: ID_VENDOR=LG_Electronics._Inc
E: ID_VENDOR_ENC=LG\x20Electronics.\x20Inc
E: ID_VENDOR_ID=1004
E: MAJOR=189
E: MINOR=139
E: PRODUCT=1004/61fc/216
E: SUBSYSTEM=usb
E: TYPE=239/2/1
E: UDEV_LOG=7
E: USEC_INITIALIZED=5987581808
Le gestionnaire de modem doit donc ignorer le périphérique. Et pourtant, mon ordinateur continue d'essayer d'initialiser une connexion réseau via mon téléphone chaque fois que je le branche sur le port USB. Y a-t-il un autre programme que udev lance?
ID_MM_CANDIDATE
n'apparaît pas dans la sortie du périphérique USB, mais il existe une entrée distincte dans la sortie de la base de données pour le périphérique TTY, et elle contient les deux ID_MM_CANDIDATE=1
et ID_MM_DEVICE_IGNORE=1
. Les journaux de débogage de Modem Manager montrent qu'il teste bien le périphérique.