Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
ddrescue [Le 29/03/2019, 20:09]
37.165.202.83 [ddrescue par des exemples]
ddrescue [Le 07/07/2019, 15:52] (Version actuelle)
L'Africain
Ligne 20: Ligne 20:
  
 Vérifiez que le disque sur lequel vous enregistrez le fichier cible et le fichier journal soit en bon état !  Vérifiez que le disque sur lequel vous enregistrez le fichier cible et le fichier journal soit en bon état ! 
- +<code bash>smartctl -a /​dev/​disque_recepteur</​code>​
-  ​smartctl -a /​dev/​disque_recepteur+
   ​   ​
 Vérifiez que l'​espace libre soit supérieur à la taille du périphérique à sauver ! Vérifiez que l'​espace libre soit supérieur à la taille du périphérique à sauver !
- +<code bash>df -h</​code>​
-  ​df -h+
   ​   ​
    
- Il est inutile de continuer à faire des tests automatiques de qualité sur le disque défectueux. La déactivation ​se fait par la commande: + Il est inutile de continuer à faire des tests automatiques de qualité sur le disque défectueux. La désactivation ​se fait par la commande: 
-  smartctl -o   ​off ​   /​dev/​disque_emetteur.+<code bash>smartctl -o   ​off ​   /​dev/​disque_emetteur.</​code>​
  
  
Ligne 43: Ligne 41:
 === Dans une instance "​live"​. === === Dans une instance "​live"​. ===
 En ligne de commande En ligne de commande
-<​code>​sudo add-apt-repository "deb http://​archive.ubuntu.com/​ubuntu $(lsb_release -sc) universe"​+<​code ​bash>sudo add-apt-repository "deb http://​archive.ubuntu.com/​ubuntu $(lsb_release -sc) universe"​
 sudo apt-get update sudo apt-get update
 sudo apt install gddrescue</​code>​ sudo apt install gddrescue</​code>​
Ligne 53: Ligne 51:
  
 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. 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.
- +<code bash>gsettings set org.gnome.desktop.media-handling automount false</​code>​
-  ​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. É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.
Ligne 63: Ligne 60:
 === ddrescueview === === 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. +Vous pouvez utiliser ​**[[apt>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 : **[[apt>​ddrescueview]]**. +
- +
-=== ddr_utils === +
- +
-Cette suite d'​utilitaires va vous permettre de connaître la liste des fichiers affectés par les secteurs défectueux. +
-<note help>Il serait bon d'en dire un peu plus ou de ne rien dire.....</​note>​ +
  
 =====Utilisation===== =====Utilisation=====
Ligne 83: Ligne 68:
 ====Fonctionnement de base==== ====Fonctionnement de base====
 L'​application est lancée depuis une [[console]] ou un [[terminal]] :​ L'​application est lancée depuis une [[console]] ou un [[terminal]] :​
- +<code bash>sudo ddrescue <​nom_fichier_source>​ <​nom_fichier_cible>​.img <​nom_fichier_journal></​code>
-  ​sudo ddrescue <​nom_fichier_source>​ <​nom_fichier_cible>​ <​nom_fichier_journal>​+
   ​   ​
 Avec:\\ Avec:\\
Ligne 92: Ligne 76:
  
 Pour obtenir une liste exhaustive des fonctions du logiciel, se reporter au site officiel ou à sa documentation:​ Pour obtenir une liste exhaustive des fonctions du logiciel, se reporter au site officiel ou à sa documentation:​
- +<code bash> ​man ddrescue</​code>​
-  ​man ddrescue+
 ou encore ou encore
-  ​info ddrescue+<code bash>info ddrescue</​code>​
  
   ​   ​
Ligne 101: Ligne 84:
  
 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. 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.
- +<code bash>sudo ddrescue <​nom_fichier_source>​ <​nom_fichier_cible>​.img <​chemin_fichier_log></​code>
-  ​sudo ddrescue <​nom_fichier_source>​ <​nom_fichier_cible>​ <​chemin_fichier_log>​+
   ​   ​
  ​Avec:​\\  ​Avec:​\\
Ligne 117: Ligne 99:
 === Option -n === === Option -n ===
  
- sudo ddrescue <​source>​ <​cible>​ <log> -n+<code bash>sudo ddrescue <​source>​ <​cible>​.img <log> -n</​code>​
  
 permet de s'​occuper en priorité des zones non endommagées et de revenir traiter celles-ci après. permet de s'​occuper en priorité des zones non endommagées et de revenir traiter celles-ci après.
Ligne 123: Ligne 105:
 === Option -T === === Option -T ===
  
- sudo ddrescue <​source>​ <​cible>​ <log> -T+<code bash>sudo ddrescue <​source>​ <​cible>​.img <log> -T</​code>​
  
 permet de reprendre une copie qui a été interrompue du fait de la disparition du matériel (déconnexion brutale, matériel instable qui "​disparaît"​). En fait, reprend toutes les zones qui n'ont pas encore été explorées. permet de reprendre une copie qui a été interrompue du fait de la disparition du matériel (déconnexion brutale, matériel instable qui "​disparaît"​). En fait, reprend toutes les zones qui n'ont pas encore été explorées.
Ligne 129: Ligne 111:
  
 === Option -r === === Option -r ===
- +<code bash>sudo ddrescue <​source>​ <​cible>​.img <log> -r1</​code>​
- sudo ddrescue <​source>​ <​cible>​ <log> -r1+
  
 Reprend la copie en se concentrant sur les zones considérées comme erronées en première lecture : le chiffre derrière r est un paramètre qui spécifie combien de tentative d'​accès doivent être effectuées à chaque erreur rencontrée. ​   ​ Reprend la copie en se concentrant sur les zones considérées comme erronées en première lecture : le chiffre derrière r est un paramètre qui spécifie combien de tentative d'​accès doivent être effectuées à chaque erreur rencontrée. ​   ​
Ligne 144: Ligne 125:
            
 ==== ddrescue par des exemples ==== ==== ddrescue par des exemples ====
-Ce sous-chapitre est écrit par un '​débutant'​ de ddrescue le 31/12/2015. Merci à ceux qui connaissent bien l'​outil de faire les corrections qu'ils jugeront nécessaire. ​ 
- 
 D'​abord,​ il faut déterminer si la  technique ​ "​sauvetage des partitions"​ est  possible. ​  Si oui, c'est la solution à privilégier car on peut fabriquer les partitions de duplication de taille identique sur d'​autres supports avec l'​application ​ [[:​gnome-disk-utility|Disques]] en fournissant la taille exacte de chaque partition en précisant que l'​unité est le **Kio**. Cela sous-entend que la commande " **sudo fdisk -l** " ​   a pu fonctionner. Il suffit de diviser par deux, le nombre de secteurs indiqués. D'​abord,​ il faut déterminer si la  technique ​ "​sauvetage des partitions"​ est  possible. ​  Si oui, c'est la solution à privilégier car on peut fabriquer les partitions de duplication de taille identique sur d'​autres supports avec l'​application ​ [[:​gnome-disk-utility|Disques]] en fournissant la taille exacte de chaque partition en précisant que l'​unité est le **Kio**. Cela sous-entend que la commande " **sudo fdisk -l** " ​   a pu fonctionner. Il suffit de diviser par deux, le nombre de secteurs indiqués.
 +
 +<note important>​Une bonne astuce est de commencer à écrire des zéros dans l'​espace destiné à recevoir la récupération. Cela permet de vérifier immédiatement que la zone de sortie ​ est saine. Cela évite d'​avoir à dérouler la procédure de mise à zéro  des zones qui n'ont pas pu être copiées.
 +La commande sera du style    <code bash>​sudo ​ dd  if=/​dev/​zero ​ of=/​dev/​Le_support_de_sortie bs=64k status=progress</​code>​ </​note>​
 + 
 +
 === Sauvegarde du disque interne "​sda"​ sur un disque externe "​sde"​ avec une liveusb__PERSISTANTE__ === === Sauvegarde du disque interne "​sda"​ sur un disque externe "​sde"​ avec une liveusb__PERSISTANTE__ ===
 La taille du secteur est de 512 bytes. La taille du secteur est de 512 bytes.
 == Faire la copie des secteurs de bonne qualité == == Faire la copie des secteurs de bonne qualité ==
-  - sudo mkdir /​home/​ubuntu/​dd +<code bash>sudo mkdir /​home/​ubuntu/​dd 
-  ​- ​sudo ddrescue ​            ​-f ​   -n        -b512        /​dev/​sda ​    /​dev/​sde ​  /​home/​ubuntu/​dd/​suivi +sudo ddrescue ​            ​-f ​   -n        -b512        /​dev/​sda ​    /​dev/​sde ​  /​home/​ubuntu/​dd/​suivi 
-  ​- ​sudo ddrescue ​            ​-f ​ -c1      -b512       /​dev/​sda ​    /​dev/​sde ​  /​home/​ubuntu/​dd/​suivi+sudo ddrescue ​            ​-f ​ -c1      -b512       /​dev/​sda ​    /​dev/​sde ​  /​home/​ubuntu/​dd/​suivi</​code>​
 ATTENTION ​ : Si la cible est un disque dur, toutes les données de ce disque dur (ici /dev/sde) seront écrasées donc perdues. Pour que ce ne soit pas le cas il faut que la cible soit un fichier par exemple /​dev/​sde/​chemin/​fichier_de_recup.img ATTENTION ​ : Si la cible est un disque dur, toutes les données de ce disque dur (ici /dev/sde) seront écrasées donc perdues. Pour que ce ne soit pas le cas il faut que la cible soit un fichier par exemple /​dev/​sde/​chemin/​fichier_de_recup.img
 == Faire la copie des secteurs endommagés == == Faire la copie des secteurs endommagés ==
-  - sudo ddrescue ​      ​-d ​ -f  -R  -r3   ​-b512 ​ -c1          /​dev/​sda ​   /​dev/​sde ​   /​home/​ubuntu/​dd/​suivi +<code bash>sudo ddrescue ​      ​-d ​ -f  -R  -r3   ​-b512 ​ -c1          /​dev/​sda ​   /​dev/​sde ​   /​home/​ubuntu/​dd/​suivi 
-  ​- ​sudo ddrescue ​      ​-d ​ -f  -R  -r27   ​-b512 ​ -c1          /​dev/​sda ​   /​dev/​sde ​   /​home/​ubuntu/​dd/​suivi+sudo ddrescue ​      ​-d ​ -f  -R  -r27   ​-b512 ​ -c1          /​dev/​sda ​   /​dev/​sde ​   /​home/​ubuntu/​dd/​suivi</​code>​
   ==Fabriquer les secteurs qui n'ont pas été copiés ==   ==Fabriquer les secteurs qui n'ont pas été copiés ==
 J'ai pensé à cette action afin de récupérer '​facilement'​ les fichiers qui sont en mauvais état suite à certains blocs manquants. C'est possible pas les outils de gestions des mauvais blocks ou la recherche dans les fichiers. J'ai pensé à cette action afin de récupérer '​facilement'​ les fichiers qui sont en mauvais état suite à certains blocs manquants. C'est possible pas les outils de gestions des mauvais blocks ou la recherche dans les fichiers.
-  - sudo -i +<code bash>sudo -i 
-  ​- ​ddrescuelog -l- -b512 /​home/​ubuntu/​dd/​suivi >/​home/​ubuntu/​dd/​badblocs +ddrescuelog -l- -b512 /​home/​ubuntu/​dd/​suivi >/​home/​ubuntu/​dd/​badblocs 
-  ​- ​echo "​SECTEUR ILLISIBLE On va marquer au fer rouge  tous ces secteurs faussement ​ défectueux ​ afin de rechercher dans les fichiers ceux qui sont impactés par SECTEUR ILLISIBLE"​ >/​home/​ubuntu/​dd/​marque +echo "​SECTEUR ILLISIBLE On va marquer au fer rouge  tous ces secteurs faussement ​ défectueux ​ afin de rechercher dans les fichiers ceux qui sont impactés par SECTEUR ILLISIBLE"​ >/​home/​ubuntu/​dd/​marque 
-  ​- ​sed '​s|^|sudo dd if=/​home/​ubuntu/​dd/​marque of=/dev/sde bs=512 count=1 seek=|'​ /​home/​ubuntu/​dd/​badblocs>/​home/​ubuntu/​dd/​ecrire +sed '​s|^|sudo dd if=/​home/​ubuntu/​dd/​marque of=/dev/sde bs=512 count=1 seek=|'​ /​home/​ubuntu/​dd/​badblocs>/​home/​ubuntu/​dd/​ecrire 
-  ​- ​pg /​home/​ubuntu/​dd/​ecrire +pg /​home/​ubuntu/​dd/​ecrire</​code>​ 
-  -  exécuter le contenu du fichier /​home/​ubuntu/​dd/​ecrire. Il est aussi possible de simplement y mettre des zéros avec cette commande: <​code>​ddrescue --fill-mode=- --force --synchronous /dev/zero /dev/sde /​home/​ubuntu/​dd/​suivi</​code>​+  -  exécuter le contenu du fichier /​home/​ubuntu/​dd/​ecrire. Il est aussi possible de simplement y mettre des zéros avec cette commande: <​code ​bash>​ddrescue --fill-mode=- --force --synchronous /dev/zero /dev/sde /​home/​ubuntu/​dd/​suivi</​code>​
   - exit   - exit
 === Sauvegarde d'une partition dans une partition avec un livecdrom === === Sauvegarde d'une partition dans une partition avec un livecdrom ===
Ligne 171: Ligne 155:
 Le disque externe a été formaté avec au moins deux partitions; ​ sde1 pour le suivi du processus (taille 1 Go) et sde2 pour recevoir la duplication (la taille étant au moins égale à sda6). Le disque externe a été formaté avec au moins deux partitions; ​ sde1 pour le suivi du processus (taille 1 Go) et sde2 pour recevoir la duplication (la taille étant au moins égale à sda6).
 == Faire la copie des secteurs de bonne qualité == == Faire la copie des secteurs de bonne qualité ==
-      - sudo mount /dev/sde1 /​media/​ubuntu +<code bash>sudo mount /dev/sde1 /​media/​ubuntu 
-      ​- ​sudo mkdir /​home/​ubuntu/​dd +sudo mkdir /​home/​ubuntu/​dd 
-      ​- ​sudo ddrescue -f -N -n        -b4096 -K524288 /dev/sda6 /dev/sde2 /​media/​ubuntu/​dd/​suivi6 +sudo ddrescue -f -N -n        -b4096 -K524288 /dev/sda6 /dev/sde2 /​media/​ubuntu/​dd/​suivi6 
-      ​- ​sudo ddrescue -f -c1  -b4096 ​ /dev/sda6 /​media/​ubuntu/​dd/​suivi6+sudo ddrescue -f -c1  -b4096 ​ /dev/sda6 /​media/​ubuntu/​dd/​suivi6</​code>​
 == Faire la copie des secteurs endommagés == == Faire la copie des secteurs endommagés ==
-      - sudo ddrescue -d -f -R -r27 -b4096 -c1 /dev/sda6 /dev/sde2 /​media/​ubuntu/​dd/​suivi6+<code bash>sudo ddrescue -d -f -R -r27 -b4096 -c1 /dev/sda6 /dev/sde2 /​media/​ubuntu/​dd/​suivi6</​code>​
 == Fabriquer les secteurs qui n'ont pas été copiés == == Fabriquer les secteurs qui n'ont pas été copiés ==
 J'ai pensé à cette action afin de récupérer '​facilement'​ les fichiers qui sont en mauvais état suite à certains blocs manquants. C'est possible pas les outils de gestions des mauvais blocks ou la recherche dans les fichiers. J'ai pensé à cette action afin de récupérer '​facilement'​ les fichiers qui sont en mauvais état suite à certains blocs manquants. C'est possible pas les outils de gestions des mauvais blocks ou la recherche dans les fichiers.
-      - sudo -i +<code bash>sudo -i 
-      ​- ​ddrescuelog -l- -b4096 /​media/​ubuntu/​dd/​suivi6 >/​media/​ubuntu/​dd/​badblocs +ddrescuelog -l- -b4096 /​media/​ubuntu/​dd/​suivi6 >/​media/​ubuntu/​dd/​badblocs 
-      ​- ​echo "​SECTEUR ILLISIBLE On va marquer au fer rouge tous ces secteurs faussement défectueux afin de rechercher dans les fichiers ceux qui sont impactés par SECTEUR ILLISIBLE"​ >/​media/​ubuntu/​dd/​marque + echo "​SECTEUR ILLISIBLE On va marquer au fer rouge tous ces secteurs faussement défectueux afin de rechercher dans les fichiers ceux qui sont impactés par SECTEUR ILLISIBLE"​ >/​media/​ubuntu/​dd/​marque 
-      ​- ​sed '​s|^|sudo dd if=/​media/​ubuntu/​dd/​marque of=/​dev/​sde2 bs=4096 count=1 seek=|'​ /​media/​ubuntu/​dd/​badblocs>/​media/​ubuntu/​dd/​ecrire + sed '​s|^|sudo dd if=/​media/​ubuntu/​dd/​marque of=/​dev/​sde2 bs=4096 count=1 seek=|'​ /​media/​ubuntu/​dd/​badblocs>/​media/​ubuntu/​dd/​ecrire 
-      ​- ​pg /​media/​ubuntu/​dd/​ecrire+pg /​media/​ubuntu/​dd/​ecrire</​code>​
       - exécuter le contenu du fichier /​media/​ubuntu/​dd/​ecrire. Il est aussi possible de simplement y mettre des zéros avec cette commande: <​code>​ddrescue --fill-mode=- --force --synchronous /dev/zero /dev/sde2 /​media/​ubuntu/​dd/​suivi6</​code>​       - exécuter le contenu du fichier /​media/​ubuntu/​dd/​ecrire. Il est aussi possible de simplement y mettre des zéros avec cette commande: <​code>​ddrescue --fill-mode=- --force --synchronous /dev/zero /dev/sde2 /​media/​ubuntu/​dd/​suivi6</​code>​
       - exit       - exit
  
-=== Copier dans un fichier=== +=== Copier dans un fichier === 
-sudo ddrescue ​ -b 512  --sparse ​  ​--log-rates=/​mnt/​rescueRate.log ​     /​dev/​disk/​by-id/​ata-MAXTOR_STM3160215A_9RA8V0BK-part1 ​      /​mnt/​disk.img ​         /​mnt/​rescue.map+<code bash>sudo ddrescue ​ -b 512  --sparse ​  ​--log-rates=/​mnt/​rescueRate.log ​     /​dev/​disk/​by-id/​ata-MAXTOR_STM3160215A_9RA8V0BK-part1 ​      /​mnt/​disk.img ​         /​mnt/​rescue.map</​code>​
 ===== Remarques concernant le forçage en écriture des secteurs qui n'ont pas pu être copiés. ===== ===== Remarques concernant le forçage en écriture des secteurs qui n'ont pas pu être copiés. =====
 Ces secteurs du  support de sortie contiennent donc des informations sans rapport avec le support d'​entrée. Ces secteurs du  support de sortie contiennent donc des informations sans rapport avec le support d'​entrée.
Ligne 199: Ligne 183:
 Pour une musique, les experts pourraient entendre une fausse note. Pour une musique, les experts pourraient entendre une fausse note.
  
-Pour un document du style word,   on pourra s'​apercevoir que 512 octets ne sont pas dans la même langue ​ ou qu'ils sont sans rapport avec l'​histoire racontée.+Pour un document du style writer,   on pourra s'​apercevoir que 512 octets ne sont pas dans la même langue ​ ou qu'ils sont sans rapport avec l'​histoire racontée.
  
-Pour un document du style  ​excel, il va être plus difficile de s'​apercevoir que les chiffres ne sont pas valables. Si par malheur cela concerne le tableau final.......+Pour un document du style  ​calc, il va être plus difficile de s'​apercevoir que les chiffres ne sont pas valables. Si par malheur cela concerne le tableau final.......
  
 Pour toutes ses raisons, il est tentant de mettre des données fictives (des zéros ou autre chose) dans ces secteurs. Cependant c'est à double tranchant pour les logiciels car ceux-ci pourraient ne plus lire le fichier abîmé. __Il faudrait alors utiliser la version moins un du fichier ​ qui est très certainement inexistante. ​ Pour toutes ses raisons, il est tentant de mettre des données fictives (des zéros ou autre chose) dans ces secteurs. Cependant c'est à double tranchant pour les logiciels car ceux-ci pourraient ne plus lire le fichier abîmé. __Il faudrait alors utiliser la version moins un du fichier ​ qui est très certainement inexistante. ​
Ligne 246: Ligne 230:
   * [[mount]] et [[umount]] pour accéder au contenu des partitions ;   * [[mount]] et [[umount]] pour accéder au contenu des partitions ;
   * [[convmv]] pour convertir les noms de fichiers en UTF8 ;   * [[convmv]] pour convertir les noms de fichiers en UTF8 ;
 +=====Restaurer une sauvegarde d'un disque==== 
 +Pour restaurer une sauvegarde effectuée par ddrescue, soit vous utilisez la commande [[dd]] soit cette commande ddrescue: 
 +<code bash>​sudo ddrescue -f <​nom_de_votre_fichier_de_sauv>​.img /dev/sdx restore.logfile</​code>​ 
 +modifier sdx par le disque sur lequel vous souhaitez restaurer l'​image de sauvegarde.
  
 ===== Désinstallation ===== ===== Désinstallation =====
  • ddrescue.1553886555.txt.gz
  • Dernière modification: Le 29/03/2019, 20:09
  • par 37.165.202.83