Reemplazar un disco RAID dañado

Veamos cómo actuar cuando un disco del RAID falle (no lo dudes, tarde o temprano fallará). Utilizaremos las herramientas mdadm (multiple device administer, paquete mdadm), que han reemplazado a las clásicas raidtools.

  1. Detectaremos que un disco RAID ha fallado mirando en /proc/mdstat:
    # cat /proc/mdstat
    Personalities : [raid1]
    md0 : active raid1 sda1[0]
          153316224 blocks [2/1] [U_]

    Aunque probablamente ya habremos recibido un email de mdadm monitoring en [email protected] con el asunto DegradedArray event on /dev/md0:

    This is an automatically generated mail message from mdadm
    A DegradedArray event had been detected on md device /dev/md0.
    Faithfully yours, etc.
    P.S. The /proc/mdstat file currently contains the following:
    Personalities : [raid1]
    md0 : active raid1 sda1[0]
          153316224 blocks [2/1] [U_]
  2. Apagamos el ordenador y reemplazamos el disco averiado. El nuevo disco debe tener al menos el mismo tamaño que el disco averiado, si su tamaño es inferior el proceso de reconstrucción fallará.
  3. Arrancamos de nuevo el sistema.
  4. Comprobamos los discos duros (los discos IDE se denominan hd*, mientras que los disco SATA se llaman sd*):
    # fdisk -l
  5. Crearemos en el nuevo disco /dev/sdb exactamente las mismas particiones que en el disco activo /dev/sda. Formatearemos el nuevo disco con fdisk, marcando las particiones como fd (Linux RAID autodetect). También podemos emplear el comando:
    # sfdisk -d /dev/sda | sfdisk /dev/sdb

    BE EXTREMELY CAREFUL - ONE TYPING MISTAKE AND ALL YOUR DATA IS LOST

  6. Comprobamos si ambos discos duros tienen las mismas particiones:
    # fdisk -l
  7. El nuevo disco no se inserta automáticamente en el RAID, ya que está marcado como erróneo. Insertaremos la partición /dev/sdb1 en el dispositivo /dev/md0 ejecutando:
    # mdadm --manage /dev/md0 --add /dev/sdb1
  8. A continuación comenzará la reconstrucción del RAID /dev/md0 y se sincronizarán /dev/sda1 y /dev/sdb1. Lo comprobaremos con:
    # cat /proc/mdstat
    md0 : active raid1 hda1[0] hdb1[1]
          1951744 blocks [2/1] [U_]
          [====>.....] resync = 33.1% finish=34.3min speed=59895K/sec

    Podemos monitorizar el proceso de reconstrucción con:

    # watch -n1 'cat /proc/mdstat'
  9. Todavía no hemos terminado, nos falta configurar el sistema para que sea capaz de bootear también desde el nuevo disco. Para que la máquina pueda bootear desde el nuevo disco tenemos que instalar GRUB en su MBR. Para ello, una vez haya terminado el proceso de reconstrucción ejecutaremos:
    # grub
    grub> device (hd0) /dev/hdb
    grub> root (hd0,0)
    grub> setup (hd0)
    grub> quit

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos necesarios están marcados *

Puedes usar las siguientes etiquetas y atributos HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>