Montage DD externe USB

Bonjour,

le sujet semble être une grand classique, mais je ne trouve pas vraiment la solution à mon problème en cherchant sur le forum.

J’ai un DD Western Digital en USB qui donc ne monte pas automatiquement. Voici le retour de deux commandes qui pourra être utile :

sam@pc-debian:~$ lsusb
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 008 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 007 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 006 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 005: ID 1058:1100 Western Digital Technologies, Inc. My Book Essential Edition 2.0 (WDH1U)
Bus 001 Device 002: ID 04a9:1909 Canon, Inc. CanoScan LiDE 110
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 005 Device 002: ID 046d:c077 Logitech, Inc. M105 Optical Mouse
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
sam@pc-debian:~$ sudo fdisk -l
[sudo] Mot de passe de sam : 
Disque /dev/sda : 931,5 GiB, 1000204886016 octets, 1953525168 secteurs
Modèle de disque : ST1000DM003-1SB1
Unités : secteur de 1 × 512 = 512 octets
Taille de secteur (logique / physique) : 512 octets / 4096 octets
taille d'E/S (minimale / optimale) : 4096 octets / 4096 octets
Type d'étiquette de disque : dos
Identifiant de disque : 0x4d54029c

 Périphérique Amorçage    Début        Fin   Secteurs Taille Id Type
/dev/sda1    *              63   68591615   68591553  32,7G 83 Linux
/dev/sda2             68593664 1953525167 1884931504 898,8G  5 Étendue
/dev/sda5             68595712   85063679   16467968   7,9G 82 partition d'échan
/dev/sda6             85064238 1953520064 1868455827   891G 83 Linux

La partition 1 ne commence pas sur une frontière de cylindre physique.
La partition 6 ne commence pas sur une frontière de cylindre physique.


Disque /dev/sdc : 931,5 GiB, 1000204886016 octets, 1953525168 secteurs
Modèle de disque : SAMSUNG HD103SJ 
Unités : secteur de 1 × 512 = 512 octets
Taille de secteur (logique / physique) : 512 octets / 512 octets
taille d'E/S (minimale / optimale) : 512 octets / 512 octets


Disque /dev/sdb : 74,5 GiB, 80026361856 octets, 156301488 secteurs
Modèle de disque : ST380013AS      
Unités : secteur de 1 × 512 = 512 octets
Taille de secteur (logique / physique) : 512 octets / 512 octets
taille d'E/S (minimale / optimale) : 512 octets / 512 octets
Type d'étiquette de disque : dos
Identifiant de disque : 0x43bd43bc

Périphérique Amorçage Début       Fin  Secteurs Taille Id Type
/dev/sdb1                63 156296384 156296322  74,5G  c W95 FAT32 (LBA)

Mon disque est donc bien détecté dans mes périphériques USB, mais pas par fdisk. Je le vois également dans /dev/disk/by-id

Quelle serait la commande pour arriver à le monter ?

Edit : voilà ce que me renvoie dmesg quand je branche le disque :

[21686.068506] usb 1-3: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[21686.068509] usb 1-3: Product: My Book         
[21686.068511] usb 1-3: Manufacturer: Western Digital 
[21686.068512] usb 1-3: SerialNumber: 202020202020202020202020202020
[21686.068901] usb-storage 1-3:1.0: USB Mass Storage device detected
[21686.069135] scsi host8: usb-storage 1-3:1.0
[21687.088002] scsi 8:0:0:0: Direct-Access     WD                        1.75 PQ: 0 ANSI: 4
[21687.088510] sd 8:0:0:0: Attached scsi generic sg3 type 0
[21687.088966] sd 8:0:0:0: [sdd] Very big device. Trying to use READ CAPACITY(16).
[21687.089977] sd 8:0:0:0: [sdd] Using 0xffffffff as device size
[21687.089988] sd 8:0:0:0: [sdd] 4294967296 512-byte logical blocks: (2.20 TB/2.00 TiB)
[21687.090612] sd 8:0:0:0: [sdd] Write Protect is off
[21687.090616] sd 8:0:0:0: [sdd] Mode Sense: 23 00 00 00
[21687.091304] sd 8:0:0:0: [sdd] No Caching mode page found
[21687.091311] sd 8:0:0:0: [sdd] Assuming drive cache: write through
[21687.095222] sd 8:0:0:0: [sdd] Very big device. Trying to use READ CAPACITY(16).
[21687.096618] sd 8:0:0:0: [sdd] Using 0xffffffff as device size
[21687.100202] sd 8:0:0:0: [sdd] tag#0 FAILED Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE
[21687.100207] sd 8:0:0:0: [sdd] tag#0 Sense Key : Illegal Request [current] 
[21687.100209] sd 8:0:0:0: [sdd] tag#0 Add. Sense: Invalid command operation code
[21687.100213] sd 8:0:0:0: [sdd] tag#0 CDB: Read(16) 88 00 00 00 00 00 00 00 00 00 00 00 00 08 00 00
[21687.100215] print_req_error: critical target error, dev sdd, sector 0
[21687.100220] Buffer I/O error on dev sdd, logical block 0, async page read
[21687.101200] sd 8:0:0:0: [sdd] tag#0 FAILED Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE
[21687.101203] sd 8:0:0:0: [sdd] tag#0 Sense Key : Illegal Request [current] 
[21687.101205] sd 8:0:0:0: [sdd] tag#0 Add. Sense: Invalid command operation code
[21687.101208] sd 8:0:0:0: [sdd] tag#0 CDB: Read(16) 88 00 00 00 00 00 00 00 00 00 00 00 00 08 00 00
[21687.101209] print_req_error: critical target error, dev sdd, sector 0
[21687.101212] Buffer I/O error on dev sdd, logical block 0, async page read
[21687.102199] sd 8:0:0:0: [sdd] tag#0 FAILED Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE
[21687.102202] sd 8:0:0:0: [sdd] tag#0 Sense Key : Illegal Request [current] 
[21687.102204] sd 8:0:0:0: [sdd] tag#0 Add. Sense: Invalid command operation code
[21687.102205] sd 8:0:0:0: [sdd] tag#0 CDB: Read(16) 88 00 00 00 00 00 00 00 00 00 00 00 00 08 00 00
[21687.102206] print_req_error: critical target error, dev sdd, sector 0
[21687.102209] Buffer I/O error on dev sdd, logical block 0, async page read
[21687.103195] sd 8:0:0:0: [sdd] tag#0 FAILED Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE
[21687.103197] sd 8:0:0:0: [sdd] tag#0 Sense Key : Illegal Request [current] 
[21687.103199] sd 8:0:0:0: [sdd] tag#0 Add. Sense: Invalid command operation code
[21687.103201] sd 8:0:0:0: [sdd] tag#0 CDB: Read(16) 88 00 00 00 00 00 00 00 00 00 00 00 00 08 00 00
[21687.103202] print_req_error: critical target error, dev sdd, sector 0
[21687.103204] Buffer I/O error on dev sdd, logical block 0, async page read
[21687.103211] ldm_validate_partition_table(): Disk read failed.
[21687.104198] sd 8:0:0:0: [sdd] tag#0 FAILED Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE
[21687.104200] sd 8:0:0:0: [sdd] tag#0 Sense Key : Illegal Request [current] 
[21687.104202] sd 8:0:0:0: [sdd] tag#0 Add. Sense: Invalid command operation code
[21687.104204] sd 8:0:0:0: [sdd] tag#0 CDB: Read(16) 88 00 00 00 00 00 00 00 00 00 00 00 00 08 00 00
[21687.104205] print_req_error: critical target error, dev sdd, sector 0
[21687.104207] Buffer I/O error on dev sdd, logical block 0, async page read
[21687.105217] sd 8:0:0:0: [sdd] tag#0 FAILED Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE
[21687.105219] sd 8:0:0:0: [sdd] tag#0 Sense Key : Illegal Request [current] 
[21687.105220] sd 8:0:0:0: [sdd] tag#0 Add. Sense: Invalid command operation code
[21687.105222] sd 8:0:0:0: [sdd] tag#0 CDB: Read(16) 88 00 00 00 00 00 00 00 00 00 00 00 00 08 00 00
[21687.105224] print_req_error: critical target error, dev sdd, sector 0
[21687.105226] Buffer I/O error on dev sdd, logical block 0, async page read
[21687.106215] sd 8:0:0:0: [sdd] tag#0 FAILED Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE
[21687.106217] sd 8:0:0:0: [sdd] tag#0 Sense Key : Illegal Request [current] 
[21687.106218] sd 8:0:0:0: [sdd] tag#0 Add. Sense: Invalid command operation code
[21687.106220] sd 8:0:0:0: [sdd] tag#0 CDB: Read(16) 88 00 00 00 00 00 00 00 00 00 00 00 00 08 00 00
[21687.106221] print_req_error: critical target error, dev sdd, sector 0
[21687.106223] Buffer I/O error on dev sdd, logical block 0, async page read
[21687.107218] sd 8:0:0:0: [sdd] tag#0 FAILED Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE
[21687.107220] sd 8:0:0:0: [sdd] tag#0 Sense Key : Illegal Request [current] 
[21687.107222] sd 8:0:0:0: [sdd] tag#0 Add. Sense: Invalid command operation code
[21687.107224] sd 8:0:0:0: [sdd] tag#0 CDB: Read(16) 88 00 00 00 00 00 00 00 00 00 00 00 00 08 00 00
[21687.107225] print_req_error: critical target error, dev sdd, sector 0
[21687.107227] Buffer I/O error on dev sdd, logical block 0, async page read
[21687.107235] Dev sdd: unable to read RDB block 0
[21687.108217] sd 8:0:0:0: [sdd] tag#0 FAILED Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE
[21687.108219] sd 8:0:0:0: [sdd] tag#0 Sense Key : Illegal Request [current] 
[21687.108221] sd 8:0:0:0: [sdd] tag#0 Add. Sense: Invalid command operation code
[21687.108223] sd 8:0:0:0: [sdd] tag#0 CDB: Read(16) 88 00 00 00 00 00 00 00 00 00 00 00 00 08 00 00
[21687.108224] print_req_error: critical target error, dev sdd, sector 0
[21687.108225] Buffer I/O error on dev sdd, logical block 0, async page read
[21687.109195] sd 8:0:0:0: [sdd] tag#0 FAILED Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE
[21687.109197] sd 8:0:0:0: [sdd] tag#0 Sense Key : Illegal Request [current] 
[21687.109198] sd 8:0:0:0: [sdd] tag#0 Add. Sense: Invalid command operation code
[21687.109200] sd 8:0:0:0: [sdd] tag#0 CDB: Read(16) 88 00 00 00 00 00 00 00 00 00 00 00 00 08 00 00
[21687.109201] print_req_error: critical target error, dev sdd, sector 0
[21687.109203] Buffer I/O error on dev sdd, logical block 0, async page read
[21687.111222]  sdd: unable to read partition table
[21687.112329] sd 8:0:0:0: [sdd] Very big device. Trying to use READ CAPACITY(16).
[21687.113327] sd 8:0:0:0: [sdd] Using 0xffffffff as device size
[21687.114583] sd 8:0:0:0: [sdd] Attached SCSI disk

Plein d’erreurs apparemment. Le disque serait-il mort ?

Et par lsblk ?
Quels sont les derniers messages affichés par dmesg après le branchement du disque ?

Et nous, on peut voir (en incluant la cible du lien symbolique, par exemple avec ls -l) ?

PS.

Et c’est ennuyeux car le non alignement des partitions sur les secteurs physiques risque de dégrader les performances, surtout en écriture aléatoire.

Le dmesg est dans l’edit du dessus. Sinon :

sam@pc-debian:~$ ls -l /dev/disk/by-id/
total 0
lrwxrwxrwx 1 root root  9 oct.  23 09:05 ata-SAMSUNG_HD103SJ_S246J9CB213443 -> ../../sdc
lrwxrwxrwx 1 root root  9 oct.  23 09:05 ata-ST1000DM003-1SB10C_Z9A0WJC4 -> ../../sda
lrwxrwxrwx 1 root root 10 oct.  23 09:05 ata-ST1000DM003-1SB10C_Z9A0WJC4-part1 -> ../../sda1
lrwxrwxrwx 1 root root 10 oct.  23 09:05 ata-ST1000DM003-1SB10C_Z9A0WJC4-part2 -> ../../sda2
lrwxrwxrwx 1 root root 10 oct.  23 09:05 ata-ST1000DM003-1SB10C_Z9A0WJC4-part5 -> ../../sda5
lrwxrwxrwx 1 root root 10 oct.  23 09:05 ata-ST1000DM003-1SB10C_Z9A0WJC4-part6 -> ../../sda6
lrwxrwxrwx 1 root root  9 oct.  23 09:05 ata-ST380013AS_3JV9EEMJ -> ../../sdb
lrwxrwxrwx 1 root root 10 oct.  23 09:05 ata-ST380013AS_3JV9EEMJ-part1 -> ../../sdb1
lrwxrwxrwx 1 root root  9 oct.  25 09:23 usb-WD_My_Book_202020202020202020202020202020-0:0 -> ../../sdd
lrwxrwxrwx 1 root root  9 oct.  23 09:05 wwn-0x5000c50087b9ab55 -> ../../sda
lrwxrwxrwx 1 root root 10 oct.  23 09:05 wwn-0x5000c50087b9ab55-part1 -> ../../sda1
lrwxrwxrwx 1 root root 10 oct.  23 09:05 wwn-0x5000c50087b9ab55-part2 -> ../../sda2
lrwxrwxrwx 1 root root 10 oct.  23 09:05 wwn-0x5000c50087b9ab55-part5 -> ../../sda5
lrwxrwxrwx 1 root root 10 oct.  23 09:05 wwn-0x5000c50087b9ab55-part6 -> ../../sda6
lrwxrwxrwx 1 root root  9 oct.  25 09:23 wwn-0x50014ee2024c3657 -> ../../sdd
lrwxrwxrwx 1 root root  9 oct.  23 09:05 wwn-0x50024e9204a32b91 -> ../../sdc

Le disque apparaît bien dans les devices :

sam@pc-debian:~$ ls -l /dev | grep sdd
brw-rw----  1 root disk      8,  48 oct.  25 09:23 sdd

Je peux tenter un mount /dev/sdd vers un point de montage que j’aurais créé ?

sam@pc-debian:~$ sudo mkdir /mnt/my_book
[sudo] Mot de passe de sam : 
sam@pc-debian:~$ sudo mount /dev/sdd1 /mnt/my_book/
mount: /mnt/my_book: le périphérique spécial /dev/sdd1 n'existe pas.

Je tente et ça monte pas…

Evite d’éditer un ancien message pour ajouter des informations s’il y a eu des réponses, car ça ne fait pas remonter le sujet.

C’est toujours la même erreur qui se répète, lors de l’accès au secteur 0 (MBR) pour lire la table de partition. Ça n’a pas l’air d’être une erreur de lecture physique mais plutôt comme si la commande n’était pas reconnue.
Il y a aussi une bizarrerie concernant la capacité, apparemment elle est supérieure à 2 Tio mais le noyau n’arrive pas à détecter la capacité réelle. Quelle est-elle ?

C’est un disque neuf ? Tu l’as déjà utilisé ? Il contient des données importantes ? C’est un disque USB ou un disque SATA dans un boîtier adaptateur USB ? Alimentation propre ou par le bus USB ?

C’est un assez vieux disque mais qui a peu servi. Il marchait correctement sous Ubuntu, mais je ne crois pas l’avoir déjà essayé sous Debian.

Sa capacité est de 1 To. Disque USB, alimentation propre.

C’est curieux car le noyau semble croire que le disque a une capacité supérieure qui nécessite d’utiliser des commandes spécifiques pour les très grandes capacités mais qui ne sont pas reconnues par le disque. On peut essayer de désactiver l’utilisation de READ CAPACITY(16) pour voir.

echo -n "1058:1100:e" > /sys/module/usb_storage/parameters/quirks

Débrancher et rebrancher le disque. Examiner à nouveau la sortie de dmesg.

1 J'aime

Apparemment ça, ça ne marche pas :

sam@pc-debian:~$ sudo echo -n "1058:1100:e" > /sys/module/usb_storage/parameters/quirks
bash: /sys/module/usb_storage/parameters/quirks: Permission non accordée

Je voulais remettre ce DD en service pour effectuer des sauvegardes, mais je ferais peut-être aussi bien d’en racheter un ?

Encore un qui utilise sudo sans savoir comment ça marche. La redirection ne fait pas partie de la commande sudo. Le plus simple est d’exécuter la commande dans un vrai shell root, obtenu par exemple par « su - » ou « sudo -s ».

Oui Pascal, je suis un peu novice. Et comme l’aurait dit monsieur de la Palisse, avant de savoir on ignore.

root@pc-debian:/home/sam# echo -n "1058:1100:e" > /sys/module/usb_storage/parameters/quirks

[26963.853293] usb 1-3: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[26963.853296] usb 1-3: Product: My Book         
[26963.853298] usb 1-3: Manufacturer: Western Digital 
[26963.853301] usb 1-3: SerialNumber: 202020202020202020202020202020
[26963.853685] usb-storage 1-3:1.0: USB Mass Storage device detected
[26963.853853] usb-storage 1-3:1.0: Quirks match for vid 1058 pid 1100: 80000
[26963.853911] scsi host8: usb-storage 1-3:1.0
[26964.884597] scsi 8:0:0:0: Direct-Access     WD                        1.75 PQ: 0 ANSI: 4
[26964.885188] sd 8:0:0:0: Attached scsi generic sg3 type 0
[26964.886510] sd 8:0:0:0: [sdd] 0 512-byte logical blocks: (0 B/0 B)
[26964.887105] sd 8:0:0:0: [sdd] Write Protect is off
[26964.887108] sd 8:0:0:0: [sdd] Mode Sense: 23 00 00 00
[26964.887745] sd 8:0:0:0: [sdd] No Caching mode page found
[26964.887755] sd 8:0:0:0: [sdd] Assuming drive cache: write through
[26964.890362] sd 8:0:0:0: [sdd] Attached SCSI disk



sam@pc-debian:~$ ls -l /dev/disk/by-id/
total 0
lrwxrwxrwx 1 root root  9 oct.  23 09:05 ata-SAMSUNG_HD103SJ_S246J9CB213443 -> ../../sdc
lrwxrwxrwx 1 root root  9 oct.  23 09:05 ata-ST1000DM003-1SB10C_Z9A0WJC4 -> ../../sda
lrwxrwxrwx 1 root root 10 oct.  23 09:05 ata-ST1000DM003-1SB10C_Z9A0WJC4-part1 -> ../../sda1
lrwxrwxrwx 1 root root 10 oct.  23 09:05 ata-ST1000DM003-1SB10C_Z9A0WJC4-part2 -> ../../sda2
lrwxrwxrwx 1 root root 10 oct.  23 09:05 ata-ST1000DM003-1SB10C_Z9A0WJC4-part5 -> ../../sda5
lrwxrwxrwx 1 root root 10 oct.  23 09:05 ata-ST1000DM003-1SB10C_Z9A0WJC4-part6 -> ../../sda6
lrwxrwxrwx 1 root root  9 oct.  23 09:05 ata-ST380013AS_3JV9EEMJ -> ../../sdb
lrwxrwxrwx 1 root root 10 oct.  23 09:05 ata-ST380013AS_3JV9EEMJ-part1 -> ../../sdb1
lrwxrwxrwx 1 root root  9 oct.  25 17:03 usb-WD_My_Book_202020202020202020202020202020-0:0 -> ../../sdd

L’erreur due à la taille semble avoir disparue, mais la partition sdd1 semble toujours aux abonnés absents.

Il ne risque pas d’y avoir de partition, la taille détectée est maintenant de 0 :

Si ce n’est pas matériel (disque, alimentation…), je sèche.
Est-il possible de tester le disque avec un autre ordinateur, un autre OS, une autre alimentation ?

PS : pour supprimer le « quirk », il suffit de redémarrer, de décharger et recharger le module usb-storage, ou refaire la commande avec "" (chaîne vide) au lieu de "1058:1100:e". Et si tu as envie d’en essayer d’autres, la liste est là :

https://www.kernel.org/doc/html/latest/admin-guide/kernel-parameters.html

sous la section « usb-storage.quirks »

Oui, j’ai une autre bécane (mais sous Windows…) sur laquelle je pourrais tester ça.

En même temps, en relisant ton post, il n’était pas précisé avec quels droits l’exécuter :wink:

Une manière de l’exécuter avec sudo :
sudo echo -n "1058:1100:e" | tee /sys/module/usb_storage/parameters/quirks

Ce n’est pas le problème. @lejimi a très bien compris qu’il fallait exécuter cette commande avec les privilèges du superutilisateur puisqu’il a utilisé sudo, comme pour exécuter les commandes précédentes (fdisk, dmesg, mount). Le problème, c’est qu’il ne sait pas utiliser sudo.

Ça m’étonnerait que ça marche mieux. A nouveau, sudo s’applique à echo (qui n’en a pas besoin), pas à la redirection. Si je ne m’abuse, sudo devrait être après la redirection pour s’appliquer à tee.

En plus, tu as raison ; suis allé trop vite.

Soit :
sudo $(echo -n "1058:1100:e" | tee /sys/module/usb_storage/parameters/quirks)
Soit :
echo -n "1058:1100:e" | sudo tee /sys/module/usb_storage/parameters/quirks
La deuxième ayant aussi ma préférence. :stuck_out_tongue:

Euh, tu es sûr de cette commande ? Je ne vois pas comment elle pourrait fonctionner mais je l’ai quand même essayée, et sans surprise elle me renvoie ces deux erreurs :

tee: /sys/module/usb_storage/parameters/quirks: Permission non accordée
sudo: 1058:1100:e: command not found
1 J'aime

Sincèrement, j’aurais cru ! mais bon…

En fait je ne comprends même pas ce que tu as voulu faire avec cette formulation. Quelle était ton idée ?

J’ai dû mal raisonner - parfois, ça m’arrive - :
je me suis dit qu’en exécutant la commande dans un sous-shell exécuté avec les droits admin, ça devrait être bon ! :stuck_out_tongue:

Mais si ce qui suis répond correctement à la logique :

Pas besoin d’aller chercher compliqué ! :wink:

Et sudo nano /sys/module/usb_storage/parameters/quirks ? Puis tapage de la ligne. C’était pas carrément encore plus simple ?

pour écrire toto dans un fichier essai.txt en commande

 echo toto > essai.txt