{{tag>récupérer système sauvegarde}}
----
====== ddrescue ======
**GNU ddrescue** (abrégé ici en ddrescue) est un outil de récupération de données sous licence GNU GPL.
ddrescue copie les données d'un fichier ou disque (disque dur, SSD, CD-ROM, etc.) vers un autre. À la différence de [[dd]] qui lit les données séquentiellement, **ddrescue saute les zones endommagées** dont la lecture est lente afin de récupérer rapidement un maximum de données. **Il revient ensuite récupérer** ce qui peut l'être dans les **zones endommagées**. Il est donc **particulièrement adapté pour sauvegarder un disque dur en fin de vie**, qui peut cesser de fonctionner avant la fin de la récupération.
ddrescue dispose notamment une **intéressante fonction de "fusion" **qui permet d'obtenir **une copie saine** d'un disque ou fichier **à partir de plusieurs copies endommagées** dudit disque ou fichier.
Son interface en ligne de commande et ses nombreuses options en font un outil à destination des utilisateurs avertis.
===== Préparation du système =====
==== Préparation du matériel ====
Vérifiez votre matériel. Un disque est parfois endommagé à cause d'un contrôleur de disque défectueux, vous risquez d'aggraver la situation en continuant à l'utiliser pour la récupération. De la mémoire vive défectueuse peut avoir endommagé les données du disque à sauvegarder puis corrompre des données encore valides qui seront copiées sur le nouveau disque.
Vérifiez que le disque sur lequel vous enregistrez le fichier cible et le fichier journal soit en bon état !
smartctl -a /dev/partition
Vérifiez que l'espace libre soit supérieur à la taille du périphérique à sauver !
df -h
==== Installation de ddrescue ====
Pour installer ce logiciel, il suffit d'[[:tutoriel:comment_installer_un_paquet#paquet_present_dans_les_depots|installer le paquet]] **[[apt://gddrescue|gddrescue]]** présent dans le dépôt Ubuntu Universe.
ou de frapper la commande **ddrescue** (version 16.04.0)
Il existe un paquet nommé ''ddrescue'' **qu'il ne faut pas installer**. Le paquet ''ddrescue'' contient un logiciel nommé //dd_rescue//, plus ancien que celui présenté ici.
**__[EDIT UBUNTU 15.04 du 17.05.2015]__** \\ Le paquet n'est plus présent dans les dépôts.
**__[EDIT UBUNTU 15.04 du 17.05.2015]__** \\ Il existe le paquet gddrescue et le paquet gddrescue:i386 dans les dépôts.
**__[EDIT UBUNTU 15.04 du 26.07.2015]__**\\ Le paquet gddrescue est présent dans le dépôt Universe. Mais ce dépôt n'est pas positionné par défaut dans "logiciels & mises à jour".
==== Configuration du système ====
Désactivez le //montage// automatique des partitions, afin d'éviter que le système n'essaye de réparer une partition endommagée, risquant ainsi de l'endommager encore plus.
gsettings set org.gnome.desktop.media-handling automount false
Évitez d'utiliser une partition NTFS pour accueillir une image disque de taille importante (plus de quelques Go). Plusieurs personnes ont rapporté que la récupération ralentit au fur et à mesure de la récupération, à telle point qu'il est impossible de finir la récupération.
==== Installation des utilitaires associés ====
=== ddrescueview ===
Vous pouvez utiliser //ddrescueview// pour suivre l'avancement de la sauvegarde de façon graphique. Le résultat est présenté sous la forme d'une grille de couleur à la manière des outils de défragmentation sous Windows.
Il n'existe pas de paquet pour ce logiciel. Vous pouvez le télécharger depuis http://sourceforge.net/projects/ddrescueview/. Une fois décompressé, activez les droits d'exécution (clic droit, Propriétés, Permissions, cocher la case Exécution), lancez le logiciel (double-clic). Lancez la sauvegarde en ligne de commande avec //ddrescue// puis ouvrez le journal ainsi créé avec //ddrescueview// et activez la relecture automatique du journal (Options, Automatic updates, 30 sec).
Dans ce contexte, le fichier de suivi de ddrescue doit avoir une terminaison .log
Sur Ubuntu 16.04 le paquet existe, tapez simplement
sudo apt-get install ddrescueview
=== ddr_utils ===
Cette suite d'utilitaires va vous permettre de connaître la liste des fichiers affectés par les secteurs défectueux.
Il serait bon d'en dire un peu plus ou de ne rien dire.....
=====Utilisation=====
====Fonctionnement de base====
L'application est lancée depuis une [[console]] ou un [[terminal]] :
sudo ddrescue
Avec:\\
'''' = le nom du fichier ou du périphérique à tenter de sauver, par exemple machin.ext, /media/disk, /dev/sda, etc. (Pour un CD ou un DVD, rentrer le chemin du périphérique, par exemple /dev/dvd ). N'essayez pas de monter le disque endommagé ! Pour connaître le nom du périphérique, vous pouvez utiliser la commande ''dmesg | tail'' lorsque vous le branchez. \\
'''' = le nom du fichier où sauver le résultat. Si le nom du fichier n'est pas spécifié et que le fichier cible est simplement un disque dur ou une partition, le contenu sera écrasé par la sauvegarde. \\
'''' = le nom du fichier de log comportant la liste des secteurs récupérés et de ceux à relire. Très fortement recommandé, voir ci-dessous.
Pour obtenir une liste exhaustives des fonctions du logiciel se reporter au site officiel ou à sa documentation:
man ddrescue
ou encore
info ddrescue
====Utiliser un fichier log====
Il est vivement conseillé d'utiliser un fichier de log, soit pour pouvoir l'exploiter ultérieurement et analyser l'état matériel du disque, soit pour pouvoir interrompre puis reprendre une récupération.
sudo ddrescue
Avec:\\
= chemin absolu ou relatif vers l'endroit où vous désirez enregistrer le log. Attention, il peut atteindre une taille conséquente pour une récup d'un support très endommagé.
====Support endommagé====
Si vous savez que votre support est fortement endommagé, considérez avant tout l'option de faire appel à un professionnel. Le taux de réussite d'une récupération sur support très malade est très supérieur lors de la première tentative. Si vous avez des données vitales, réfléchissez à deux fois avant de vouloir agir seul.
ddrescue intègre un certain nombre d'options intéressantes pour traiter des cas de supports partiellement endommagés, dont "l'état de santé est stable". Les principales sont citées ci-dessous, mais il y en a d'autres à envisager, consultez le man avant d'agir :
=== Option -n ===
sudo ddrescue