tuto:linux:photorec
Photorec
Photorec permet de récupérer des données effacées sur un disque dur.
Démarrer sur un live-cd, par exemple ubuntu.
Photorec fait parti du paquet testdisk.
Installer le paquet testdisk.
aptitude install testdisk photorec
Tous les fichiers arrivent en vrac dans un répertoire.
Voici un script que j'ai réalisé pour les classer par extension :
#!/bin/bash function copy_check_file_exist() { f=`echo "$line" | awk -F"/" '{ print $NF }'` if [ -e "${2}/$f" ] ; then rand=`head -c4 /dev/urandom | od -x | head -1 | awk '{ print "g"$2 $3 }'` #echo "$2/$f deja present" echo "Fichier deja present ! Renommage de $f en ${rand}.$3" copy_check_file_exist "$1" "${2}/${rand}.$3" "$3" else echo "Copie de $1 vers $2 en cours ..." cp "$1" "$2" if [ "$?" -ne 0 ] ; then echo "$1" >> erreur.txt fi fi } out="sav_tri" if [ ! -e collecte_tous_les_fichiers.txt ] ; then find SAV -type f -print0 | xargs -0 ls -l | awk '{ print $5"::"$8 }' > collecte_tous_les_fichiers.txt fi for line in `cat collecte_tous_les_fichiers.txt` do ext=`echo "$line" | awk -F\. '{ print $NF }'` file=`echo "$line" | awk -F"::" '{ print $2 }'` size=`echo "$line" | awk -F"::" '{ print $1 }'` for check_ext in `echo gif jpg jpeg png doc dbx mp3 wma wav mpeg avi mpg` do if [ "$ext" = "$check_ext" ] ; then if [ "$size" -lt 50000 ] ; then if [ ! -e "${out}/${check_ext}/inf50K" ] ; then mkdir -p "${out}/${check_ext}/inf50K" fi copy_check_file_exist "$file" "${out}/${check_ext}/inf50K" "$ext" else if [ ! -e "${out}/${check_ext}/sup50K" ] ; then mkdir -p "${out}/${check_ext}/sup50K" fi copy_check_file_exist "$file" "${out}/${check_ext}/sup50k" "$ext" fi fi done done
tuto/linux/photorec.txt · Dernière modification : 2009/09/20 21:27 de root