Instalar Ubuntu 8.04 com RAID1 por software
Objetivo principal
Instalar e configurar RAID1 por software no instalador do Ubuntu 8.04 para obter espelhamento de blocos entre dois discos, garantindo redundância do sistema e continuidade de operação em caso de falha de unidade.
Antes de começar — pré-requisitos
- Dois discos rígidos instalados no servidor (por exemplo /dev/sda e /dev/sdb).
- Mídia de instalação do Ubuntu 8.04 (CD/DVD ou imagem de rede).
- Conhecimentos básicos de particionamento e linha de comando Linux.
- Backup válido dos dados críticos (RAID não substitui backups).
Importante: RAID1 protege contra falha de hardware de um disco, mas não substitui backups contra corrupção de dados, erro humano, ou falha de todo o sistema (por exemplo, incêndio, roubo ou falha da controladora).
Visão geral do que faremos
- Criar partições idênticas em ambos os discos e marcá-las como “physical volume for RAID” no instalador.
- Configurar dispositivos MD (md0 para / e md1 para swap) durante a instalação.
- Instalar e configurar GRUB em ambos os discos para tornar cada unidade inicializável.
- Monitorar o estado do array e aprender a remover/adicionar discos com mdadm.
- Substituir um disco falho e re-sincronizar o array.
Termos rápidos
- RAID1: espelhamento de dados entre discos; todos os blocos são duplicados.
- mdadm: utilitário do Linux para administrar arrays RAID por software.
- /proc/mdstat: pseudo-arquivo que mostra o status atual dos arrays RAID.
Passo a passo durante a instalação do Ubuntu
- No diálogo “Particionar discos” do instalador, escolha “Editar a tabela de partições manualmente”.
- Selecione o primeiro disco (/dev/sda).
- Aceite “Criar uma nova tabela de partições vazia neste dispositivo?”.
- Crie uma partição primária grande o bastante para o sistema raiz (/).
- Em “Como usar esta partição”, selecione “physical volume for RAID” — não escolha Ext3 aqui.
- Marque esta partição como bootable.
- Crie outra partição primária com o espaço restante para swap.
- Em “Como usar esta partição”, selecione novamente “physical volume for RAID” — não escolha “swap area” ainda.
- Repita os passos 2–5 para o segundo disco (/dev/sdb), garantindo partições idênticas e marcando a partição raiz como bootable em ambos.
- Na caixa principal “Particionar discos”, selecione “Configurar RAID por software”.
- Quando for perguntado “Escrever as mudanças nos dispositivos de armazenamento e configurar RAID?” selecione “Sim”.
- Em “Ações de configuração multiss disco” escolha “Criar dispositivo MD”.
- Em “Tipo de dispositivo multidisco” selecione “RAID1”.
- Em “Número de dispositivos ativos” digite 2. Em “Número de dispositivos spares” digite 0.
- Ao selecionar dispositivos ativos, escolha /dev/sda1 e /dev/sdb1 para o primeiro array (md0).
- Crie o segundo dispositivo MD para as partições de swap: escolha /dev/sda2 e /dev/sdb2 (md1).
- Quando terminar, escolha “Concluir” na configuração de RAID.
Agora configure os dispositivos MD como sistemas de arquivos reais:
- No diálogo “Particionar discos”, selecione o dispositivo RAID #0 (md0) e configure-o como Ext3 montado em /.
- Configure o dispositivo RAID #1 (md1) como área de swap.
Observação: se você preferir ext4 (não disponível por padrão no 8.04), siga com Ext3 conforme as opções do instalador da época.
Tornando todos os discos inicializáveis (instalar GRUB em cada disco)
Após a primeira inicialização do sistema recém-instalado, execute os comandos do GRUB para instalar o carregador no segundo disco:
grub
device (hd1) /dev/sdb
root (hd1,0)
setup (hd1)
quit
Esses passos carregam o prompt do grub legacy e instalam o setor de boot do GRUB no disco /dev/sdb (hd1). Repita para cada disco que você queira tornar inicializável.
Importante: em sistemas com BIOS/UEFI diferentes, o procedimento difere. O Ubuntu 8.04 usa GRUB Legacy; em versões modernas use grub-install e update-grub.
Adicionando uma entrada de emergência no menu do GRUB
Edite /boot/grub/menu.lst para incluir uma entrada de boot alternativa caso /dev/sda falhe. Exemplo:
vi /boot/grub/menu.lst
Adicione uma entrada como esta (ajuste nomes de kernel/initrd conforme a sua instalação):
### Para inicializar se sda falhar ###
title Ubuntu 8.04.1, kernel 2.6.24-19-generic /dev/sda fail
root (hd1,0)
kernel /boot/vmlinuz-2.6.24-19-generic root=/dev/md0 ro quiet splash
initrd /boot/initrd.img-2.6.24-19-generic
### Fim mod ###
Depois de salvar, reinicie e teste a entrada do menu para confirmar que o sistema inicializa a partir do segundo disco.
Monitoramento e manutenção básica do array
Por que monitorar: discos podem apresentar degradação gradual (erros de seek) antes de falhar completamente. O kernel pode não remover automaticamente unidades lentas; por isso a vigilância humana e ferramentas automáticas são essenciais.
Comandos úteis:
cat /proc/mdstat
mdadm --query --detail /dev/md0
mdadm --query --detail /dev/md1
Use smartctl (do pacote smartmontools) para checar o SMART de cada disco:
sudo smartctl -a /dev/sda
sudo smartctl -a /dev/sdb
Nota: SMART pode indicar problemas, mas nem sempre avisa antes de uma falha súbita.
Marcar e remover manualmente uma unidade com problemas
Se um disco estiver se comportando mal (erros de I/O, mensagens de kernel), marque as partições correspondentes como failed e remova-as do array:
mdadm --fail /dev/md0 /dev/sda1
mdadm --fail /dev/md1 /dev/sda2
mdadm --remove /dev/md0 /dev/sda1
mdadm --remove /dev/md1 /dev/sda2
Após remover as partições, é seguro desligar o servidor e substituir o disco.
Substituindo um disco falho — playbook (SOP)
Checklist rápido (pré-substituição):
- Verifique /proc/mdstat e o status do array.
- Garanta que você tem um disco de reposição com mesma capacidade ou maior.
- Confirme que há backup atualizado.
Passos detalhados:
- Marcar as partições do disco defeituoso como failed e remove-las (conforme comandos acima).
- Desligue o servidor e substitua o disco fisicamente.
- Ligue o servidor com o novo disco instalado.
- Criar partições idênticas no novo disco:
- Método manual: fdisk / cfdisk e recriar partições com os mesmos tamanhos e tipos (código fd para RAID).
- Método para discos idênticos: copiar a tabela de partições do disco bom para o novo com sfdisk:
sudo sfdisk --dump /dev/sdb | sudo sfdisk /dev/sda
Aviso: confirme cuidadosamente origem e destino para não sobrescrever o disco bom.
- Adicionar as novas partições ao array:
mdadm --add /dev/md0 /dev/sda1
mdadm --add /dev/md1 /dev/sda2
- Monitorar a ressincronização:
watch -n5 cat /proc/mdstat
- Depois de sincronizado, verifique o status detalhado com mdadm –detail e teste de boot de cada disco.
Observação: o kernel faz a ressincronização utilizando ciclos ociosos; em servidores muito ativos a perda de performance pode ser maior e o processo pode demorar.
Criar novo array usando espaço livre
Se restar espaço livre em ambos os discos e você quiser criar outro array (por exemplo md3), crie partições com código fd e execute:
sudo mdadm --create --verbose /dev/md3 --level=1 --raid-devices=2 /dev/sda5 /dev/sdb5
Ajuste IDs de partição conforme seu layout.
Quando RAID1 por software funciona bem e quando evitar
Quando usar RAID1 por software:
- Servidores onde espelhamento simples é necessário.
- Custo e flexibilidade são prioridades sobre controladoras RAID caras.
- Ambientes Linux com administração experiente.
Quando evitar RAID por software:
- Quadro onde a controladora RAID oferece funcionalidades específicas de cache/outras redundâncias imprescindíveis.
- Quando é necessário suporte do fornecedor para a controladora (SLA).
Contraexemplo: se você precisa de RAID5 com hot-spare e integração com controladora hardware para arrays grandes, pode preferir hardware.
Árvore de decisão (Mermaid) — fluxo básico de ação ao detectar um disco problemático
flowchart TD
A[Detectou erro no disco?] -->|Não| B[Continuar monitoramento com mdadm e smartctl]
A -->|Sim| C[Verificar logs e /proc/mdstat]
C --> D{Erro crítico ou repetitivo?}
D -->|Sim| E[Marcar partição como failed e remover do array]
D -->|Não| F[Agendar manutenção e monitorar mais de perto]
E --> G[Substituir disco fisicamente]
G --> H[Copiar tabela de partições 'sfdisk' ou recriar 'fdisk']
H --> I[Adicionar partições com mdadm --add]
I --> J[Monitorar ressincronização e testar boot]
Papel e responsabilidades — checklist por função
Administrador (instalação e arquitetura):
- Planejar layout de disco e esquema de particionamento.
- Validar esquema de backup e recuperação.
- Garantir que GRUB esteja instalado em ambos os discos.
Operador de TI (substituição e troca rápida):
- Executar playbook de substituição.
- Monitorar /proc/mdstat e reportar progresso.
- Coletar logs e alertas para escalonamento.
Equipe de Segurança/Compliance:
- Garantir que trocas de hardware sejam registradas.
- Confirmar que dados em discos defeituosos sejam descartados de forma segura.
Matriz de riscos e mitigação (qualitativa)
- Risco: Ambos os discos falham quase simultaneamente. Mitigação: backups off-site e testes de restauração.
- Risco: Erro humano ao usar sfdisk sobrescrevendo disco bom. Mitigação: procedimentos verificáveis e pares operacionais (peer review).
- Risco: Perda de boot após substituir disco. Mitigação: instalar GRUB em ambos os discos e testar reversão antes de produção.
Testes de aceitação (verificação pós-instalação)
- O sistema inicializa com / montado a partir de /dev/md0.
- Com um disco removido fisicamente (ou marcado failed), o sistema continua operando e /proc/mdstat mostra estado degradado.
- Após substituição e re-add, o array ressincroniza e retorna ao estado “clean”.
Dicas práticas e armadilhas comuns
- Sempre confirme números de dispositivo (/dev/sda, /dev/sdb). Em máquinas com controladoras diferentes a ordem pode variar.
- Em servidores com hot-swap, você pode remover fisicamente o disco depois de marcá-lo como removed.
- Não confie somente no SMART; combine logs do kernel, mdadm e SMART.
- Se o disco novo tiver capacidade ligeiramente maior, ainda assim funciona — apenas garanta que as partições cubram o mesmo espaço ou maior.
Mini-metodologia para implantação segura em produção
- Planejar: documente layout, partições e pontos de recuperação.
- Testar: fazer um teste completo em ambiente de laboratório (incluir substituição de disco).
- Implementar: executar durante janela de manutenção se possível.
- Monitorar: ativar alertas por email com mdadm –monitor ou sistema de monitoramento central.
Checklist rápido para emergência
- Verificar /proc/mdstat
- Verificar logs em /var/log/syslog ou dmesg
- Marcar partição como failed se houver confirmação
- Remover partição do array
- Substituir disco e copiar tabela de partição
- Adicionar partições com mdadm –add
- Monitorar ressincronização
FAQ (perguntas rápidas)
O que acontece se ambos os discos falharem?
RAID1 não protege contra falha simultânea de ambos os discos. Tenha backups externos e procedimentos de restauração.
Posso usar este guia em versões mais novas do Ubuntu?
Conceitualmente sim, mas ferramentas e procedimentos mudaram (GRUB2, ext4, instalador diferente). Adapte comandos para a versão moderna.
Preciso de hardware especial para RAID por software?
Não. RAID por software usa o kernel e mdadm; placas controladoras RAID não são necessárias.
Resumo final
RAID1 por software no Ubuntu 8.04 é uma solução econômica e flexível para espelhamento de disco. Requer cuidado ao particionar durante a instalação, instalação do GRUB em todos os discos, monitoramento contínuo (mdadm, smartctl) e procedimentos claros para substituir discos falhos. Com planejamento e testes, você terá redundância eficaz sem custos de controladora hardware.
Importante: RAID reduz o risco de interrupção causada por falha de disco único, mas não elimina a necessidade de backups adequados.
Glossário rápido (uma linha cada)
- mdadm: utilitário para criar e administrar arrays RAID no Linux.
- /proc/mdstat: arquivo virtual que mostra o estado atual dos MD devices.
- GRUB: carregador de boot (no Ubuntu 8.04 é GRUB Legacy).
Materiais semelhantes

Perda de pacotes em FFXI: diagnóstico e correção

Backup de Email Office 365: Guia prático

Mensagens ocultas no Facebook: onde estão e como ver
Instalar Ubuntu 8.04 com RAID1 por software
Migrar para RAID1: guia prático e seguro
