Configuração RAID · 6 min read · Feb 02, 2026

Configurar um Sistema LVM Raid1 Totalmente Criptografado (Lenny) - Página 7

Adicionando o segundo disco

Passo 1: Copiando o esquema de partição

Então, uma vez que tudo está instalado e você tem um novo servidor brilhante diante de você, é hora de adicionar o segundo disco. Até agora, usei um disco de 8GB. Após desligar, adicionei um novo disco de 16GB. No entanto, esse disco não está sincronizado diretamente. Primeiro, precisamos fazer algumas coisas.

Antes de começar a alterar a tabela de partição do segundo disco, primeiro verifico o status do array emitindo este comando

watch -n 6 cat /proc/mdstat

Recebo uma saída como esta:

Every 6.0s: cat /proc/mdstat                                                                                                            Dom Nov 30 19:15:15 2008
Personalities : [raid1]
md3 : active raid1 sda4[0]
      4208960 blocks [2/1] [U_]
md2 : active raid1 sda3[0]
      2931776 blocks [2/1] [U_]
md1 : active raid1 sda2[0]
      995904 blocks [2/1] [U_]
md0 : active raid1 sda1[0]
      248896 blocks [2/1] [U_]
unused devices: 

Como você pode ver, apenas um dos dois dispositivos raid ativos está atualmente em uso. Isso significa que posso (devo) adicionar outro para garantir que, se um disco falhar, tudo ainda estará operacional. Saia da monitoração com “ctrl-c”.

Preciso descobrir qual disco rígido é qual (como eles são nomeados). Eu emito:

fdisk -l

E recebo esta saída:

test:~# fdisk -l
Disk /dev/sda: 8589 MB, 8589934592 bytes
255 heads, 63 sectors/track, 1044 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x000d3f5d
   Device Boot      Start         End      Blocks   Id  System
/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
Disk /dev/sdb: 17.1 GB, 17179869184 bytes
255 heads, 63 sectors/track, 2088 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x00000000
Disk /dev/sdb doesn't contain a valid partition table
Disk /dev/md0: 254 MB, 254869504 bytes
2 heads, 4 sectors/track, 62224 cylinders
Units = cylinders of 8 * 512 = 4096 bytes
Disk identifier: 0x00000000
Disk /dev/md0 doesn't contain a valid partition table
Disk /dev/md1: 1019 MB, 1019805696 bytes
2 heads, 4 sectors/track, 248976 cylinders
Units = cylinders of 8 * 512 = 4096 bytes
Disk identifier: 0x93b342d4
Disk /dev/md1 doesn't contain a valid partition table
Disk /dev/md2: 3002 MB, 3002138624 bytes
2 heads, 4 sectors/track, 732944 cylinders
Units = cylinders of 8 * 512 = 4096 bytes
Disk identifier: 0x08040000
Disk /dev/md2 doesn't contain a valid partition table
Disk /dev/md3: 4309 MB, 4309975040 bytes
2 heads, 4 sectors/track, 1052240 cylinders
Units = cylinders of 8 * 512 = 4096 bytes
Disk identifier: 0x08040000
Disk /dev/md3 doesn't contain a valid partition table
Disk /dev/dm-0: 3001 MB, 3001085952 bytes
255 heads, 63 sectors/track, 364 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x00000000
Disk /dev/dm-0 doesn't contain a valid partition table
Disk /dev/dm-1: 1019 MB, 1019805696 bytes
255 heads, 63 sectors/track, 123 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0xb604b75d
Disk /dev/dm-1 doesn't contain a valid partition table
Disk /dev/dm-2: 4308 MB, 4308922368 bytes
255 heads, 63 sectors/track, 523 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x00000000
Disk /dev/dm-2 doesn't contain a valid partition table
Disk /dev/dm-3: 4307 MB, 4307550208 bytes
255 heads, 63 sectors/track, 523 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x00000000
Disk /dev/dm-3 doesn't contain a valid partition table

Podemos ver que /dev/sda é o disco atualmente em uso e /dev/sdb é o novo disco que adicionei agora. Como o novo disco é maior (nota: NÃO USE UM DISCO MENOR!), isso significa que usamos apenas parcialmente o espaço disponível nele. Embora, ao executar um raid1, não possamos usar mais espaço do que o menor disco/partição de qualquer forma), no entanto, se o primeiro disco falhar, você pode então obter também um maior e expandir o espaço lá. Então emita este comando:

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

Passo 2: Modificando o esquema de partição

Emita agora o seguinte comando para ajustar a partição “data” lá. As outras três partições (/boot, swap, /) devem ter sido grandes o suficiente durante a configuração:

cfdisk /dev/sdb

Use as teclas de seta para navegar. Selecione a partição 4 (sdb4) e então a exclua.

Então crie uma nova partição no espaço livre. Faça-a primária e deixe-a usar todo o espaço.

Você verá que cria uma nova “sdb4” e seu tipo é “Linux” mas não “Linux raid autodetect”. Selecione o “Tipo” (enquanto ainda tiver sdb4 selecionado) e insira como tipo de sistema de arquivos: FD. Agora você está de volta à primeira tela e o tipo de partição foi alterado para “Linux raid autodetect”.

Agora selecione a opção “Escrever” e confirme com “sim”. Então você pode sair da ferramenta cfdisk.

Passo 3: Zerar o superbloco

Apenas para ter certeza de que zeramos o superbloco em cada partição no novo disco:

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

Você receberá muitos erros - o que é bom se for um novo disco que não foi usado antes.

Passo 4: Adicionando as novas partições ao array raid

Agora execute esses 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

Isso adicionará as novas partições aos arrays correspondentes e começará a sincronizá-las. Você pode acompanhar o progresso com:

watch -n 6 cat /proc/mdstat

Passo 5: Adicionar grub ao novo disco rígido

Como o grub é instalado apenas uma vez e não espelhado pelo comando acima, precisamos adicionar o grub manualmente. Execute:

grub

Então execute no prompt do grub:

root (hd1,0)  
setup (hd1)

O primeiro comando significa que o grub deve usar a partição /dev/sdb1 como partição /boot. O segundo comando significa que o grub deve se instalar no setor de inicialização de /dev/sdb. O grub começa a contar discos rígidos e partições com “0”. Assim, sda seria hd0 e, portanto, sdb é hd1.

Saia do grub digitando “quit” e agora você tem uma configuração raid1 criptografada com lvm. Cada partição pode ser executada sozinha.

Expandindo o LVM

Caso seu disco rígido menor falhe e você adicione um novo maior, então você deseja expandir o tamanho para o seu máximo. Vou te contar muito rapidamente como isso pode ser feito com XFS. Primeiro, você executa:

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

Lembre-se: /dev/md3 é nossa partição /data. Com este comando, o array raid se expandirá para seu máximo. Antes de o disco rígido menor falhar, ele não estava definido para seu máximo no maior. Depois disso, reinicie o sistema (eu sei, há maneiras de fazer isso sem reiniciar, mas isso torna tudo muito mais simples).

Uma vez que você tenha reiniciado, execute este comando:

pvresize /dev/mapper/md3_crypt

Depois disso, você precisa descobrir em quanto pode expandir o tamanho. Execute este comando:

vgdisplay -A

Isso irá gerar algumas informações sobre o LVM. Você precisa procurar por esta linha aqui:

Free PE / Size  xxxxxxx / yyyy GB

O valor de “xxxxxxx” é importante. Execute o seguinte comando e substitua “xxxxxxx” pelo valor real. Certifique-se também de usar o nome correto do volume lógico. O que eu criei é “DATA-DATA_MD3.

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

Se você não tiver certeza sobre o nome do seu volume lógico, execute este comando para listar todos os mapeadores:

ls /dev/mapper

Uma vez que você execute isso, o passo final é aumentar o sistema de arquivos real. O XFS torna isso muito fácil:

xfs_growfs /data
Share: X/Twitter LinkedIn

Receba novas postagens na sua caixa de entrada

Sem spam. Cancele a assinatura a qualquer momento.