recuperar archivos en ext4

11

Mi madre ha colocado algunos archivos importantes en ella / tmp por accidente. Ahora, por supuesto, se han ido.

Esto sucedió ayer (2 botas de la máquina desde entonces)

Quiero intentar recuperar los archivos. Estaban en / tmp, que estaba en la misma partición que el resto de /, por lo que necesito una herramienta que se ejecute en un sistema montado (o tal vez podría usar un livecd ...)

En este momento, estoy probando testdisk en un sistema rescatado que acabo de descargar. Puedo obtener algunos archivos de / tmp, pero no todos. (¿Es la herramienta correcta? ¿Qué son exactamente esos archivos "rojos"? ¿Solo algunos de ellos son recuperables?)

josinalvo
fuente

Respuestas:

15

También puedes usar extundelete

Primero desmonte ( umount) el sistema de archivos donde se han eliminado los archivos.
Luego lea el capítulo Qué hacer si ha eliminado un archivo .

Puede instalar extundeletedesde el repositorio clásico de Ubuntu:

sudo apt-get install extundelete

O mejor, puede descargar la última versión y compilarla:

cd ~/Download
tar -xf extundelete-*.*.*-.tar.bz2  #Replace *.*.* by the version
cd      extundelete-*.*.*
sudo apt-get install e2fslibs-dev   #Required for compilation
./configure
make
sudo make install
extundelete --version               #Should be your *.*.* version

Ejemplo de uso: restaurar todos los archivos eliminados del directorio Imagesen el nuevo directorio creadorestore

sudo extundelete --restore-directory Images/ -o restore /dev/sda3

Malas noticias si ve su archivo XXXXen el siguiente formato:

Unable to restore inode NNN (Images/XXXX): Space has been reallocated.

Ver todos los archivos restaurados (busque su archivo):

find restore -name '*'

Haga una copia de seguridad de sus archivos y elimine este directorio temporal restore

cp restore/Images/XXXX MY_BACKUP_DIRECTORY
sudo rm -rf restore  
olibre
fuente
3
Esta respuesta literalmente acaba de salvar mi trabajo. Gracias.
Twifty
10

La recuperación de datos, especialmente en sistemas de archivos EXT, debe intentarse desde un CD en vivo u otro sistema que no dependa de la partición desde la que está recuperando. Desmontar o volver a montar el disco como lectura solo ayuda mucho en el esfuerzo de recuperación.

La mayoría de las veces trato de crear una imagen de la partición o del disco usando dduna herramienta similar, de modo que no estoy trabajando en el disco en sí:

dd if=/dev/sd[xx] of=/media/backup_drive/recovery.img

Una vez que tenga su imagen, puede usar una herramienta como ext3greppara tratar de encontrar los archivos que está buscando. Hay muchos interruptores diferentes que puede probar, pero este podría ser un buen comienzo:

ext3grep --restore-file 'tmp/moms-file.txt' recovery.img

La ext3greputilidad también proporciona varias formas diferentes de buscar en el sistema de archivos si no conoce el nombre del archivo. Verifique ext3grep --helplos diferentes métodos de búsqueda.

Windigo
fuente
Sería bueno si pudieras agregar los pasos exactos?
saji89
@ saji89 Se agregó un uso de muestra, ¡también se corrigió para vincular a la utilidad correcta!
Windigo
bonito. ahora ... ¿funciona con ext4?
josinalvo
1
@josinalvo Estaba trabajando con un volumen EXT4 cuando lo probé, y funcionó; no encontró los archivos que estaba buscando, pero creo que había perdido la oportunidad.
Windigo
0

No pude recuperar mi archivo crontab usando ext4magic o extundelete.

En Debian, el crontab para root está aquí:

/var/spool/cron/crontabs/root

Pero, utilizando el siguiente comando, pude al menos recuperar manualmente mi crontab de los registros.

 grep CRON /var/log/syslog.* -i| awk -F " CMD " {'print $2;'} |sort | uniq

Solo generará los trabajos cron ejecutados (sin temporizaciones), pero al menos esto es mucho más que comenzar desde cero.

Si no recuerda con qué frecuencia se ejecutan ciertos trabajos cron, tome un registro completo, por ejemplo, syslog.1 y esto le dará el recuento de ejecuciones durante el día:

grep CRON /var/log/syslog.1 -i| awk -F " CMD " {'print $2;'} |sort | uniq -c |sort -n
Ivan Tsukev
fuente
0

AnalizarEXT

Analizar bloques de datos para datos de directorio EXT.

La documentación detallada sobre EXT4 se puede encontrar aquí:

Descargue el script perl con

git clone https://github.com/halpomeranz/analyzeEXT

No hay garantía, pero puede reconstruir sistemas de archivos eliminados.

jouell
fuente
1
¿Qué es exactamente esta herramienta? ¿Como lo usas? He leído la descripción del repositorio y el mensaje de ayuda en el script , pero no hay muchos detalles.
wjandrea
Echó un vistazo a la secuencia de comandos perl; ¡la ayuda de cli no coincide con el script!
abu_bua
Más detalles están aquí. Me tropecé con él, ¡nunca lo usé! youtube.com/watch?v=6pzm6909IvY
jouell
@jouell He visto las 2:30 del video y todavía no ha mencionado el guión. ¿Podría editar su respuesta para agregar un breve resumen?
wjandrea