%3A%20A%20instala%C3%A7%C3%A3o%20de%20um%20software%20RAID%201%20falha%20com%20erro%20grub.png)
Há algum tempo venho tentando configurar um novo sistema de servidor com RAID 1 como fonte de inicialização. Esse RAID consiste em dois discos rígidos de 4 TB. Então eu inicializo a partir de um pendrive que preparei com a imagem de instalação do Debian 12. No começo tudo funciona normalmente. Eu configuro a rede e crio os dois primeiros usuários. Quando se trata da parte de particionamento, eu seleciono a forma manual
Na próxima tabela vejo minhas duas unidades de 4 TB e o dispositivo de inicialização USB, o disco rígido SCSI9 é um sobressalente de emergência, não vou usá-lo aqui. Eu escolho configurar o software RAID
Eu escolho criar um dispositivo MD
Eu seleciono RAID 1
2 dispositivos RAID
0 Dispositivos sobressalentes
Eu seleciono meus 2 discos livres
Mais uma vez, de volta ao particionamento. Desta vez eu seleciono o modo guiado
Todos os arquivos em uma partição
Eu seleciono meu novo dispositivo RAID
Após um ou dois minutos, o novo RAID particionado aparece. Parece promissor...
Confirmo as alterações e o sistema começa a obter e instalar o restante do sistema operacional e todos os utilitários. Este processo é bem projetado e bastante simples até agora. O único problema: não termina. :-( Quando se trata de instalar o GRUB (2 horas depois), ele morre... Não encontrei nenhuma maneira de ir além desse ponto.Qual é o meu erro e como posso consertar isso?
Eu tentei muitas variações dos resultados de extensas pesquisas na Internet, todas com o mesmo resultado. Este foi o mais promissor: pular parte do processo de instalação e gerar manualmente o array com mdadm: https://www.server-world.info/en/note?os=Debian_12&p=raid1
Adicionando
Responder1
4T requer o uso de GPT, e você não pode ter um RAID particionável de disco inteiroetorne os discos reconhecíveis pelo BIOS para inicializar (estritamente impossível com EFI, não tão estritamente com legado, mas isso exigirá magia negra que você não quer saber).
(É uma pena que o instalador do Debian tenha aceitado esse esquema. Não deveria, é estritamente inválido e não poderia funcionar.)
Isso ocorre porque a tabela de partição GPT é armazenada no início e no final do dispositivo. Quando o RAID de disco inteiro é usado e visto sem a interpretação adequada dos metadados MD, ambas as cópias GPT nunca acontecem simultaneamente:
- para o superbloco MD v1.0, o segundo GPT (no final) estará faltando (movido anteriormente, para um lugar que o BIOS não espera);
- para superblocos MD v1.1 e v1.2, o primeiro GPT (no início) será alterado para que o firmware não o encontre.
De qualquer forma, ele não reconhecerá os discos como tendo uma tabela de partição válida e se recusará a inicializar a partir deles.
Além disso, se você quiser inicializar com UEFI, você precisa saber que o firmware EFI não tem idéia de que o ESP possa ser um RAID de software (não há nada sobre isso nas especificações). Então não deve. ESP deve ser sempre uma partição GPT simples.
Então, para resolver isso, em vez de criar um RAID e depois particionar, primeiro você particiona os discos e depois coleta algumas partições em RAIDs. Embora isso seja discutível, sugiro o seguinte esquema:
- para instalação EFI: um ESP (tipo 1) de 511MiB (deslocamento padrão 1MiB), depois 512MiB para /boot do tipo Linux RAID, depois o resto para o resto do tipo Linux RAID (este é o tipo 29 no fdisk se não me engano ).
- para instalação herdada: 1 MiB (tipo 4 — biosgrub), inicialização de 510 MiB (RAID) e o restante RAID.
Em seguida, você cria dois RAIDs (/boot e o restante) e seleciona um dos ESPs para ser "o ESP". Você ativará a inicialização a partir do segundo disco após a instalação. E então você cria o LVM no grande RAID, para armazenar sistemas de arquivos; lá você pode criar volume de swap, volume raiz FS (30 GiB é suficiente para o Debian e é fácil de ampliar rapidamente; observe que você colocará todos os dados em outros volumes dedicados montados - não é bom armazenar dados do aplicativo no volume raiz ). O restante pode ser criado conforme necessário, durante a vida útil do sistema.
Então você instala o sistema normalmente. Deve criar FAT32 na partição ESP; O instalador do Debian 11 teve problemas com isso, então tive que criá-lo manualmente; Não sei há 12 anos, já que não fiz essa instalação, apenas atualizações. Quando se trata de instalação do bootloader, basta fazer o que sugere para EFI, enquanto para legado você pode simplesmente repetir esta etapa e instalá-lo duas vezes, selecionando o segundo disco na segunda vez, para que seja redundante inicializável imediatamente.
Para EFI, após a primeira inicialização do sistema, você precisa criar manualmente o arquivo do sistema de arquivos FAT32 na segunda partição "ESP", montá-lo em algum lugar (eu uso /boot/efi2) e copiar tudo de /boot/efi, mantendo a estrutura. Em seguida, você cria uma segunda entrada de inicialização de firmware usando efibootmgr
,aquisão as instruções.
Responder2
Feito... Obrigado, Nikita por apontar na direção certa! Aqui está uma receita rápida de como funcionou para mim (omiti algumas confirmações "você realmente deseja reparticionar seus discos"):
- Vá para a configuração do BIOS da placa principal e desative todas as coisas UEFI.
- Inicialize a partir do pendrive com a imagem de instalação do Debian 12.
- Inicie a "Instalação gráfica".
- Execute os primeiros passos (instalação de rede, etc.) normalmente.
- Quando o instalador chegar em “Discos de partição”, escolha “Manual”.
- Exclua todas as partições antigas das suas duas unidades de destino.
- Crie uma nova partição na primeira unidade de destino. Quando solicitado o tamanho, coloque “1MB”. Coloque a partição no “Início” do espaço disponível. Altere a configuração "Usar como" para "Área reservada de inicialização do BIOS".
- Crie uma nova partição na primeira unidade de destino. Quando questionado sobre o tamanho, coloque "max". Altere a configuração "Usar como" para "volume físico para RAID".
- Repita as duas últimas etapas para a segunda unidade de destino.
- De volta ao menu de particionamento, selecione "Configurar RAID de software". Selecione "Criar dispositivo MD". Selecione "RAID1". Dispositivos ativos são "2". Dispositivos sobressalentes são "0". Em seguida, selecione as duas partições RAID preparadas anteriormente. Deixe a configuração do RAID com "Concluir"
- De volta ao menu de particionamento, selecione "Particionamento guiado". Selecione "Guiado - use o disco inteiro e configure o LVM". Selecione o dispositivo RAID que você preparou anteriormente. Selecione "Todos os arquivos em uma partição". Questionado sobre o tamanho do LVM, responda “max”.
Sua lista de partições agora deve ser parecida com isto. Selecione "Concluir o particionamento e gravar as alterações no disco".
- Se tudo correr bem, seu sistema iniciará o processo de instalação padrão do Debian (que pode demorar um pouco). Você responde às perguntas exatamente como faria em um processo normal de instalação.
- Acorde mais uma vez quando se trata de escrever o GRUB em seus discos: escreva uma vez no primeiro disco de destino e depois volte e faça o mesmo para o segundo disco de destino.
- O resto do procedimento é padrão...
- Você pode verificar o status do seu RAID (incluindo o progresso do processo de sincronização) iniciando
watch cat /proc/mdstat
a partir da linha de comando.