URL: https://linuxfr.org/forums/general-general/posts/disque-dur-endommage Title: Disque dur endommagé Authors: Aluminium95 Date: 2013年08月03日T12:17:51+02:00 License: CC By-SA Tags: ubuntu Score: 4 Bonjour, Je suis possesseur d'un disque dur externe Western DigitalTM 2.5 pouces portable USB de 1Tio formaté en NTFS. Malheureusement, après 2 ans de bons et loyaux services, il est soudainement non reconnu, que ce soit par 2 linux, un mac ou un windows xp ... J'ai d'abord pensé à un problème au niveau de l'USB et démonté le disque dur, mais il n'y a pas de connectique SATA ... l'usb B est intégré dans la carte du disque dur (c'est un WD passport). Après quelques recherches il se trouve que le périphérique n'apparaît même pas en tant que `/dev/sdX`, et pourtant un `lsusb` me le montre bien ! Un petit `dmesg` me montre des erreurs, et c'est seulement au bout de quelques minutes que le fichier `/dev/sdb` est finalement crée ... Je voudrais vraiment récupérer les données (environ 600 Gio) qui sont sur le disque dur. Des recherches m'ont orienté vers TestDisk et `ddrescue`, mais malheureusement TestDisk ne trouve pas `/dev/sdb`, étant donné qu'il ne peut trouver que ce qui est montable. Je n'ai pas encore testé `ddrescue`. J'ai trouvé sur un forum ubuntu un post dans lequel la solution était de modifier manuellement les 512 premiers octets et modifier à la main, puis les réinjecter avec `dd` ... J'ai tapé certaines commandes classiques pour essayer de trouver le problème ... Mais je suis un peu perdu ... # Commandes ## lsusb ``` Bus 002 Device 003: ID 1058:1042 Western Digital Technologies, Inc ``` ## dmesg ``` [ 1525.730047] usb 2-4: new high-speed USB device number 3 using ehci-pci [ 1525.986305] usb-storage 2-4:1.0: USB Mass Storage device detected [ 1525.986412] scsi2 : usb-storage 2-4:1.0 [ 1525.987014] usbcore: registered new interface driver usb-storage [ 1526.990821] scsi 2:0:0:0: Direct-Access WD Elements 1042 1007 PQ: 0 ANSI: 6 [ 1526.995518] sd 2:0:0:0: [sdb] Spinning up disk... [ 1528.000018] ..................................... .................................................... ...........not responding... [ 1639.725959] sd 2:0:0:0: [sdb] READ CAPACITY failed [ 1639.725970] sd 2:0:0:0: [sdb] [ 1639.725975] Result: hostbyte=0x00 driverbyte=0x08 [ 1639.725980] sd 2:0:0:0: [sdb] [ 1639.725983] Sense Key : 0x2 [current] [ 1639.725991] sd 2:0:0:0: [sdb] [ 1639.725994] ASC=0x4 ASCQ=0x1 [ 1819.731477] sd 2:0:0:0: timing out command, waited 180s [ 1819.731535] sd 2:0:0:0: [sdb] Test WP failed, assume Write Enabled [ 1999.734769] sd 2:0:0:0: timing out command, waited 180s [ 1999.734824] sd 2:0:0:0: [sdb] Asking for cache data failed [ 1999.734833] sd 2:0:0:0: [sdb] Assuming drive cache: write through [ 1999.743287] sd 2:0:0:0: [sdb] Unit Not Ready [ 1999.743296] sd 2:0:0:0: [sdb] [ 1999.743300] Sense Key : 0x4 [current] [ 1999.743308] sd 2:0:0:0: [sdb] [ 1999.743312] ASC=0x44 ASCQ=0x0 [ 2029.748158] sd 2:0:0:0: timing out command, waited 30s [ 2160.513194] INFO: task systemd-udevd:13906 blocked for more than 120 seconds. ``` ## mount -t ntfs /dev/sdb ``` Failed to read bootsector (size=0) Failed to mount '/dev/sdb': Argument invalide The device '/dev/sdb' doesn't seem to have a valid NTFS. Maybe the wrong device is used? Or the whole disk instead of a partition (e.g. /dev/sda, not /dev/sda1)? Or the other way around ? ``` # EDIT 1 J'ai essayé `ddrescue` et `dd` qui donnent les résultats suivants (alarmants) ## sudo dd if=/dev/sdb of=passport.img conv=noerror,sync ``` 0+0 enregistrements lus 0+0 enregistrements écrits 0 octet (0 B) copié, 0,00386201 s, 0,0 kB/s ``` ## sudo ddrescue /dev/sdb passport.img passport.log -n -t ``` GNU ddrescue 1.17 Press Ctrl-C to interrupt Initial status (read from logfile) rescued: 0 B, errsize: 0 B, errors: 0 Current status rescued: 0 B, errsize: 0 B, current rate: 0 B/s ipos: 0 B, errors: 0, average rate: 0 B/s opos: 0 B, time since last successful read: 1 s Finished ```