Recuperando particiones XFS con xfsdump

Hoy quizá un mal apagado, jodió el superbloque principal de una de mis particiones.
Al montarla salia el mensaje:

# mount /dev/hdb1

mount: tipo de sistema de ficheros incorrecto, opción incorrecta,
superbloque incorrecto en /dev/hdb1, falta la página de códigos,
o algún otro error
En algunos casos se encuentra información en syslog, pruebe
dmesg | tail o algo parecido

Veamos….

# dmesg |tail

XFS: bad magic number
XFS: SB validate failed

Estaba jodido… eran 120 GB de los cuales, el 20% eran ISO y demás. Esto no duele perderlo (Los DivX me refiero), pero me puse a buscar por internet y encontré una solución milagrosa.

Primero tuve que instalar xfsdump y luego probé, sin modificar nada (opción -n) a ver que ocurría:

# xfs_repair -n /dev/hdb1

Phase 1 - find and verify superblock...
bad primary superblock - bad magic number !!!

attempting to find secondary superblock...
(un ratito)
found candidate secondary superblock...
verified secondary superblock...
would write modified primary superblock
Primary superblock would have been modified.

Ha terminado. Nos dice que se ha encontrado un candidato que parece ser el segundo superbloque, que debería modificarse (Palabras textuales). La opción -n evitó que se modificase.

No tenía nada que perder así que lo ejecuté de nuevo sin la opción -n. En realidad no sé que hizo pues no se apenas nada de sistemas de ficheros a ese nivel, y menos de XFS (Si aún dijésemos ext3 o reiserfs de los que he leído más acerca de ellos…). Nos manda montarlo con unas opciones y sus respectivos valores mencionados anteriormente.
Desconocía ambas opciones, y dado que iba a ciegas lo monté con normalidad.

# dmesg |tail

XFS mounting filesystem hdb1
Ending clean XFS mount for filesystem: hdb1

Parece que ha funcionado :)

Escrito por Gura 29.Jun.06 y almacenado en las caterorías GNU/Linux, lost+found.

Puede seguir los comentarios que escriben los lectores mediante el feed RSS 2.0.
También puede escribir un comentario, o referenciar esta entrada (trackback) desde su web.

3 comentarios en “Recuperando particiones XFS con xfsdump”

  1. parki |

    Es sencillo. Cuando se crea un sistema de archivos XFS (y ext, p.ej), cada n bloques se almacena una copia del superbloque inicial por si éste se corrompiese.

    De esta manera, xfsdump busca una copia del superbloque por toda la partición, en incrementos de 512bytes en 1 principio ya que no tiene el primer superbloque y no puede conocer el tamaño de bloque con que fue formateada, y la restaura.

    C”est fini.

  2. Gura |

    Lo ideal sería, según he leído, apuntar la posición del superbloque.

  3. Thomas Anguera |

    Super color scheme, I like it! Good job. Go on.

Escriba un comentario

Comments will be sent to the moderation queue.