Convertire RAID 1 a RAID 10 in mdadm

Nel mio attuale server Ubuntu, ho due dischi rigidi Western Digital 2TB in un RAID 1, utilizzando mdadm. Vorrei aggiungere altri 2 drive RED 2TB e convertirlo in un RAID 10. Mi rendo conto che dovrei cancellare i dati più probabilmente, ma c'è qualche modo che non avrei bisogno? Ho il volume di 2TB quasi completamente riempito

Questo ha preso qualche strategia, e purtroppo, è stato un po 'di tempo fa, così sopporti con me; Sto per memory.

In sostanza, ho chiuso il server e ho installato le due nuove unità. Ho fatto un backup in precedenza ad un HDD esterno 4TB (molto più veloce dato che aveva USB3!), Nel caso in cui. Non avevo bisogno di usarlo fortunatamente, ma sono contento che alless lo avessi fatto. Ho preso nota di ciò che le size della partizione erano sul disco (per size di block), e ciò che each disco era. Al momento, sda e sdb erano le unità con l'arrays corrente caricata. sdc e sdd erano i nuovi drive. Ho copiato il layout della partizione nei due nuovi dischi, utilizzando fdisk come root. Ho quindi creato una nuova matrix, con due membri mancanti:

 mdadm -v --create /dev/md1 --level=raid10 --raid-devices=4 /dev/sdc1 missing /dev/sdd2 missing 

Questo command crea l'arrays chiamato /dev/md1 , imposta il tipo RAID a 10 e dice che ci dovrebbero essere 4 dispositivi, in un mondo perfetto. I dispositivi che ho aggiunto erano /dev/sdc1 e /dev/sdd1 per la prima partizione. Una volta che è stato in su, ho montato l'arrays (come /mnt/raid ) e ho fatto un rsync -avP /mnt/data/ /mnt/raid/ e ho aspettato un giorno per copiare tutto.

Una volta copiata, è necessario non riuscire i dischi rigidi nell'arrays e rimuoverli: mdadm /dev/md0 --fail /dev/sda1 --remove /dev/sda1 . Quindi puoi aggiungere quel disco rigido al nuovo arrays e attenderlo per ribuild. Quindi, rimuovere l'ultimo disco dall'arrays (usando /deb/sdb ) e aggiungerlo indietro ( mdadm /dev/md1 --add /dev/sda1 ).

Infine, per rimuovere la vecchia matrix mdadm --stop /dev/md0 , eseguire mdadm --stop /dev/md0 . A questo punto, la vecchia matrix è scomparsa! Suggerisco di verificare due volte che il boot loader è installato correttamente sull'arrays (o, a seconda del tuo schema, il settore di avvio dei dischi rigidi). Dare un riavvio del test; se tutto succede, ottimo! Se no, è per questo che abbiamo un backup!

Come bonus, ho imparato un nuovo command utile: watch cat /proc/mdstat per aggiornare automaticamente lo schermo each 2 secondi con lo stato di ricostruzione delle unità.

Se il controller RAID support la ristrutturazione RAID 1 -> RAID 10, sì, possibili perdite di dati.

Software RAID …

Aggiungere il vuoto RAID 1 su due nuovi HDD. Will Raid c un'affidabilità simile e senza il rischio di perdere i dati.