Guía de tecnologías

Migración y arranque desde RAID con mdadm y GRUB

7 min read Linux Actualizado 23 Sep 2025
Arranque desde RAID: actualizar fstab y GRUB
Arranque desde RAID: actualizar fstab y GRUB

Objetivo y alcance

Este procedimiento describe los pasos finales de una migración en los que:

  • Se obtienen los UUID de los sistemas de archivos en los dispositivos RAID.
  • Se actualiza /mnt/raid/etc/fstab para apuntar a UUID en lugar de particiones físicas.
  • Se copia y adapta la configuración de GRUB desde la copia en el array RAID hacia /boot.
  • Se reinicia el equipo, se comprueba el arranque desde el nuevo disco y se convierte el disco antiguo en miembro del RAID.
  • Se instala el registro de arranque en ambos discos para tolerancia a fallos (GRUB clásico).

Audiencia: administradores de sistemas Linux con experiencia básica en mdadm, montaje de sistemas de archivos y GRUB.

Nota importante: estas instrucciones asumen GRUB clásico (legacy). Si usas GRUB2, sigue las instrucciones específicas para GRUB2 en otra guía.

Antes de empezar

Requisitos mínimos:

  • Acceso como root o sudo en la máquina.
  • mdadm instalado y arrays activos (/dev/mdX).
  • Disco nuevo (ya sincronizado en RAID) montado temporalmente en /mnt/raid.
  • Copia de seguridad previa de /etc/fstab y /boot/grub/menu.lst si lo deseas.

Importante: no borres discos ni ejecutes comandos destructivos sin confirmar las rutas. Verifica dos veces las particiones con fdisk -l.

1) Obtener los UUID de los sistemas de archivos RAID

Abre otra consola y ejecuta:

blkid | grep /dev/md

Verás el UUID de cada sistema de archivos en los dispositivos md. Debe lucir similar a:

/dev/md0: UUID="0b0fddf7-1160-4c70-8e76-5a5a5365e07d" TYPE="ext2"
/dev/md1: LABEL="/ROOT" UUID="36d389c4-fc0f-4de7-a80b-40cc6dece66f" TYPE="ext4"
/dev/md2: UUID="47fbbe32-c756-4ea6-8fd6-b34867be0c84" TYPE="ext4"
/dev/md3: LABEL="/VAR" UUID="f92cc249-c1af-456b-a291-ee1ea9ef8e22" TYPE="ext4"

Apunta o copia el UUID correspondiente a /dev/md0 (normalmente /boot) y al /dev/md1 (root) para actualizar fstab.

2) Montar la copia RAID y editar /etc/fstab

Monta el array donde tienes la copia del sistema:

mount /dev/md1 /mnt/raid

Abre /mnt/raid/etc/fstab y reemplaza la línea que monta /boot por la referencia a UUID del nuevo /dev/md0. Por ejemplo:

UUID=0b0fddf7-1160-4c70-8e76-5a5a5365e07d /boot ext2 defaults 1 1

Luego repite lo mismo para la línea que monta la raíz (/), usando el UUID de /dev/md1:

UUID=36d389c4-fc0f-4de7-a80b-40cc6dece66f / ext4 defaults 1 1

Nota: por ahora conserva comentadas las líneas alternativas si las vas a usar más adelante; el ejemplo que seguiremos deja las actuales líneas para /var y /home intactas, y añade nuevas entradas físicas comentadas para referencia.

Ejemplo para /var (añadir la nueva entrada física y mantener la UUID comentada):

/dev/sdb5 /var ext4 defaults 1 2
#UUID=47fbbe32-c756-4ea6-8fd6-b34867be0c84 /var ext4 defaults 1 2

Ejemplo para /home:

/dev/sdb6 /home ext4 defaults 1 2
#UUID=f92cc249-c1af-456b-a291-ee1ea9ef8e22 /home ext4 defaults 1 2

Cuando termines, desmonta la copia:

umount /mnt/raid

3) Actualizar la entrada del kernel en GRUB dentro del RAID

Monta /dev/md0 de nuevo en /mnt/raid si necesitas editar grub en la copia:

mount /dev/md0 /mnt/raid

Edita /mnt/raid/grub/menu.lst y cambia la entrada de kernel para que apunte al root sobre el dispositivo RAID:

kernel PATH-TO-KERNEL ro root=/dev/md1 SOME OPTIONS

Asegúrate de que no exista una opción que excluya dispositivos md. Para confirmar que el sistema arrancará desde el array, copia los archivos:

cp /mnt/raid/grub/menu.lst /boot/grub/menu.lst
cp /mnt/raid/etc/fstab /etc/fstab

Nota: puedes hacer copias de seguridad antes de sobrescribir—es seguro, pero opcional.

4) Reiniciar y seleccionar el disco de arranque en BIOS

Reinicia la máquina:

reboot

Entra en la BIOS del sistema y elige el disco nuevo (el que contiene la copia RAID o el disco designado) como el dispositivo de arranque primario. Guarda la configuración y arranca.

5) Convertir el disco antiguo a particiones RAID

Si el reinicio fue correcto y el sistema arrancó desde el RAID, convierte las particiones del disco antiguo para que sean del tipo RAID (0xfd). Primero identifica qué disco es el antiguo:

fdisk -l

Localiza el disco que todavía muestra particiones tipo 83 (Linux) —ese será el disco antiguo.

Con fdisk, cfdisk o parted cambia el tipo de partición a 0xfd en las particiones correspondientes (por ejemplo sdb1, sdb2, sdb5, sdb6). Asumimos que el disco antiguo aparece como /dev/sdb.

Después ejecuta:

partprobe

A continuación, añade esas particiones al RAID para completar los arrays:

mdadm /dev/md0 -a /dev/sdb1
mdadm /dev/md1 -a /dev/sdb2
mdadm /dev/md2 -a /dev/sdb5
mdadm /dev/md3 -a /dev/sdb6

Para monitorizar el progreso en otra consola como root:

watch -n 5 cat /proc/mdstat

Salida de ejemplo actualizada cada 5 segundos:

Personalities : [raid1]
md1 : active raid1 sdb3[1] sda3[0]
473792 blocks [2/2] [UU]
[===>.................] recovery 25.0% (118448/473792) finish=2.4min speed=2412

md2 : active raid1 sdb5[1] sda5[0]
4980032 blocks [2/2] [UU]
resync=DELAYED

md3 : active raid1 sdb6[1] sda6[0]
3349440 blocks [2/2] [UU]
resync=DELAYED

md0 : active raid1 sdb1[1] sda1[0]
80192 blocks [2/2] [UU]
unused devices: 

Cuando todos los dispositivos md hayan terminado la recuperación/resincronización, el sistema será completamente redundante y funcional.

6) Instalar el registro de arranque en el segundo disco (GRUB clásico)

Para que el sistema pueda arrancar si el primer disco falla, instala el MBR de GRUB en el otro disco. Abre un shell de grub como root:

# grub

En el prompt de grub:

grub> root (hd1,0)

Deberías ver un mensaje del tipo:

Filesystem type is ext2fs, partition type is 0xfd

Luego ejecuta:

grub> setup (hd1)

Salida de ejemplo (resumen):

Checking if "/boot/grub/stage1" exists ... no
Checking if "/grub/stage1" exists ... yes
Checking if "/grub/stage2" exists ... yes
Checking if "/grub/e2fs_stage1_5" exists ... yes
Running "embed /grub/e2fs_stage1_5 (hd1)" ... 16 sectors embedded.
succeeded
Running "install /grub/stage1 (hd1) (hd1)1+16 p (hd1,0)/grub/stage2 /grub/grub.conf"... succeeded
Done.

Repite el proceso en el primer disco:

grub> root (hd0,0)
grub> setup (hd0)
grub> quit

Reinicia para comprobar:

reboot

Si el arranque funciona, prueba desconectando el disco primario (por ejemplo sda) y confirma que el sistema arranca únicamente desde el segundo disco. Luego viceversa: reconecta sda y desconecta sdb para verificar que también arranca desde el otro disco.

7) Mejoras posteriores: rendimiento y redundancia

Sugerencias prácticas:

  • Ajusta read-ahead y scheduler si buscas rendimiento (ej.: tune2fs, blockdev –setra).
  • Revisa /etc/mdadm/mdadm.conf y actualiza el ARRAY con –detail –scan para persistencia.
  • Configura alertas por correo o monitoring para eventos mdadm (mdadm –monitor).
  • Considera usar GRUB2 si necesitas características modernas (mejor gestión de UUID, soporte para LVM, RAID más complejo).

Nota: cambios avanzados requieren pruebas en entorno de staging.

Lista de comprobación rápida (para el administrador)

  • Copia de seguridad de /etc/fstab y /boot/grub/menu.lst
  • UUIDs verificados con blkid
  • fstab en /mnt/raid actualizado y copiado a /etc/fstab
  • menu.lst actualizado y copiado a /boot/grub/menu.lst
  • BIOS apuntando al disco esperado
  • Particiones del disco antiguo cambiadas a tipo 0xfd
  • Particiones añadidas a md con mdadm -a
  • Sincronización de md en /proc/mdstat completada
  • MBR de GRUB instalado en ambos discos
  • Pruebas de desconexión de discos realizadas

Runbook de incidentes rápido

Si el sistema no arranca después de estas operaciones:

  1. Arranca desde un LiveCD o modo rescate.
  2. Monta la partición raíz del array: mount /dev/md1 /mnt/raid
  3. Comprueba /mnt/raid/etc/fstab por errores de UUID o sintaxis.
  4. Revisa /mnt/raid/boot/grub/menu.lst y /boot/grub/menu.lst para rutas de kernel incorrectas.
  5. Reinstala GRUB en el disco que quieras que arranque: grub -> root (hdX,0) -> setup (hdX).
  6. Si md no está activo, reconstruye arrays con mdadm –assemble –scan.

Mini-metodología para migraciones RAID seguras

  1. Preparación: inventario de particiones y UUIDs, copia de seguridad.
  2. Prueba en staging: simular corte de disco y recuperación.
  3. Ejecución en producción: montar copia, actualizar fstab y grub, reiniciar.
  4. Validación: comprobar arranque, sincronización y redundancia.
  5. Documentación: anotar cambios, guardar mdadm.conf y copias de seguridad.

Glosario (una línea cada término)

  • mdadm: herramienta para gestionar arrays RAID en Linux.
  • UUID: identificador universal único para sistemas de archivos.
  • MBR: registro de arranque maestro, necesario para arrancar sistemas con BIOS.
  • GRUB clásico: gestor de arranque legacy; distinto de GRUB2.

Riesgos y mitigaciones

  • Riesgo: error en /etc/fstab que impide el arranque. Mitigación: mantener una copia y probar con LiveCD.
  • Riesgo: partición equivocada modificada. Mitigación: verificar con fdisk -l antes y después, y usar nombres persistentes si es posible.
  • Riesgo: fallo al instalar GRUB. Mitigación: probar instalación en ambos discos y comprobar con desconexiones controladas.

Resumen

Sigue los pasos descritos para apuntar /etc/fstab a UUIDs del array RAID, actualizar GRUB en la copia RAID, convertir el disco antiguo en miembro del RAID y asegurar que el MBR de GRUB esté instalado en ambos discos. Verifica sincronización en /proc/mdstat y realiza pruebas de desconexión para confirmar tolerancia a fallos.

Notas: si tu sistema usa GRUB2 o LVM, adapta los pasos a las peculiaridades de esas configuraciones.

Autor
Edición

Materiales similares

Cómo encontrar dirección y teléfono en línea
Guías prácticas

Cómo encontrar dirección y teléfono en línea

Actualizar tu Chromebook: guía rápida y segura
Chromebooks

Actualizar tu Chromebook: guía rápida y segura

Búsqueda inversa de vídeo: cómo encontrar un clip
Tecnología

Búsqueda inversa de vídeo: cómo encontrar un clip

Solución al error Connecting Services en FAU-G
Juegos móviles

Solución al error Connecting Services en FAU-G

Phishing en móviles: tipos y defensa
Seguridad

Phishing en móviles: tipos y defensa

Arranque desde RAID: actualizar fstab y GRUB
Linux

Arranque desde RAID: actualizar fstab y GRUB