Récupération de données
Un article de Gentoo Linux Wiki.
Cet article est une ébauche. Vous pouvez l'aider à s'enrichir en le complétant.
Sommaire |
[modifier] Introduction
Cet article présente différentes solutions pour récupérer des données perdues.
[modifier] Récupération sur disque défectueux
Si vous possédez un disque dur comportant des zones défectueuses voici quelques solutions pour vous :
[modifier] En utilisant dd
L'outil dd est fourni par sys-apps/coreutils.
Lancez :
dd if=/dev/ancien_disque of=/dev/nouveau_disque conv=noerror,sync
ou créez un fichier image:
dd if=/dev/ancien_disque of=fichier_image conv=noerror
pour copier les données.
Pour accélérer le processus, vous pouvez ajouter bs=8k, cela permettra de lire/écrire sur le disque dur par blocs de 16 secteurs.
[modifier] DDRescue
DDRescue est une version modifiée de DD permettant la récupération automatique du disque et de façon optimale (le plus de zone défectueuse possible).
Installez dd-rescue :
emerge dd-rescue
Puis lancez :
dd_rescue -l /var/log/dd_rescue.log /dev/disque_source /dev/disque_destination
l'option -l (log) vous permet non seulement d'avoir le suivi de l'état du transfert mais en plus il permet à dd_rescue de reprendre où il en était en cas de coupure.
[modifier] Récupération de partition défectueuse
[modifier] ext2/ext3
[modifier] méthode simple
unmount /point_de_montage_de_la_partition fsck /dev/partition
[modifier] reiserfs
Installez reiserfsprogs :
emerge reiserfsprogs
[modifier] méthode simple
umount /point_de_montage_de_la_partition reiserfsck /dev/partition
[modifier] méthode complexe
Récupérez la taille des blocks de la partition
localhost ~ #debugreiserfs /dev/partition
debugreiserfs 3.6.19 (2003 www.namesys.com)
Filesystem state: consistency is not checked after last mounting
Reiserfs super block in block 16 on 0x301 of format 3.6 with standard journal
Count of blocks on the device: 14645232
Number of bitmaps: 447
Blocksize: 4096
Free blocks (count of blocks - used [journal, bitmaps, data, reserved] blocks): 0
Root block: 11141796
Filesystem is NOT clean
Tree height: 5
Hash function used to sort names: "r5"
Objectid map size 122, max 972
Journal parameters:
Device [0x0]
Magic [0x4c9a41ef]
Size 8193 blocks (including 1 for journal header) (first block 18)
Max transaction length 1024 blocks
Max batch size 900 blocks
Max commit age 30
Blocks reserved by journal: 0
Fs state field: 0x0:
sb_version: 2
inode generation number: 10535973
UUID: e04cd40f-e313-42db-af1b-4af97c56edd3
LABEL:
Set flags in SB:
ATTRIBUTES CLEAN
Récupérez la taille des blocks (Blocksize).
Récupérez l'ensemble des blocks défectueux et remplacez 4096 par la valeur de votre Blocksize
badblocks -b 4096 /dev/partition >$HOME/badblocks_partition.list
Démarrez ensuite une vérification compléte de la partition
reiserfsck --rebuild-tree --scan-whole-partition --badblocks $HOME/badblocks_partition.list /dev/partition
Si le scan s'arréte en signalant un block défectueux ajoutez-le à la liste $HOME/badblocks_partition.list et relancez la commande ci-dessus.
[modifier] Suppression de données malencontreuse
En cas de suppression malencontreuse des données il ne faut surtout pas écrire sur la partition. Démontez la partition
umount /dev/partition
Si c'est la partition système arrêtez tout de suite le système.
[modifier] TestDisk
TestDisk est un logiciel tres simple d'utilisation ayant pour but de récuperer des partitions supprimées par mégarde ou de rendre celles ci à nouveau bootables après un accident, le plus courant étant la suppression/réecriture accidentelle de la table de partitions par un programme.
A noter qu'entres autres systèmes TestDisk tourne sur FreeBSD, NetBSD ainsi que OpenBSD, son utilisation est donc possible avec Gentoo/BSD.
TestDisk est capable de réparer la table des partitions pour les systèmes de fichiers suivants :
- BeFS ( BeOS )
- BSD disklabel ( FreeBSD/OpenBSD/NetBSD )
- CramFS, Compressed File System
- DOS/Windows FAT12, FAT16 and FAT32
- HFS and HFS+, Hierarchical File System
- JFS, IBM's Journaled File System
- Linux Ext2 and Ext3
- Linux Raid
- RAID 1: mirroring
- RAID 4: striped array with parity device
- RAID 5: striped array with distributed parity information
- RAID 6: striped array with distributed dual redundancy information
- Linux Swap (versions 1 and 2)
- LVM and LVM2, Linux Logical Volume Manager
- Mac partition map
- Novell Storage Services NSS
- NTFS ( Windows NT/2K/XP/2003/Vista )
- ReiserFS 3.5, 3.6 and 4
- Sun Solaris i386 disklabel
- Unix File System UFS and UFS2 (Sun/BSD/...)
- XFS, SGI's Journaled File System
[modifier] Installation
emerge app-admin/testdisk
testdisk
Ensuite laissez vous guider, cela sera l'affaire de quelques clics.
[modifier] PhotoRec
Livré avec TestDisk, PhotoRec permet de récuperer des fichiers effacés sur quasiment tous les types de partitions à l'exception notable de ReiserFS en raison de certaines de ses caractéristiques qui compliquent grandement la tâche (b*tree leaf nodes).
Contrairement à ce que son nom pourrait faire croire PhotoRec permet de récuperer de nombreux types de fichiers dont la liste complète est disponible ici : [1]
[modifier] Installation
emerge app-admin/testdisk
photorec
Son utilisation est la même que TestDisk, une fois lancé il vous sera présenté une interface très aisé d'utilisation, le programme vous demanderas où vous désirez sauvegarder les fichiers récupérés et commenceras immediatement la recherche. A noter que pour diminuer le temps de recherche des fichiers effacés vous pouvez choisir d'exclure certains types de fichiers dans le menu "File Opt".
[modifier] R.I.P.
R.I.P. pour Recovery Is Possible ou encore la récupération est possible est une distribution live permettant de récupérer des données supprimées ou défectueuses sur des partitions de type fat, fat32, ext2 et ext3. Rip posséde une interface graphique facilitant l'utilisation Télécharger RIP
