Início
» LINUX
»
Como configurar um array RAID 1 no Debian 12 a partir da linha de comando
Como configurar um array RAID 1 no Debian 12 a partir da linha de comando
Este procedimento cria um array de dados RAID 1 por software no Debian 12 (Bookworm) mdadm, formata o dispositivo montado como ext4 e o instala de forma persistente. Pressupõe-se que o Debian já esteja instalado em um disco de sistema separado e que os dois discos RAID estejam ociosos. Os comandos abaixo são exemplos; os nomes e tamanhos dos dispositivos devem ser verificados no servidor que você está configurando.
Aviso de perda de dados: o particionamento e a formatação podem destruir dados. Não execute esses comandos em um disco que contenha arquivos importantes. O RAID 1 espelha as gravações; ele não substitui um backup independente e não protege contra exclusão, corrupção do sistema de arquivos, roubo ou malware que altere ambas as cópias.
Antes de começar: confirme os discos de destino.
Tenha acesso root ou use o comando `root` sudoantes de cada comando administrativo.
Utilize dois discos separados, idealmente com capacidades iguais ou quase iguais. A capacidade utilizável do array é limitada pelo disco de menor capacidade.
Mantenha o sistema operacional, o carregador de inicialização e a partição do sistema EFI fora deste procedimento de matriz de dados.
Faça backup dos dados importantes e confirme se nenhum dos discos de destino está montado ou em uso.
O Debian 12 Bookworm fornece as ferramentas usadas aqui. O comportamento de mdadm` mdadm` sgdisk, `sgdisk` e `update-initramfs`update-initramfs está documentado nos manuais do Debian Bookworm para `mdadm` , `sgdisk` e `update-initramfs` . Consulte essas referências com versões diferentes caso seus pacotes instalados sejam distintos.
Como configurar RAID 1 no Debian 12
1. Identifique os discos e verifique se não estão em uso.
No exemplo abaixo, `<nome_do_disco>` /dev/sdaé o disco do sistema Debian, enquanto `<nome_do_disco>` /dev/sdbe /dev/sdc`<nome_do_disco>` são discos de dados vazios de 2 TB. Os nomes dos seus discos provavelmente serão diferentes. Verifique se o tamanho, modelo, número de série, sistema de arquivos e pontos de montagem correspondem; não identifique um disco /dev/sdXapenas pelo nome. Para um identificador persistente, inspecione ls -l /dev/disk/by-id/e correlacione cada link com o número de série impresso por `ls` lsblk.
Visão ilustrativa do terminal com o comando lsblk: o disco do sistema está montado, enquanto dois discos de dados separados aparecem sem sistemas de arquivos ou pontos de montagem. Confirme esses detalhes em seu próprio servidor antes de continuar.
2. Crie uma partição RAID Linux em cada disco vazio.
Para discos que estejam comprovadamente vazios, crie uma partição GPT em todo o espaço disponível e marque-a como Linux RAID. Aqui fd00está o código abreviado do sgdisk para Linux RAID:
Substitua os dois nomes de disco de exemplo pelos dois destinos verificados. --new=1:0:0O comando instrui o sgdisk a alocar a partição 1 no espaço disponível. As edições na tabela de partições são destrutivas se você selecionar discos com dados existentes. Se o sgdisk reportar um layout existente, partições inesperadas ou erros pouco claros, interrompa e investigue em vez de forçar a alteração. Confirme se as novas partições (normalmente `/dev` /dev/sdb1e `/ /dev/sdc1dev`) estão presentes e têm aproximadamente o mesmo tamanho.
Visão ilustrativa do terminal do sgdisk gravando uma partição RAID do Linux em cada um dos dois discos de dados selecionados. O particionamento altera os metadados do disco e deve ser direcionado apenas a unidades vazias e verificadas.
3. Instale o mdadm e os utilitários de particionamento GPT.
Atualize o índice de pacotes e instale os comandos necessários:
apt update
apt install mdadm gdisk
O gdiskpacote fornece sgdisk. Analise as alterações propostas pelo gerenciador de pacotes antes de aceitá-las, especialmente em um ambiente de produção.
Visão ilustrativa do terminal do apt instalando mdadm e gdisk dos repositórios do Debian Bookworm.
4. Crie o array RAID 1 de dois discos.
Use os dispositivos de partição, e não os discos inteiros, como membros do array. Substitua os /dev/disk/by-id/…-part1caminhos estáveis que você verificou, se disponíveis; os nomes curtos abaixo mantêm o exemplo legível:
--level=1Seleciona o espelhamento, --raid-devices=2define os dois membros e especifica explicitamente a versão 1.2 dos metadados. A criação do array grava os metadados RAID e inicia a sincronização. Não continue se o mdadm avisar que um membro contém metadados RAID existentes ou dados que você não pode contabilizar. Não responda com `--` --forcecomo atalho.
Visão ilustrativa do terminal do comando mdadm --create para um array RAID 1 de dois membros. Os nomes dos dispositivos mostrados são exemplos, não discos verificados.
5. Monitore a sincronização e verifique ambos os membros.
Verifique o progresso e o estado atual da matriz:
cat /proc/mdstat
mdadm --detail /dev/md0
Durante a sincronização inicial, /proc/mdstatpode ser exibida uma porcentagem de ressincronização e o tempo estimado; aguarde a conclusão antes de considerar o espelhamento totalmente sincronizado. Um array típico de dois membros concluído mostra [2/2] [UU], o que significa que ambos os slots de membros esperados estão presentes, enquanto mdadm --detaildeve listar dois dispositivos ativos e relatar um estado limpo. Esses indicadores descrevem a integridade do array naquele momento; eles não são uma verificação de backup nem uma garantia de que qualquer um dos discos físicos permanecerá íntegro.
Visão ilustrativa do terminal de /proc/mdstat e mdadm --detail. Um array saudável de dois membros geralmente mostra ambos os membros ativos e [2/2] [UU]; verifique a saída em tempo real no host.
6. Salve a definição da matriz para montagem na inicialização.
Solicite a definição do array ao mdadm:
mdadm --detail --scan /dev/md0
Analise a ARRAYlinha retornada e adicione-a exatamente ao arquivo `mdadm.conf` /etc/mdadm/mdadm.conf, usando um editor e preservando quaisquer entradas de array existentes. Evite adicionar cópias repetidas indiscriminadamente. O manual do `mdadm.conf` do Debian documenta este arquivo e como as definições de array suportam montagem. Em uma instalação padrão do Debian usando o `initramfs-tools`, reconstrua o `initramfs` após alterar a configuração:
update-initramfs -u
Esta atualização reinstala a imagem initramfs existente; ela não cria um backup do seu array. Se este sistema utiliza uma estrutura initramfs diferente ou uma configuração de inicialização não padrão, siga o procedimento de atualização documentado dessa estrutura.
Visão ilustrativa do terminal de uma entrada ARRAY descoberta com mdadm --detail --scan e um comando de atualização do initramfs.
7. Crie um sistema de arquivos e monte o array montado.
Somente após verificar se esse /dev/md0é o novo array, crie um sistema de arquivos ext4 nesse dispositivo:
mkfs.ext4 /dev/md0
mkdir -p /srv/raid1
mount /dev/md0 /srv/raid1
blkid /dev/md0
mkfs.ext4Apaga os dados do sistema de arquivos no seu destino. Execute-o no dispositivo de matriz montado, não em /dev/sdb1ou /dev/sdc1; formatar um membro diretamente ignoraria o espelhamento. Copie o UUID do sistema de arquivos impresso por blkid, e adicione uma linha como a seguinte a /etc/fstab, substituindo o marcador pelo UUID real:
Usar o UUID do sistema de arquivos evita depender da ordem em que o Linux descobre os discos. A opção final 2habilita a ordem normal de verificação do sistema de arquivos secundário para sistemas de arquivos ext. Se você escolher a nofailopção de montagem para que a inicialização possa continuar quando o armazenamento estiver indisponível, certifique-se de que os serviços não gravem no diretório do ponto de montagem vazio enquanto o array estiver ausente.
Visão ilustrativa do terminal mostrando a criação de um sistema de arquivos ext4 no dispositivo de matriz montado e sua instalação em /srv/raid1. A formatação apaga os dados existentes do sistema de arquivos.
8. Teste a configuração de montagem e planeje uma reinicialização controlada.
Verifique a entrada do fstab sem reiniciar e, em seguida, verifique a montagem resultante e o estado do RAID:
mount -a
findmnt /srv/raid1
df -hT /srv/raid1
cat /proc/mdstat
mdadm --detail /dev/md0
findmntO sistema de arquivos deve ser exibido /dev/md0montado no diretório /srv/raid1com o sistema de arquivos esperado. Caso contrário, corrija /etc/fstabantes de reiniciar; um erro de digitação pode interromper a inicialização ou fazer com que a montagem não seja exibida. Após a aprovação nas verificações, agende uma reinicialização controlada e repita as verificações de montagem e RAID em seguida. Este artigo não garante que um servidor específico tenha sido testado em caso de reinicialização.
Visão ilustrativa do terminal de uma entrada UUID do sistema de arquivos no fstab e no findmnt, mostrando /dev/md0 montado em /srv/raid1.
Lista de verificação rápida
Destino correto: as verificações de número de série/modelo e montagem confirmaram que os discos de dados selecionados são as unidades não utilizadas pretendidas.
Particionamento: ambas as partições membros existem e têm tamanhos semelhantes.
Saúde do array:/proc/mdstat mostra ambos os membros presentes [UU]após a sincronização e mdadm --detailreporta dois dispositivos ativos.
Sistema de arquivos e montagem:findmnt /srv/raid1 mostra o dispositivo com suporte em array e o sistema de arquivos esperado no caminho pretendido.
Persistência: a definição do array é salva em /etc/mdadm/mdadm.conf, o UUID do sistema de arquivos está em /etc/fstab, e uma reinicialização planejada confirma que ambos estão montados e configurados corretamente.
Limitações e considerações sobre a recuperação
O RAID 1 mantém uma cópia dos blocos gravados em cada membro, portanto, a falha de um único membro pode deixar o array operando em um estado degradado. Isso não significa que todos os aplicativos funcionarão normalmente ou que todas as falhas poderão ser tratadas sem tempo de inatividade. Monitore a máquina e aja prontamente em caso de alertas de disco ou array. Antes de substituir um disco com falha, use mdadm --detail /dev/md0identificadores de dispositivo estáveis para determinar qual membro foi afetado. O disco de substituição normalmente precisa ter pelo menos o mesmo tamanho do membro existente e ser particionado para corresponder ao array; adicionar a partição de substituição corretamente identificada mdadm --add /dev/md0 /dev/REPLACEMENT_PARTITIONinicia uma reconstrução. Verifique a identidade do dispositivo cuidadosamente antes de executar qualquer comando de recuperação e monitore a reconstrução até que ambos os membros retornem a um estado íntegro.
Não utilize este guia passo a passo para espelhar um sistema de arquivos raiz Debian. Uma configuração RAID raiz inicializável adiciona requisitos relacionados à Partição do Sistema EFI, instalação do carregador de inicialização, conteúdo do initramfs e testes de recuperação. Da mesma forma, não trate um espelhamento íntegro como uma cópia independente: mantenha um backup separado e versionado e teste a restauração de arquivos a partir dele. Para administração geral de RAID por software Debian, consulte a documentação do SoftwareRAID do Debian juntamente com os manuais do Bookworm versionados, cujos links estão acima.