J'ai un disque dur partiellement corrompu qui ne peut pas être réparé par Utilitaire de disque, mais qui peut être monté en lecture seule, rendant ainsi les données accessibles.
J'essaie de copier tout le contenu récupérable sur un disque dur de secours, mais chaque méthode que j'essaye échoue lorsqu'une erreur est rencontrée - laissant les fichiers restants non copiés.
Finder - échoue. SuperDuper - échoue. Idem (commande du terminal) - échec.
J'espérais que Ditto ferait l'affaire, la page de manuel de Ditto dit:
idem renvoie 0 si tout est copié, sinon non nul. idem n'abandonne presque jamais, préférant signaler des erreurs en cours de route. Les messages de diagnostic seront imprimés avec l'erreur standard.
J'ai soumis un bogue à Apple, tout comme je ne le fais pas comme annoncé.
D'autres idées?
--ignore-errors
réponses ci-dessous.Réponses:
Je l'utilise
cp -Rfv sourcefile destinationfile
avec succès assez régulièrement.cp = copier
R = maintient les hiérarchies de fichiers
f = si un fichier de destination existant ne peut pas être ouvert, supprimez-le et réessayez
v = mode commenté, affiche les fichiers transférés au fur et à mesure de leur progression
sourcefile = données que vous souhaitez copier
destinationfile = répertoire / lecteur sur lequel vous souhaitez copier
la source
cp
manuel BSD (macOS): "En mode -R, cp continuera à copier même si des erreurs sont détectées."2> error.log
Essayez Gnu ddrescue - c'est un programme de récupération de données qui effectue une copie basée sur des blocs avec une récupération de données corrompue pendant les opérations de copie. Vous pouvez l'obtenir pour OS X si vous utilisez Homebrew en tapant dans une fenêtre de terminal:
Un guide sur arstechnica explique comment récupérer un disque en panne à l'aide de ddrescue. Assurez-vous de lire le guide, car il contient des informations utiles. Voici un résumé sur la façon d’y arriver.
Localisez le lecteur avec
diskutil list
. La colonne identifiant correspond à ce que vous recherchez:Démontez le disque en question:
Lancer une opération de sauvetage du disque dans une image. Assurez-vous que l'emplacement de
Rescue.dmg
est remplacé par l'emplacement souhaité.Récupérez l'image sur un nouveau lecteur:
Nous vous conseillons de lire également le manuel de ddrescue pour vous renseigner sur les options disponibles en exécutant
man ddrescue
.la source
J'aime utiliser
rsync
pour copier des fichiers d'une source corrompue vers une destination fonctionnelle:Où:
-a
= "mode archive" = revient dans les répertoires, copie les liens symboliques en tant que liens symboliques, préserve les autorisations, les temps, les groupes et les fichiers spéciaux, conserve également le propriétaire (lorsque propriétaire = racine) et les périphériques (lorsque propriétaire = racine)-u
= ignore le fichier dans le source si la copie correspondante dans la destination est plus récente-v
= sortie verbeuse--delete
= les fichiers dans la destination qui n'existent pas sur la source seront supprimés--ignore-errors
= supprime un fichier / répertoire en cas d'erreur d'E / S lors de la copiela source
Cette astuce Macworld suggère d’utiliser dd pour effectuer une copie détaillée (en ignorant les erreurs), puis de monter l’image obtenue dans le Finder pour récupérer vos fichiers. Je n'ai pas essayé, mais il semble que cela pourrait fonctionner.
la source
Vous pouvez envisager d'utiliser la
dd
commande pour effectuer une copie bloc par bloc à partir de votre disque dur corrompu sur votre nouveau disque dur.En supposant que votre nouveau disque dur (
/dev/disk2
) soit de taille égale ou supérieure à celle de votre disque dur corrompu (/dev/disk1
), vous pouvez alors émettre:blocksized @ 4k, ne tronque aucun bloc de données, ignore toutes les erreurs
Pour trouver les noms de périphériques, lancez
mount
d’abord le Terminal.la source
La
ditto
commande devrait fonctionner, je l’utiliseraisditto
en conjonction avec l’-v
option pour verbose afin que vous puissiez voir exactement ce qui vous donne une erreur de ce qu’elle copie.la source
ditto
ne fonctionne pas. Pourquoi pensez-vous que c'est le cas?ditto
Vous pouvez essayer d'exécuter SuperDuper en ignorant les fichiers contenant des erreurs io, s'il ne s'agit que de quelques fichiers et que vous utilisez la fonctionnalité de mise à jour intelligente qui constitue un moyen très efficace de récupérer la plupart des données. (Je pense que la commande dd serait préférable si vous pouvez le faire).
Pas:
la source
Si votre lecteur est toujours accessible et que vous pouvez voir la hiérarchie des fichiers, mais que le processus de copie s’arrête en raison d’erreurs, vous pouvez utiliser le
Unstoppable Copier
programme.http://www.roadkil.net/program.php?ProgramID=29
la source