Restaurar vários arquivos com Sleuthkit

Se você tiver uma imagem de uma unidade / partição que não pode ser montada, você pode usar o sleuthkit para restaurar os arquivos. Primeiro, você precisará obter a lista dos arquivos dessa imagem:

$ fls -f ext2 -p -r ./image-of-my-drive 
| grep -v '^..-' | grep -v '^... *' > files.lst

Este comando lhe dará uma lista de arquivos e seus inodes (supondo que estamos lidando com Ext2 FS). Então você poderá “retore em massa” arquivos com este script:

IMAGE=image-of-my-drive
LIST
=./files.lst
DEST
=/home/ixti/recovered

cat $LIST
| while read line; do
filetype
=`echo "$line" | awk {'print $1'}`
filenode
=`echo "$line" | awk {'print $2'}`
filenode
=${filenode%:}
filename
=`echo "$line" | cut -f 2 -d ' '`

if [ $filetype == "r/r" ]; then
echo
"$filename"
mkdir
-p "`dirname "$DEST/$filename"`"
icat
-f ext2 -r -s $IMAGE "$filenode" > "$DEST/$filename"
fi
done

Você também pode restaurar um diretório específico. Basta passar seu inode para o comando fls para obter a lista de arquivos apenas desse diretório.

Isso ajudará a restaurar os arquivos EXISTENTES da imagem de um rive que não pode ser montado normalmente. Mas você pode adotá-lo facilmente para fazer a restauração em massa de arquivos / diretórios removidos, basta ler o manual / wiki do fls sobre sua saída e ajustar o script em lote do icat :))

Relacionado:
http://ixti.net/administration/2012/10/25/mass-restore-files-from-corrupted-media-with-sleuthkit.html