Ubuntu 12.04 - Adicionar matriz RAID 1 no dispositivo existente?

Ubuntu 12.04 - Adicionar matriz RAID 1 no dispositivo existente?

Eu leioComo posso adicionar um array RAID 1 no Ubuntu 10.04eInstalando o Raid 1 no servidor Ubuntu existente. No entanto, tenho apenas os dois discos rígidos a seguir:

dev/sdb1onde o Ubuntu 12.04 está sendo executado atualmente

dev/sda1disco vazio

Quero criar um RAID nesses dois discos rígidos, mas não quero excluir a sdb1partição porque o Ubuntu está funcionando bem.

Como posso criar um RAID em um dispositivo existente?

Eu executei

mdadm --create /dev/md0 --level=1 --raid-devices=2 missing /dev/sda1

Então

 mkfs -t ext2 /dev/md0 

E eu corro

echo "DEVICE partitions" > /etc/mdadm/mdadm.conf
mdadm --detail --scan >> /etc/mdadm/mdadm.conf 

Então eu mudo boot para md0ingrub2

menuentry 'Ubuntu, with Linux 3.2.0-23-generic' --class ubuntu --class gnu-linux --class gnu --class os {
        recordfail
        gfxmode $linux_gfx_mode
        insmod gzio
        insmod part_msdos
        insmod ext2
        set root='(md0)'
        search --no-floppy --fs-uuid --set=root 8fff7794-a156-46d2-92f8-4931d42abf36
        linux   /vmlinuz-3.2.0-23-generic root=/dev/mapper/ubuntu--server-root ro
        initrd  /initrd.img-3.2.0-23-generic
}

Mas, quando eu quero adicionar

mdadm --manage /dev/md0 -a /dev/sdb1

eu sempre consigo

mdadm: Cannot open /dev/sdb1: Device or resource busy

Responder1

Crie uma nova matriz RAID1 com um dispositivo "ausente" usando o seguinte em um terminal (pode ser necessário empregar o sudocomando):

# mdadm --create /dev/md0 -n 2 -l 1 /dev/sda1 missing

Você poderá mover todos os dados para /dev/md0, inicializar com eles e adicionar /dev/hdb1no espelho:

# mdadm --manage /dev/md0 -a /dev/hdb1

Faça backup de seus dados primeiro e familiarize-se com o mdadm e o software RAID no Linux para evitar um tiro no pé.

Responder2

Parece que você já percorreu a maior parte do caminho. Estou tentando fazer a mesma coisa e encontrei você no Google. Apesar do problema de que suas unidades podem não ser do mesmo tamanho (as minhas são), acho que tudo que você precisa fazer é:

  • inicialize o CD ao vivo do Ubuntu, adicione e inicie o mdadm
  • inicie seu md0, particione-o
  • rsync -av de /dev/hdb1 para /dev/md0p1
  • mude o grub para inicializar seu ataque
  • reinicie em seu ataque
  • reparticionar seu primeiro disco
  • adicione o outro disco ao ataque

Feito

Mas isso é apenas uma suposição :-) Pode levar uma semana ou mais antes que eu possa tentar sozinho.

Isso é semelhante a algo que fiz - mover uma caixa Ubuntu de um pedaço de HW para outro usando o rsync. Aprendi lá que você PRECISA copiar o sistema operacional de um live CD - você não pode obter uma boa cópia do sistema operacional quando inicializado a partir do próprio sistema operacional.

Você quer

rsync -av --exclude-from=excluir arquivo /fonte/ /destino/

e seu arquivo de exclusão se parece com:

# Incluir
+ /dev/console
+ /dev/initctl
+ /dev/nulo
+ /dev/zero

# Excluir
- /dev/*
- /proc/*
- /sys/*
- /tmp/*
- perdido+encontrado/
- /mídia/backup/*

informação relacionada