Configuración LVM · 6 min read · Feb 02, 2026

Configurar un sistema LVM Raid1 completamente cifrado (Lenny) - Página 7

Agregando el segundo disco

Paso 1: Copiando el esquema de particiones

Así que, una vez que todo está instalado y tienes un nuevo servidor reluciente frente a ti, es hora de agregar también el segundo disco. Hasta ahora he utilizado un disco de 8GB. Después de apagar, he agregado un nuevo disco de 16GB. Sin embargo, ese disco no está sincronizado directamente. Primero tenemos que hacer algunas cosas.

Antes de comenzar a alterar la tabla de particiones del segundo disco, primero verifico el estado del arreglo emitiendo este comando

watch -n 6 cat /proc/mdstat

Obtengo una salida como esta:

Cada 6.0s: cat /proc/mdstat                                                                                                            Dom Nov 30 19:15:15 2008
Personalidades : [raid1]
md3 : raid1 activo sda4[0]
      4208960 bloques [2/1] [U_]
md2 : raid1 activo sda3[0]
      2931776 bloques [2/1] [U_]
md1 : raid1 activo sda2[0]
      995904 bloques [2/1] [U_]
md0 : raid1 activo sda1[0]
      248896 bloques [2/1] [U_]
devices no utilizados: 

Como puedes ver, solo uno de los dos dispositivos raid activos está actualmente en uso. Esto significa que puedo (debo) agregar otro para asegurarme de que si un disco falla, todo siga operativo. Sal de la monitorización con “ctrl-c”.

Tengo que averiguar qué disco duro es cuál (cómo se llaman). Emito:

fdisk -l

Y obtengo esta salida:

test:~# fdisk -l
Disco /dev/sda: 8589 MB, 8589934592 bytes
255 cabezas, 63 sectores/pista, 1044 cilindros
Unidades = cilindros de 16065 * 512 = 8225280 bytes
Identificador de disco: 0x000d3f5d
   Dispositivo Arranque      Inicio         Fin      Bloques   Id  Sistema
/dev/sda1   *           1          31      248976   fd  Linux raid autodetect
/dev/sda2              32         155      996030   fd  Linux raid autodetect
/dev/sda3             156         520     2931862+  fd  Linux raid autodetect
/dev/sda4             521        1044     4209030   fd  Linux raid autodetect
Disco /dev/sdb: 17.1 GB, 17179869184 bytes
255 cabezas, 63 sectores/pista, 2088 cilindros
Unidades = cilindros de 16065 * 512 = 8225280 bytes
Identificador de disco: 0x00000000
El disco /dev/sdb no contiene una tabla de particiones válida
Disco /dev/md0: 254 MB, 254869504 bytes
2 cabezas, 4 sectores/pista, 62224 cilindros
Unidades = cilindros de 8 * 512 = 4096 bytes
Identificador de disco: 0x00000000
El disco /dev/md0 no contiene una tabla de particiones válida
Disco /dev/md1: 1019 MB, 1019805696 bytes
2 cabezas, 4 sectores/pista, 248976 cilindros
Unidades = cilindros de 8 * 512 = 4096 bytes
Identificador de disco: 0x93b342d4
El disco /dev/md1 no contiene una tabla de particiones válida
Disco /dev/md2: 3002 MB, 3002138624 bytes
2 cabezas, 4 sectores/pista, 732944 cilindros
Unidades = cilindros de 8 * 512 = 4096 bytes
Identificador de disco: 0x08040000
El disco /dev/md2 no contiene una tabla de particiones válida
Disco /dev/md3: 4309 MB, 4309975040 bytes
2 cabezas, 4 sectores/pista, 1052240 cilindros
Unidades = cilindros de 8 * 512 = 4096 bytes
Identificador de disco: 0x08040000
El disco /dev/md3 no contiene una tabla de particiones válida
Disco /dev/dm-0: 3001 MB, 3001085952 bytes
255 cabezas, 63 sectores/pista, 364 cilindros
Unidades = cilindros de 16065 * 512 = 8225280 bytes
Identificador de disco: 0x00000000
El disco /dev/dm-0 no contiene una tabla de particiones válida
Disco /dev/dm-1: 1019 MB, 1019805696 bytes
255 cabezas, 63 sectores/pista, 123 cilindros
Unidades = cilindros de 16065 * 512 = 8225280 bytes
Identificador de disco: 0xb604b75d
El disco /dev/dm-1 no contiene una tabla de particiones válida
Disco /dev/dm-2: 4308 MB, 4308922368 bytes
255 cabezas, 63 sectores/pista, 523 cilindros
Unidades = cilindros de 16065 * 512 = 8225280 bytes
Identificador de disco: 0x00000000
El disco /dev/dm-2 no contiene una tabla de particiones válida
Disco /dev/dm-3: 4307 MB, 4307550208 bytes
255 cabezas, 63 sectores/pista, 523 cilindros
Unidades = cilindros de 16065 * 512 = 8225280 bytes
Identificador de disco: 0x00000000
El disco /dev/dm-3 no contiene una tabla de particiones válida

Podemos ver que /dev/sda es el disco actualmente en uso y /dev/sdb es el nuevo disco que acabo de agregar. Como el nuevo disco es más grande (nota: ¡NO USE UN DISCO MÁS PEQUEÑO!), significa que solo usamos parcialmente el espacio disponible en él. Aunque al ejecutar un raid1 no podemos usar más espacio que el del disco/partición más pequeño de todos modos, sin embargo, si el primer disco falla, entonces puedes conseguir también uno más grande y expandir el espacio allí. Así que emite este comando:

sfdisk -d /dev/sda | sfdisk /dev/sdb

Paso 2: Modificando el esquema de particiones

Emite ahora el siguiente comando para ajustar la partición “data” allí. Las otras tres particiones (/boot, swap, /) deberían haber sido lo suficientemente grandes durante la configuración:

cfdisk /dev/sdb

Usa las teclas de flecha para navegar. Selecciona la partición 4 (sdb4) y luego elimínala.

Luego crea una nueva partición en el espacio libre. Hazla primaria y permite que use todo el espacio.

Verás que crea una nueva “sdb4” y su tipo es “Linux” pero no “Linux raid autodetect”. Selecciona el “Tipo” (mientras aún tienes seleccionada sdb4) y entra como tipo de sistema de archivos: FD. Ahora estás de vuelta en la primera pantalla y el tipo de partición se ha alterado a “Linux raid autodetect”.

Ahora selecciona la opción “Escribir” y confírmala con “sí”. Luego puedes salir de la herramienta cfdisk.

Paso 3: Poniendo a cero el superbloque

Solo para asegurarnos de que ponemos a cero el superbloque en cada partición del nuevo disco:

mdadm --zero-superblock /dev/sdb1  
mdadm --zero-superblock /dev/sdb2  
mdadm --zero-superblock /dev/sdb3  
mdadm --zero-superblock /dev/sdb4

Recibirás muchos errores - lo cual es bueno si es un nuevo disco que no ha sido usado antes.

Paso 4: Agregando las nuevas particiones al arreglo raid

Ahora ejecuta esos comandos:

mdadm --add /dev/md0 /dev/sdb1  
mdadm --add /dev/md1 /dev/sdb2  
mdadm --add /dev/md2 /dev/sdb3  
mdadm --add /dev/md3 /dev/sdb4

Esto agregará las nuevas particiones a los arreglos correspondientes y comenzará a sincronizarlas. Puedes ver el progreso con:

watch -n 6 cat /proc/mdstat

Paso 5: Agregar grub al nuevo disco duro

Como grub se instala solo una vez y no se refleja en el comando anterior, tenemos que agregar grub manualmente. Ejecuta:

grub

Luego ejecuta en el prompt de grub:

root (hd1,0)  
setup (hd1)

El primer comando significa que grub debe usar la partición /dev/sdb1 como partición /boot. El segundo comando significa que grub debe instalarse en el sector de arranque de /dev/sdb. Grub comienza a contar discos duros y particiones con “0”. Así que sda sería hd0 y por lo tanto sdb es hd1.

Sal de grub ingresando “quit” y ahora tienes una configuración raid1 cifrada con lvm. Cada partición puede funcionar sola.

Expandir el LVM

En caso de que tu disco duro más pequeño falle y agregues uno nuevo más grande, entonces querrás expandir el tamaño a su máximo. Te diré muy brevemente cómo se puede hacer esto con XFS. Primero, ejecutas:

mdadm --grow /dev/md3 --size=max

Recuerda: /dev/md3 es nuestra partición /data. Con este comando, el arreglo raid se expandirá a su máximo. Antes de que el disco duro más pequeño fallara, no se había configurado a su máximo en el más grande. Después de eso reinicia el sistema (sé que hay formas de hacerlo sin reiniciar, pero esto simplemente lo hace mucho más simple).

Una vez que hayas reiniciado, ejecuta este comando:

pvresize /dev/mapper/md3_crypt

Después de eso, tienes que averiguar cuánto puedes expandir el tamaño. Ejecuta este comando:

vgdisplay -A

Esto mostrará algunas cosas sobre el LVM. Necesitas buscar esta línea aquí:

Free PE / Size  xxxxxxx / yyyy GB

El valor de “xxxxxxx” es importante. Ejecuta el siguiente comando y reemplaza “xxxxxxx” con el valor real. Asegúrate también de usar el nombre correcto del volumen lógico. El que creé es “DATA-DATA_MD3.

lvextend -l +xxxxxxx /dev/mapper/DATA-DATA_MD3

Si no estás seguro sobre el nombre de tu volumen lógico, ejecuta este comando para listar todos los mapeadores:

ls /dev/mapper

Una vez que ejecutes eso, el paso final es ampliar el sistema de archivos real. XFS hace esto muy fácil:

xfs_growfs /data
Share: X/Twitter LinkedIn

Recibe nuevas publicaciones en tu bandeja de entrada.

No spam. Cancela la suscripción en cualquier momento.