Se eliminaron los primeros 512 bytes del disco; ¿Cómo puedo recuperar mis datos?

Se eliminaron los primeros 512 bytes del disco; ¿Cómo puedo recuperar mis datos?

Accidentalmente escribí un binario de 512 bytes en el disco USB incorrecto ddy el dispositivo ya no muestra ninguna partición fdisk.

Pensé que todos los datos habían desaparecido, pero dd if=/dev/sdx | stringsmuestra que los datos parecen estar todavía allí, ya que ddafortunadamente se limitaron a los primeros 512 bytes.Hay alguna manera de recuperarlo?

El disco tenía dos particiones: una ext4 (~4GB) y la restante de 16GB estaba formateada como NTFS.

Respuesta1

Depende de qué había exactamente antes, pero podría ser fácil (más o menos) recuperarse de esto.

  1. Úselo ddpara crear una imagen completa de su unidad USB en una ubicación segura.

  2. Úselo ddpara crear una imagen completa de su unidad USB en una ubicación segura.

  3. Sí, conserve una imagen completa. Las operaciones de recuperación de datos a menudo pueden causar más daño del que cabría esperar.

  4. Intente recordar cómo era el diseño de la partición en esa unidad USB.Escríbelo. Podría ser útil tener registros del sistema desde que el kernel de Linux detecta ese disco (antes de estropearlo); muy a menudo imprimirá algunos datos sobre las particiones detectadas.

  5. Utilice fdisk para recrear el MBR con la misma tabla de particiones.No formatee ni/o fsck ninguna partición.

  6. Intente montar sus particiones con la opción de solo lectura ( -o ro) mount.

  7. Si tiene éxito, intente copiar todos los archivos a una ubicación segura y observe su terminal y sus registros en busca de errores de E/S; la forma típica en que se expresan los errores de límites de partición es mediante accesos fuera de límites en el dispositivo subyacente.

  8. Si la copia falla, restaure la imagen y vuelva al paso 4.

  9. ¿Mencioné tener una imagen completa de la unidad USB antes de hacer cualquier otra cosa?

PD: Es posible que también quieras echar un vistazo a herramientas comoDisco de prueba, que intentan automatizar el proceso de recuperación. Pero aún así deberías obtener una imagen completa primero.

PS2: Si te sientes lo suficientemente cómodo, también puedes experimentar un poco. Si puede hacer una suposición razonable sobre el punto de inicio de la primera partición, entonces puede usarla tune2fs -lpara obtener el tamaño exacto de la primera partición, lo que le permitiría buscar el inicio de la segunda.

Respuesta2

Para restaurar la ext4partición y sus datos, pensé en crear una partición ext4 para todo el disco. Esto me permitió conseguiracceso a los datosy recuperar información sobre la partición con tune2fs -l, como lo sugiere @thkala. Esta información parece muy factible y, por tanto, inalterada.

Muy interesante, gparted es de alguna manera capaz de descubrir eltamaño real de la particiónComo se desprende de esta advertencia, se muestra:

10,96 GiB de espacio no asignado dentro de la partición. Para hacer crecer el sistema de archivos para llenar la partición, seleccione la partición y elija el elemento del menú:

porque 11GiB era aproximadamente la dimensión de la partición NTFS.

ingrese la descripción de la imagen aquí

Observe el espacio no utilizado que, IIRC, era el espacio que aún tenía libre el ext4. Elespacio sin asignargparted reconoce que parece ser una partición NTFS; ahora,¿Cómo puedo restaurar ese también?, ¿quizás averiguando dónde termina la primera partición, es decir, su recuento total de bytes?


FinalmenteDisco de pruebalo manejé sin esfuerzo.

información relacionada