RAID no detecta como nuevo un disco recuperado de otro equipo y formateado
En cierta ocasión, tuvimos que pasar un disco de un PC de escritorio a otro equipo que tenía un RAID 1 por Hardware (controladora LSI, intel, etc...)
Formateamos el disco y lo conectamos al equipo con RAID.
Encendimos el equipo esperando que el RAID detectase que el disco era "nuevo" y que había que reconstruirlo.
Para nuestra sorpresa, el RAID identificó el disco y decía que ya pertenecía a él.
Haciendo memoria resulta que este disco duro ya había estado en el mismo RAID.
Sin embargo, pensamos que ya se formateó, por lo menos, un par de veces
La duda que nos surgió fue ¿cómo garantizar que este disco "recuperado" y formateado no la va a liar con el otro disco del RAID que sí tiene datos?
Investigando encontramos más información
Resulta que
Para colmo de males, este disco tenía un sistema operativo Windows, con lo que siempre hay unos 8 MB al final del disco que no se particionan ni se tocan.
Solución:
Hay que borrar los metadatos
Para mayor seguridad y para evitar problemas con el otro disco del RAID 1, optamos por conectar el disco a otro equipo.
Iniciamos el equipo con un linux Live
IMPORTANTE: en el siguiente comando /dev/sda es el disco duro que teníamos en el RAID. En otro caso puede ser otra unidad.
Podemos obtener información de los discos con fdisk -l
Ejecutamos en un terminal este comando
fdisk -l
Vemos que nuestro disco es /dev/sda
Borramos los metadatos con este comando
dd if=/dev/zero of=/dev/sda bs=512 seek=$(( $(blockdev --getsz /dev/sda) - 1024 )) count=1024
Volvemos a conectar el disco al RAID 1 y lo detecta como "nuevo" y pide reconstruirlo
Referencias
https://djlab.com/2013/07/removing-raid-metadata/
Formateamos el disco y lo conectamos al equipo con RAID.
Encendimos el equipo esperando que el RAID detectase que el disco era "nuevo" y que había que reconstruirlo.
Para nuestra sorpresa, el RAID identificó el disco y decía que ya pertenecía a él.
Haciendo memoria resulta que este disco duro ya había estado en el mismo RAID.
Sin embargo, pensamos que ya se formateó, por lo menos, un par de veces
La duda que nos surgió fue ¿cómo garantizar que este disco "recuperado" y formateado no la va a liar con el otro disco del RAID que sí tiene datos?
Investigando encontramos más información
Resulta que
- en los discos de un RAID por hardware los metadatos se guardan en los últimos 512KB.
- un formateo normal (no a bajo nivel) no sobreescribe esos últimos 512KB
Para colmo de males, este disco tenía un sistema operativo Windows, con lo que siempre hay unos 8 MB al final del disco que no se particionan ni se tocan.
Solución:
Hay que borrar los metadatos
Iniciamos el equipo con un linux Live
IMPORTANTE: en el siguiente comando /dev/sda es el disco duro que teníamos en el RAID. En otro caso puede ser otra unidad.
Podemos obtener información de los discos con fdisk -l
Ejecutamos en un terminal este comando
fdisk -l
Vemos que nuestro disco es /dev/sda
Borramos los metadatos con este comando
dd if=/dev/zero of=/dev/sda bs=512 seek=$(( $(blockdev --getsz /dev/sda) - 1024 )) count=1024
Volvemos a conectar el disco al RAID 1 y lo detecta como "nuevo" y pide reconstruirlo
Referencias
https://djlab.com/2013/07/removing-raid-metadata/
Comentarios
Publicar un comentario