Como posso fazer o downgrade de uma instalação do linux raid0 para usar uma partição simples?

1

Eu configurei meu desktop para usar o software RAID 0 no Ubuntu quando o configurei pela primeira vez. Porque a recuperação da atualização do ubuntu (que sempre quebra as coisas) é mais difícil com o / dev / md0 do que o / dev / sda1 que eu estava pensando em tentar desfazê-lo. Existe alguma maneira de fazer uma partição de membro raid0 uma partição ext3 sem copiar tudo e refazer o grub e initrd e tudo mais?

    
por Stu 24.10.2010 / 20:45

1 resposta

2

Como os dados em um RAID 0 são exibidos em todos os discos, basicamente não há uma maneira fácil de converter qualquer um dos discos para qualquer outro sistema de arquivos. Fim da história.

Dito isto, pode ser uma forma, se a sua matriz RAID tiver espaço livre suficiente e você está usando partições para a matriz, não para todo o disco (ou seja /dev/sda1 , não /dev/sda ).

Você pode primeiro reduzir o array criando sistemas de arquivos ext3 simples no final dos discos se você tiver mais da metade do array livre. Depois de se livrar do RAID 0, você ainda terá que copiar os dados algumas vezes para obter partições ext3 em tamanho normal nos discos.

Então, para seguir a ideia completamente não testada:

  • inicializar no sistema de recuperação (por exemplo, o Ubuntu Live CD funciona bem)
  • ativar os módulos necessários

    modprobe md multipath raid0 (outra coisa ..?)

  • ativar a matriz RAID

    cp /etc/mdadm/mdadm.conf /etc/mdadm/mdadm.conf.backup e mdadm --examine --scan >> /etc/mdadm/mdadm.conf e mdadm -A --scan

  • verifique o fs

    e2fsck -f /dev/md0

  • reduza o fs

    resize2fs /dev/md0 30G [deixando espaço suficiente com base no uso de disco existente, aqui < 30G!])

  • reduza a matriz RAID

    mdadm --grow /dev/md0 --size=36700160 (tamanho em KiB: 35 * 1024 ^ 2 [saia daqui também!])

  • aumente o fs até o tamanho máximo disponível

    resize2fs /dev/md0

  • execute o fs novamente (para ter certeza)

    e2fsck -f /dev/md0

Agora você tem o RAID 0 no início dos discos e o espaço livre no final. Aqui, você pode precisar usar fdisk para reduzir a partição RAID e criar novas partições para ext3.

Então você pode

  • faz o fs normal no espaço livre em disco

    mke2fs ... (como você quiser)

  • copie os dados do RAID para o ext3

    cp ...

  • remover matriz RAID

    sudo umount /dev/md0 sudo mdadm --stop /dev/md0 (stop array)
    sudo mdadm --zero-superblock /dev/sdx /dev/sdy ... (limpar superquadros de cada unidade na matriz! )
    sudo mdadm --remove /dev/md0 (remover matriz)

  • faça o ext3 para o começo de uma das unidades

    mke2fs ...

  • copie os dados de um dos discos

  • crie uma partição para o disco, faça ext3 fs nela

  • copie os dados de volta para o fs com disco completo

  • repita para todos os discos restantes (mexendo nos dados até que não permaneçam dados nas unidades half-RAID half ext3)

Note que eu não testei este procedimento e você deve fazer um backup completo dos seus dados! (Como sempre ao executar operações de disco exessivas.) Além disso, operações com fdisk normalmente exigem uma reinicialização, portanto, você deve manter um controle cuidadoso do estado do seu sistema em todos os momentos.

Em suma, acho que é muito mais fácil apenas para fazer uma nova instalação no ext3 e copiar os dados do RAID 0.

    
por 26.10.2010 / 11:24