Preparar GRUB y /dev/sda para RAID1 en un sistema LVM en ejecución
Resumen rápido
- Instala GRUB en el segundo disco (/dev/sdb) y asegúrate de hacerlo también en /dev/sda más adelante.
- Cambia el tipo de partición de /dev/sda1 a “Linux raid autodetect” y añade /dev/sda1 a /dev/md0 con mdadm.
- Actualiza /etc/mdadm.conf con mdadm –examine –scan y reinicia para aplicar la nueva tabla de particiones.
Preparando GRUB
A continuación instalaremos el cargador de arranque GRUB en el segundo disco duro (/dev/sdb). Desde una shell con privilegios root, ejecuta:
grub
En el intérprete de GRUB (prompt de grub), introduce los comandos siguientes tal cual:
root (hd0,0)
Salida de ejemplo en el shell de GRUB:
grub> root (hd0,0)
root (hd0,0)
Filesystem type is ext2fs, partition type 0x83
grub>
Después ejecuta:
setup (hd0)
Salida de ejemplo:
grub> setup (hd0)
setup (hd0)
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 (hd0)"... 15 sectors are embedded.
succeeded
Running "install /grub/stage1 (hd0) (hd0)1+15 p (hd0,0)/grub/stage2 /grub/grub.conf"... succeeded
Done.
grub>
A continuación apunta GRUB a la otra unidad (ej. /dev/sda) desde el propio prompt de GRUB:
root (hd1,0)
Salida de ejemplo:
grub> root (hd1,0)
root (hd1,0)
Filesystem type is ext2fs, partition type 0xfd
grub>
Instala en esa unidad:
setup (hd1)
Salida de ejemplo:
grub> setup (hd1)
setup (hd1)
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)"... 15 sectors are embedded.
succeeded
Running "install /grub/stage1 (hd1) (hd1)1+15 p (hd1,0)/grub/stage2 /grub/grub.conf"... succeeded
Done.
grub>
Para salir del prompt de GRUB:
quit
De vuelta en la shell normal, reinicia para probar que el sistema arranca correctamente desde los arreglos RAID:
reboot
Important: Si estás en un sistema UEFI moderno, este procedimiento aplica a sistemas que usan GRUB legacy o compatibilidad; en instalaciones UEFI con grub2 y particiones EFI, sigue la guía específica para instalar el cargador en la partición EFI (no cubierto aquí).
Preparando /dev/sda
Si todo ha ido bien deberías ver /dev/md0 en la salida de:
df -h
Ejemplo de salida:
[root@server1 ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/VolGroup00-LogVol00
8.6G 1.4G 6.8G 18% /
/dev/md0 99M 16M 79M 17% /boot
tmpfs 250M 0 250M 0% /dev/shm
[root@server1 ~]#
Comprueba el estado de los RAID con:
cat /proc/mdstat
Salida esperada (ejemplo):
[root@server1 ~]# cat /proc/mdstat
Personalities : [raid1]
md0 : active raid1 sdb1[1]
104320 blocks [2/1] [_U]
md1 : active raid1 sdb2[1] sda2[0]
10377920 blocks [2/2] [UU]
unused devices:
[root@server1 ~]#
También comprueba volúmenes físicos, grupo de volúmenes y volúmenes lógicos:
pvdisplay
[root@server1 ~]# pvdisplay
--- Physical volume ---
PV Name /dev/md1
VG Name VolGroup00
PV Size 9.90 GB / not usable 22.69 MB
Allocatable yes (but full)
PE Size (KByte) 32768
Total PE 316
Free PE 0
Allocated PE 316
PV UUID u6IZfM-5Zj8-kFaG-YN8K-kjAd-3Kfv-0oYk7J
[root@server1 ~]#
vgdisplay
[root@server1 ~]# vgdisplay
--- Volume group ---
VG Name VolGroup00
System ID
Format lvm2
Metadata Areas 1
Metadata Sequence No 9
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 2
Open LV 2
Max PV 0
Cur PV 1
Act PV 1
VG Size 9.88 GB
PE Size 32.00 MB
Total PE 316
Alloc PE / Size 316 / 9.88 GB
Free PE / Size 0 / 0
VG UUID ZPvC10-cN09-fI0S-Vc8l-vOuZ-wM6F-tlz0Mj
[root@server1 ~]#
lvdisplay
[root@server1 ~]# lvdisplay
--- Logical volume ---
LV Name /dev/VolGroup00/LogVol00
VG Name VolGroup00
LV UUID vYlky0-Ymx4-PNeK-FTpk-qxvm-PmoZ-3vcNTd
LV Write Access read/write
LV Status available
# open 1
LV Size 8.88 GB
Current LE 284
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 253:0
--- Logical volume ---
LV Name /dev/VolGroup00/LogVol01
VG Name VolGroup00
LV UUID Ml9MMN-DcOA-Lb6V-kWPU-h6IK-P0ww-Gp9vd2
LV Write Access read/write
LV Status available
# open 1
LV Size 1.00 GB
Current LE 32
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 253:1
[root@server1 ~]#
Cambiar el tipo de partición de /dev/sda1
Ahora hay que cambiar el tipo de partición de /dev/sda1 a “Linux raid autodetect” (código fd).
Ejecuta:
fdisk /dev/sda
Interacción de ejemplo (teclas y respuestas):
[root@server1 ~]# fdisk /dev/sda
The number of cylinders for this disk is set to 1305.
There is nothing wrong with that, but this is larger than 1024,
and could in certain setups cause problems with:
1) software that runs at boot time (e.g., old versions of LILO)
2) booting and partitioning software from other OSs
(e.g., DOS FDISK, OS/2 FDISK)
Command (m for help): <-- t
Partition number (1-4): <-- 1
Hex code (type L to list codes): <-- fd
Changed system type of partition 1 to fd (Linux raid autodetect)
Command (m for help): <-- w
The partition table has been altered!
Calling ioctl() to re-read partition table.
WARNING: Re-reading the partition table failed with error 16: Device or resource busy.
The kernel still uses the old table.
The new table will be used at the next reboot.
Syncing disks.
[root@server1 ~]#
Nota: fdisk puede advertir que la tabla de particiones no se ha vuelto a leer porque el dispositivo está en uso. El cambio se aplicará al reiniciar.
Añadir /dev/sda1 al RAID
Una vez cambiada la partición, añade /dev/sda1 a /dev/md0:
mdadm --add /dev/md0 /dev/sda1
Verifica el estado del RAID:
cat /proc/mdstat
Ejemplo tras añadir la partición:
[root@server1 ~]# cat /proc/mdstat
Personalities : [raid1]
md0 : active raid1 sda1[0] sdb1[1]
104320 blocks [2/2] [UU]
md1 : active raid1 sdb2[1] sda2[0]
10377920 blocks [2/2] [UU]
unused devices:
[root@server1 ~]#
Actualizar /etc/mdadm.conf
Regenera la configuración de mdadm para reflejar el estado actual:
mdadm --examine --scan > /etc/mdadm.conf
Comprueba el archivo:
cat /etc/mdadm.conf
Salida esperada (ejemplo):
ARRAY /dev/md0 level=raid1 num-devices=2 UUID=0a96be0f:bf0f4631:a910285b:0f337164
ARRAY /dev/md1 level=raid1 num-devices=2 UUID=f9e691e2:8d25d314:40f42444:7dbe1da1
Reinicio final
Reinicia para que la nueva tabla de particiones se aplique y para probar que el sistema arranca desde los arreglos RAID:
reboot
Si todo está correcto el sistema debería arrancar sin problemas.
Lista de verificación rápida (SRE / Sysadmin)
- Hacer copia de seguridad de datos críticos antes de modificar particiones o bootloader.
- Confirmar que los dispositivos (sda/sdb) están correctamente identificados y no cambiaron de orden.
- Instalar GRUB en ambos discos involucrados en el RAID.
- Cambiar el tipo de partición a fd para todas las particiones RAID.
- Añadir particiones al array con mdadm –add.
- Ejecutar mdadm –examine –scan > /etc/mdadm.conf y revisar.
- Reiniciar y comprobar /proc/mdstat, df -h y salida de lvm (pv/vg/lvdisplay).
Contrajemplos y cuándo falla
- Si tu sistema usa UEFI con partición EFI, instalar GRUB en MBR tradicional puede no ser suficiente; usa las herramientas del paquete grub2-efi y monta/actualiza la partición EFI.
- Si los discos cambian de orden durante el arranque (p. ej. sda y sdb se reenumeran), la instalación de GRUB puede apuntar al disco equivocado; usa identificadores persistentes (UUID, etiquetas) para reducir riesgos.
- Si hay volúmenes cifrados sobre LVM, monta/abre los volúmenes antes de ejecutar comandos que inspeccionan las PV/LV.
Alternativas y variaciones
- Usar grub-install (grub2) en lugar del prompt legacy de grub para sistemas modernos: grub-install –recheck /dev/sdX
- En entornos de producción con UEFI: instalar el cargador en la partición EFI y usar efibootmgr para gestionar entradas de arranque.
- Para entornos que no soportan raid autodetect en el arranque, se puede empaquetar initramfs que reconozca mdadm y active los arrays antes de montar root.
Heurísticas y reglas prácticas
- Siempre instala el cargador en todos los discos que forman el RAID de arranque.
- Verifica con mdadm –detail /dev/md0 si hay discrepancias en los roles (active, spare, failed).
- Usa mdadm –monitor –mail=admin@dominio para alertas proactivas (si tu infraestructura de correo está configurada).
Playbook breve (pasos ejecutables)
- Copia de seguridad.
- Instalar GRUB en /dev/sdb: ejecutar grub y realizar setup en hd0/hd1 según corresponda.
- Comprobar df -h y /proc/mdstat.
- fdisk /dev/sda: cambiar tipo de /dev/sda1 a fd y escribir.
- mdadm –add /dev/md0 /dev/sda1.
- mdadm –examine –scan > /etc/mdadm.conf.
- reboot y comprobar arranque y estado de RAID.
Criterios de aceptación
- /dev/md0 aparece en df -h y está montado como /boot (o según tu configuración).
- /proc/mdstat muestra ambos discos como [UU] en el array objetivo.
- pvdisplay/vgdisplay/lvdisplay reflejan los volúmenes LVM sin errores.
- El sistema arranca con éxito después del reinicio.
Glosario de una línea
- GRUB: cargador de arranque usado para iniciar GNU/Linux y otros sistemas.
- RAID1: espejo de particiones entre dos (o más) discos para redundancia.
- LVM: gestor de volúmenes lógicos que permite redimensionar y mover almacenamiento.
- mdadm: utilidad para crear y gestionar arreglos RAID por software en Linux.
- PV/VG/LV: volúmenes físicos, grupos de volúmenes y volúmenes lógicos en LVM.
Diagrama de decisión (flujo rápido)
flowchart TD
A[¿Disco de arranque en RAID?] -->|sí| B{¿UEFI o BIOS?}
B --> |BIOS| C[Instalar GRUB en ambos discos MBR]
B --> |UEFI| D[Instalar grub2-efi en partición EFI y registrar en efibootmgr]
A --> |no| E[Revisar diseño: quizá no necesita RAID en /boot]
C --> F[Probar arranque y comprobar /proc/mdstat]
D --> F
E --> F
Notas importantes
- Antes de modificar tablas de particiones o instalar bootloaders, asegúrate de tener un plan de recuperación y copias de seguridad.
- Si el sistema está en producción, programa una ventana de mantenimiento y notifica a los usuarios.
Resumen final
Has completado los pasos para instalar GRUB en el segundo disco, cambiar el tipo de partición de /dev/sda1 a RAID autodetect y añadirlo a /dev/md0. Actualiza /etc/mdadm.conf y reinicia para aplicar la nueva tabla de particiones. Verifica /proc/mdstat y las herramientas LVM para confirmar que los arreglos y volúmenes están en buen estado.
Materiales similares

Descargar e instalar Windows 11 25H2

Corneal Key Logger: extraer PIN desde un selfie

Arreglar touchpad que no funciona en Windows 10

Instalar BoltWire en Ubuntu 18.04
Instalar GRUB y añadir /dev/sda a RAID1 en LVM
