web-dev-qa-db-fra.com

Erreur de fichier de lecteur Mac monté

J'ai accidentellement tué mon MacBook par des dégâts d'eau, et maintenant je dois principalement extraire mes images.

J'ai monté le lecteur (format HFS +) sur mon PC fixe à l'aide du Gestionnaire de périphériques de stockage.

Je suis capable de parcourir le lecteur et de copier les images de certains répertoires dans le dossier Picures du lecteur mac, mais pour d'autres répertoires, par exemple celui-ci contenant trois images, je reçois le suivi lors de l'exécution de ls -l

ls: cannot access DSC00001.JPG: Input/output error
ls: cannot access DSC00002.JPG: Input/output error
ls: cannot access DSC00003.JPG: Input/output error
ls: reading directory .: Input/output error
total 3
drwxrwxrwx 1 501 dialout   1957 2011-12-11 18:22 ./
drwx------ 1 501 dialout     82 2012-01-18 20:51 ../
-????????? ? ?   ?            ?                ? DSC00001.JPG
-????????? ? ?   ?            ?                ? DSC00002.JPG
-????????? ? ?   ?            ?                ? DSC00003.JPG

... alors ... ces fichiers sont-ils tous grillés, ou est-ce que je peux faire quelque chose?

PDATE: J'ai essayé d'utiliser ddrescue sur un fichier, mais j'ai également obtenu une erreur d'entrée/sortie.

4
Theodor

Tout d'abord, je vous suggère fortement d'essayer de faire une copie complète de l'image du lecteur endommagé. Vous aurez besoin d'un disque dur au moins aussi grand que la partition que vous essayez de récupérer. En supposant que la partition de ce lecteur est répertoriée dans/dev en tant que/dev/sda2, vous monteriez le lecteur de sauvegarde dans (par exemple)/mnt/restore

De là, vous utiliseriez la commande: dd bs=4096 if=/dev/sda2 of=/mnt/restore/sda2.img conv=noerror,sync

Cela crée une image du disque dur, y compris ses `` mauvais '' blocs (le cas échéant, car il y en a.)

Ensuite, déconnectez le lecteur; un lecteur endommagé ne fait qu'empirer lorsqu'il est utilisé.

Ensuite, vous devrez installer testdisk:

Sudo apt-get install testdisk

Acceptez sa demande de sources non fiables (si vous êtes si enclin.)

Enfin, lancez le test

À partir d'ici, vous devrez utiliser testdisk pour rechercher et récupérer des fichiers:

testdisk /mnt/restore/sda2.img

Le menu est assez explicite, mais l'utilisation du disque de test dépasse probablement le cadre de cette "réponse". Voici un bon endroit pour commencer:

http://www.cgsecurity.org/wiki/TestDisk_Step_By_Step

http://www.howtoforge.com/data_recovery_with_testdisk

Ceux-ci devraient vous aider à récupérer vos fichiers et n'endommageront pas votre disque dur plus que nécessaire. Une fois que vous avez effectué autant de récupération que possible à partir du fichier image, vous pouvez le supprimer en toute sécurité. Vous pouvez alors essayer d'exécuter directement le disque de test sur le lecteur endommagé et essayer de récupérer uniquement les fichiers qui manquent absolument.

Bonne chance à vous.

6
Stephan

ddresucue n'est pas quelque chose que vous utilisez pour lire des fichiers individuels, il est préférable de l'utiliser pour copier le disque entier (ainsi les parties lisibles) sur un disque de travail. Ensuite, vous pouvez essayer de le réparer, ou creuser et extraire des fichiers, sans vous soucier que le lecteur est sur le point de mourir.

1
tumbleweed

Vous voudrez peut-être vous assurer que le package hfsplus est installé: Sudo apt-get install hfsplus

Cependant, si vous arrivez à ce point, je suis sûr que vous l'avez déjà fait. Ce qui se passe généralement dans ces scénarios, c'est que le disque dur tombe en panne à ce stade. Vous voudrez peut-être vérifier dmesg | grep -i "I/O error" pour toute sortie. Toute sortie là-bas serait presque un échec de disque. De plus, si vous voulez plus de preuves, vous pouvez ouvrir le lecteur dans "Utilitaire de disque" et cliquer sur le bouton "Smart Data". Vérifiez votre "Nombre de secteurs réaffectés" et "Taux d'erreur de recherche". Ou vous pouvez simplement rechercher des points rouges.

Faites-moi savoir si cela ne permet pas de résoudre votre problème.

PS: Avez-vous laissé le disque sécher complètement?

1
Chuck R