
Hubo un problema en una tarjeta de memoria/FS EXT4 y después de fsck todos los archivos se colocaron en Lost+Encontrados.
Pregunta: ¿Cómo puedo restaurar el antiguo nombre de archivo/jerarquía de los perdidos+encontrados? ¿O es imposible? Sin contar una restauración desde una copia de seguridad.
Respuesta1
No puedes encontrar el nombre original y la ubicación de un archivo /lost+found
porque eso esacerca lost+found
de que: es donde fsck
coloca fragmentos de archivos que no ha podido adjuntar en ninguna parte del árbol de directorios. Si se conociera la ubicación, fsck
habría dejado el archivo donde debía estar.
En teoría, es posible que fsck
solo tenga información parcial, como el nombre del archivo pero no la ubicación del directorio, pero eso no sucede con el sistema de archivos típico.
Es posible que pueda encontrar pistas en el propio archivo. Elfile
El comando al menos le dirá qué tipo de archivo es (si lo reconoce). Algunos archivos contienen información adicional en su interior; por ejemplo, las imágenes JPEG y TIFF pueden contenerEXIFdatos, los archivos MP3 pueden conteneretiquetas ID3, etc.
Respuesta2
La última vez que tuve que hacer eso, hace muchos años, tenías que adivinar según el contenido del archivo. Dudo que haya una mejor manera hoy.
El programa 'archivo' puede ayudar aquí ya que le dará una idea del tipo de datos, por lo que puede usarlo para ver los archivos adecuadamente para empezar.
Respuesta3
En mi caso hubo un error de E/S durante la lectura. Y después de ejecutarlo, e2fsck
encontré la mayoría de mis archivos en lost+found
subcarpetas, y la mayoría de los archivos (y nombres de archivos) estabanOK.
Entonces ve a lost+found
, corre
find | less
y vea si puede encontrar sus archivos. ¡Buena suerte!
Respuesta4
Nombres de archivos y jerarquía no, pero usar archivos puede ayudarte a recuperar algunas cosas. Utilizo el editor Joe que tiene selecciones rectangulares si las habilitas. Entonces podría hacer "ls > ques" y luego buscar y reemplazar para convertirlo en una lista de declaraciones como 'archivo "#133024" > 133024.txt'. Lo ejecuté como un script sh, luego pude hacer 'grep PDF *.txt > pdflist'. Con eso abierto en un visor de mc y otro mc en otra terminal, revisé pdflist.txt y moví todos los archivos PDF a su propio directorio. Puedes hacer lo mismo con archivos de texto ASCII y cualquier otra cosa que identifique.
También hay sorpresas extrañas como '#410423: datos comprimidos con gzip, eran "x264_git.tar"'. También puede 'cat *.txt > filelist' para obtener todas las descripciones en un solo archivo.