Accueil > programmes > récupérer des fichiers effacés , données
récupérer des fichiers effacés , données
Publié le 23 août 2017, dernière mise-à-jour le 15 avril 2024, 36 visites, visites totales.
photorec
foremost
gddrescue
magicrescue
extundelete
Photorec
- on se place dans le bon dossier
- on lance la commande en root : photorec
- il faut choisir le bon disque dur avec les flèches+
- on déplace vers la droite pour les options+
; on peut décider de mettre Keep corrupted files (garder les fichiers incomplets) à yes puis - on déplace vers la droite pour File Opt et on choisit le type des fichiers à trouver avec la barre d’espace et "s" puis on quitte avec
- on déplace vers la gauche pour Search
- ensuite on choisit la bonne partition ( ou whole disk si on ne sait pas ) avec les flèches haut/bas
- on choisit la bonne partition alors ext pour linux et other pour mac/windows avec les flèches haut/bas
- on clic sur C si on s’est déjà placé dans le bon dossier
- ça crée plein de dossiers recup_dir.### avec tous les fichiers ; mais le nom est tout pourri du genre f3299392.jpg.
On commence par détruire les fichiers inutiles
On commence par transformer les noms :
recup_dir.132/f3299392.jpg -> recup_dir.132/132_f3299392.jpg
On se place dans le dossier qui contient les recup_dir.###
find r.[0-9]* -maxdepth 0 -type d -print|while read rep;do echo;find $rep -type f -print|while read fich;do echo mv $fich $(echo $fich|sed "s#/#/${rep}_#");done;done
#aide pour vérifier si ca a été fait : find . -type f |grep -v /[0-9] |wc doit donner 1 1 15
Liste des fichiers : find recup_dir.* -type f > ListeDesFichiers
. Peut être très long.
#CREATION DES DOSSIERS égaux aux suffixes, par exemple JPGs ; DOCs
cat ListeDesFichiers| sed 's#^[^/]*/##'|egrep "\."|sed 's#^.*\.\([^\.]*\)$#\1#' |sort |uniq > suffixes ; for rep in $(cat suffixes); do mkdir -p $(echo $rep | tr [:lower:] [:upper:])"s" ;done
recréation de la liste : find recup_dir.* -type f > ListeDesFichiers
# DEPLACEMENT DES FICHIERS suivant les suffixes
# 7473/51 112913/9000 135k/5160 180k/9000 62k/2500
#a revoir for fich in $(cat ListeDesFichiers) ;do mv $fich $( echo $fich | sed ’s#^[^/]*/##’|egrep "\."|sed ’s#^.*\.\([^\.]*\)$#\1#’ )"s/" ;done
recherche de constructeur
on se place dans le dossier JPG
for i in *; do constructeur=$(exiftool $i |grep '^Make '|sed 's/.*: //'); echo $constructeur >> ../constructeurs ; done
mkdir SONY PENTAX Panasonic Canon "NIKON CORPORATION"
Renommer les fichiers par constructeur
mkdir -p "NIKON CORPORATION" "Panasonic" "SONY" "PENTAX" "Canon" ; for i in $(find JPG_1M_/ ); do constructeur=$(exiftool $i |grep '^Make '|sed 's/.*: //'); if [ "$constructeur" == "NIKON CORPORATION" ];then echo $constructeur; mv $i DSCs-Nikon/$(basename $i |sed 's/IMG/DSC/') ; else if [ "$constructeur" == "Panasonic" ];then echo $constructeur; mv $i Panasonic/ ; else if [ "$constructeur" == "SONY" ];then echo $constructeur; mv $i SONY/ ; else if [ "$constructeur" == "PENTAX" ];then echo $constructeur; mv $i PENTAX/ ; else if [ "$constructeur" == "Canon" ];then echo $constructeur; mv $i Canon/ ; fi; fi; fi; fi; fi; done ;
Suffixes utiles
asf avi doc docx gif html mbox mp3 mp4 od[fpst] pdf png ppt pptx psd rtf txt wmf xls xlsx zip
images / exif
import re
from PythonMagick import Image
i='a.jpg'
img = Image(i)
nom=re.sub(':','-',re.sub(' ','_',img.attribute("EXIF:DateTimeOriginal"))+'-'+i)
print('mv '+i+' '+nom)
odt
import re,os
i='a.odt'
j=re.sub('.odt$','.txt',i)
f=open(i)
for line in f:
if 'date' in line:
date=re.sub(".*<dc\:date>(.*)</dc\:date>.*\\n","\g<1>",line)
f.close()
os.system('odt2txt '+i) # => j
f=open(j)
nomtrouvee=False
for line in f:
if re.sub("[^0-9a-zA-Z]*","",line) != '' and nomtrouvee == False:
nom=re.sub ( ' ' , '_' , re.sub("[^0-9a-zA-Z]*","",line) )+'.odt'
#os.('mv '+i+' '+nom)
os.system('mv '+i+' '+date+'-'+nom)
nomtrouvee=True
f.close()
doc
if re.sub(’^f[0-9]9.doc’,’’,fich)
http://www.cgsecurity.org/wiki/After_Using_PhotoRec
pour android voir programmes à installer : playstore gogol
foremost
rapide :
DOSSIER="ASPTT-foremost" && mkdir -p "$DOSSIER" && foremost -v -q -t zip,png,jpg -i /dev/sda1 -o "$DOSSIER"
lent et complet :
DOSSIER="ASPTT-foremost" && mkdir -p "$DOSSIER" && foremost -v -t zip,png,jpg -i /dev/sda1 -o "$DOSSIER"
exemple avec un odt : recherche du mot ASPTT :
mkdir -p ARCHIVES aa;
i=0;while [ $i -ne 1 ]; do
for fich in $(ls ASPTT-foremost/*/*);do
echo "$fich" ;
7z x "$fich" -y -oaa;
echo "$fich" >> res;
cat aa/content.xml |sed 's#>#>\n#g'| grep -Hn "ASPTT" -B 2 >>res;
mv "$fich" ARCHIVES/ ;
done ;
echo "= = = = = = = = = = =" ; echo ; df -h ; echo ; cat res ; date;sleep 1m;
done
Ensuite on ouvre le fichier res et on cherche les occurences et le zip écrit au-dessus ( ça peut être optimisé :))
gddrescue
gddrescue - outil GNU de récupération de données
magicrescue
sudo magicrescue -r jpeg-exif -r jpeg-jfif -r png -r avi -d ~/recup /dev/sda