Cómo recuperar archivos borrados en Linux con testdisk


¿Alguna vez eliminó un archivo y se arrepintió de inmediato? ¡Lo necesitas de vuelta y rápido! Pero, ¿qué pasa si el archivo es tan nuevo que aún no se ha realizado una copia de seguridad? Afortunadamente, hay algo que puedes hacer al respecto.
rm: Abreviatura de Remorse?
Es demasiado fácil usar el archivo rm
comando y te encontrarás mirando una ventana de terminal con una creciente sensación de arrepentimiento. Un pequeño error con los comodines y puede eliminar mucho más de lo que quería.
El sistema de archivos predeterminado de Linux, ext4
utiliza inodos para contener datos sobre cada archivo y una tabla de inodos para realizar un seguimiento de los inodos. El inodo contiene metadatos sobre el archivo, como su nombre, quién lo posee, cuáles son los permisos, etc.
También contiene puntos de entrada a enlaces físicos que apuntan al archivo. Cada archivo tiene al menos un enlace físico. Cada vez que crea un nuevo vínculo físico, el número de vínculos físicos aumenta en uno. Cada vez que elimina un enlace físico, el número de enlaces físicos en el inodo se reduce en uno.
Cuando elimina un archivo que el inodo ha marcado como no utilizado (y listo para su reutilización), se elimina el último vínculo físico. Cuando esto sucede, el archivo no aparecerá en las listas de directorios y no podrá usarlo ni acceder a él.
Sin embargo, los datos que componen el contenido del archivo todavía están presentes en el disco duro. Si pudiera parchear el inodo para que contenga la información correcta, el archivo se restauraría. Por supuesto, esto solo funcionaría si los datos que componen el archivo en el disco duro permanecen intactos y no se sobrescriben.
Alternativamente, puede crear un nuevo inodo, copiar los datos supervivientes del antiguo inodo y luego reemplazar los bits que faltan.
Esas son actividades no triviales. Por lo general, cuando elimina un archivo por error, es en el peor momento posible. Siempre es cuando necesita ese archivo y lo necesita ahora. No tiene tiempo para ensuciarse con los editores de la industria y otras utilidades. Además, si se trata de un archivo que acaba de crear, es probable que aún no se haya realizado una copia de seguridad, por lo que ni siquiera estos le ayudarán.
Aquí donde testdisk
Adelante. Es fácil de usar y no requiere un conocimiento detallado y de bajo nivel del sistema de archivos. ¡Echemos un vistazo a cómo usarlo!
RELACIONADO: Todo lo que siempre quiso saber sobre inodos en Linux
Instalación de Testdisk
Instalar testdisk
en Ubuntu, use este comando:
sudo apt-get install testdisk
En Fedora, debe escribir:
sudo dnf install testdisk
En Manjaro, debes usar pacman
:
sudo pacman -Sy testdisk
Usando testdisk
Aunque se ejecuta en una ventana de terminal, testdisk
tiene una interfaz rudimentaria. Use las teclas de flecha para navegar y Enter para hacer una selección. Para mantener las cosas ordenadas, es mejor crear un directorio para los archivos restaurados.
Escribimos lo siguiente para crear un directorio llamado "restaurado" para nuestros archivos restaurados:
mkdir restored
Escribimos lo siguiente para cambiar al nuevo directorio y empezar testdisk
desde allí:
cd restored/
Tenemos que usar sudo
con testdisk
, luego escribimos lo siguiente:
sudo testdisk
La primera pregunta testdisk
pregunta sobre el registro. Puede crear un nuevo archivo de registro, utilizar uno existente o no registrar nada. No importa la opción que elija; no afectará el camino testdisk
Ópera.
Puede simplemente presionar Enter para aceptar la opción resaltada y crear un nuevo archivo de registro. Se creará en el directorio desde el que comenzó testdisk
. Cuando realiza su selección, testdisk
pregunta qué disco duro contiene el sistema de archivos en el que desea trabajar.
Enumera los discos duros que puede encontrar, así como los archivos squashfs
Archivo "/ dev / loop". Habrá uno para cada aplicación que instale desde un archivo snap
. Son de solo lectura, por lo que no debería haber podido eliminar nada de estos sistemas de archivos.
Solo hay un disco duro físico en esta computadora de prueba, por lo que usamos la flecha hacia abajo para resaltar la opción "/ dev / sda". Luego usamos la flecha derecha para seleccionar "Continuar" y luego presionamos Enter.
testdisk
también debe conocer el tipo de partición. Presenta un menú de opciones, junto con el tipo de partición que se detectó automáticamente a continuación.
A menos que tenga una buena razón para no hacerlo, resalte el tipo de partición que se detectó automáticamente y luego presione Enter.
En el menú de funciones que se muestra, resalte "Avanzado" y luego presione Entrar.
Aparecerá el menú de selección de partición.
Los archivos que buscamos se encuentran en la partición del sistema de archivos de Linux. Solo tenemos una partición de Linux en nuestro disco duro, pero es posible que tenga más.
Seleccione la partición donde se ubicaron los archivos, use las teclas de flecha izquierda y derecha para seleccionar "Lista", luego presione Entrar. Aparecerá el menú de selección de archivos.
Utilice las flechas hacia arriba y hacia abajo o las teclas PgUp y PgDn para navegar por la lista de archivos y directorios. Presione la flecha derecha o Enter para ingresar a un directorio y la flecha izquierda o Esc para salir de un directorio.
Buscamos archivos propiedad de dave
. Los archivos de todas las cuentas de usuario se encuentran en el directorio "Inicio". A continuación, resaltamos el directorio "Inicio", luego podemos presionar Flecha derecha o Enter para ingresar a ese directorio.
A continuación, se enumeran todas las cuentas de usuario. Resaltamos dave
, luego presione la flecha derecha o Enter para navegar a ese directorio.
Ahora podemos ver los archivos a los que pertenecen. dave
cuenta. Los elementos en rojo se han eliminado. Navegamos por los archivos y directorios hasta encontrar los archivos que queremos recuperar.
Para recuperar un archivo, simplemente resáltelo y luego presione c (minúscula).
La pantalla cambia y le indica que elija un destino para el archivo recuperado. Porque creamos un directorio llamado "Restaurado" y comenzamos testdisk
a partir de él, la primera entrada en la lista (.) es ese directorio. Para recuperar este archivo eliminado en ese directorio, presionamos C (mayúsculas).
Después de hacer esto, volverá a la pantalla de selección de archivos. Si desea recuperar más archivos, simplemente repita el proceso. Resalte un archivo eliminado, presione c (minúscula) para copiarlo, luego presione C (mayúscula) para recuperarlo.
Trabajar con archivos restaurados
Después de restaurar un archivo, el árbol de directorios se reconstruye a su ubicación original, lo cual es útil porque le recuerda en qué parte de su disco duro residía el archivo original. Esto significa que si necesita copiarlo nuevamente, ya sabe dónde colocarlo.
Si recupera varios archivos de diferentes ubicaciones del sistema de archivos que tienen el mismo nombre de archivo, aún deberán archivarse por separado.
Puede escribir lo siguiente para ver el contenido del directorio "Restaurado":
ls
Si preguntaste testdisk
para crear un archivo de registro, estará en el directorio "Restaurado". Dado que nuestros archivos recuperados estaban ubicados en "/ home / dave", fueron copiados a nuestro directorio "Restaurado", anidado en directorios con el mismo nombre.
Podemos cambiar al directorio "dave" copiado usando cd
. Asegúrese de no incluir una barra inclinada (/
) en la ruta: desea cambiar al sistema "home" local, no al sistema "/ home".
Escribimos lo siguiente:
cd home/dave
Los archivos recuperados se encuentran en ese directorio, por lo que escribimos:
ls
Echemos otro vistazo a los archivos recuperados con la extensión -l
(lista larga) opción:
ls -l
Por que usamos sudo
almorzar testdisk
, los archivos recuperados se restauraron con "root" como propietario. Podemos volver a cambiar el propietario a "dave" usando chown
:
sudo chown dave.dave *
Escribimos lo siguiente para asegurarnos de que se haya restaurado la propiedad correcta:
ls -l
testdisk: código para la encuesta
Esa sensación de alivio tras recuperar un archivo importante que, hasta hace un momento, parecía irremediablemente perdido, es algo que siempre agradecerás.
Aquí porque testdisk
es una utilidad tan útil. Después de recorrer los menús y comenzar a restaurar archivos, es fácil caer en un ritmo de resaltado, c, C, repetir.
Deja una respuesta