Après de nombreuses lectures et tests.
J'ai découvert que cela est lié à une modification récente des règles Udev par défaut pour définir une règle fourre-tout pour les périphériques à gérer par MTP s'ils ne correspondent à aucune autre règle udev pour les périphériques USB.
Au lieu que mon appareil soit monté comme un périphérique de stockage de masse USB comme il le faisait auparavant.
J'ai trouvé que je devais faire savoir à udev que ce périphérique devait être géré comme un périphérique de stockage de masse USB au lieu de la règle MTP catch all
J'ai d'abord besoin de l'ID de mon appareil. En dessous c'est le dernier de la liste
$ lsusb
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 003: ID 8087:0a2a Intel Corp.
Bus 001 Device 002: ID 04f2:b51d Chicony Electronics Co., Ltd
Bus 001 Device 006: ID 04e8:6860 Samsung Electronics Co., Ltd Galaxy (MTP)
Bus 001 Device 005: ID 0b05:181b ASUSTek Computer, Inc.
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 007: ID 174c:5106 ASMedia Technology Inc
Je suis sûr qu'il y a plus que ce que j'ai ici, mais cela fonctionne pour moi. Je prends l'identifiant de l'appareil qui 174c:5106
et remplacez-le dans les règles udev ci-dessous.
$ cat /etc/udev/rules.d/90-myrules.rules
SUBSYSTEMS=="usb", ENV{MODALIAS}=="usb:174c:5106", ENV{MODALIAS}="usb-storage"
Je vois maintenant ce qui suit dans mes journaux système
journalctl -fe
kernel: usb 1-2: USB disconnect, device number 9
kernel: usb 1-2: new high-speed USB device number 10 using xhci_hcd
mtp-probe[9850]: checking bus 1, device 10: "/sys/devices/pci0000:00/0000:00:14.0/usb1/1-2"
mtp-probe[9850]: bus: 1, device: 10 was not an MTP device
kernel: usb-storage 1-2:1.0: USB Mass Storage device detected
kernel: scsi host3: usb-storage 1-2:1.0
kernel: usbcore: registered new interface driver usb-storage
kernel: usbcore: registered new interface driver uas
kernel: scsi 3:0:0:0: Direct-Access ST310005 24AS JC4B PQ: 0 ANSI: 0
kernel: sd 3:0:0:0: Attached scsi generic sg2 type 0
kernel: sd 3:0:0:0: [sdb] 1953525168 512-byte logical blocks: (1.00 TB/932 GiB)
kernel: sd 3:0:0:0: [sdb] Write Protect is off
kernel: sd 3:0:0:0: [sdb] Mode Sense: 23 00 00 00
kernel: sd 3:0:0:0: [sdb] No Caching mode page found
kernel: sd 3:0:0:0: [sdb] Assuming drive cache: write through
kernel: sdb: sdb1
kernel: sd 3:0:0:0: [sdb] Attached SCSI disk
Copiez d'abord le fichier /lib/udev/rules.d/69-libmtp.rules
à /etc/udev/rules.d/69-libmtp.rules
:
$ sudo cp /lib/udev/rules.d/69-libmtp.rules /etc/udev/rules.d/69-libmtp.rules
En haut de ce fichier, vous pouvez trouver :
# Some sensitive devices we surely don't wanna probe
ATTR{idVendor}=="0670", GOTO="libmtp_rules_end"
ATTR{idVendor}=="0471", ATTR{idProduct}=="083f", GOTO="libmtp_rules_end"
Excluez ensuite l'appareil de mtp-probe
en ajoutant la ligne suivante après les lignes mentionnées :
ATTR{idVendor}=="093a", ATTR{idProduct}=="2516", GOTO="libmtp_rules_end"
J'ai trouvé mon ID de périphérique USB avec lsusb
commande shell. C'est 093a:2516