Ce la puoi fare. Devi stare un po 'attento, ma questo non è pericoloso¹ se stai molto attento a non digitare in modo errato nulla e non lascia alcun problema nella configurazione.
Consiglio vivamente di non effettuare nessuna delle manipolazioni su un sistema live. È possibile in alcuni casi, ma richiede cure extra. Avvio da un liveCD / liveUSB come Parted o SystemRescueCD .
Innanzitutto, è necessario ridurre leggermente il volume, per fare spazio ai metadati mdraid (il superblocco). Esistono diversi formati di metadati , devi usarne uno che inserisca i metadati alla fine del disco. (In alcune configurazioni, potresti avere abbastanza spazio per mettere il superblocco all'inizio, ma è più complicato e incline al rischio, quindi entrerò in quello.)
È necessario assicurarsi che gli ultimi 128 kB del dispositivo a blocchi siano inutilizzati, per fare spazio al superblocco. Quindi dovrai ridurre il filesystem su /dev/sda1
. Se si tratta di un file system ext2 / ext3 / ext4, ottenere la dimensione del file system corrente con tune2fs /dev/sda1
, quindi eseguire resize2fs /dev/sda1 NNN
dove NNN è quella dimensione meno 128 kB. Puoi farlo invece con Parted . Se devi ridurre un filesystem extN, devi prima smontarlo; un filesystem btrfs può essere ridotto dal vivo.
Dopo esserti assicurato che gli ultimi 128kB del dispositivo a blocchi siano liberi, chiama mdadm --create
per creare un volume RAID-1. Questo non tocca nessuna parte del volume a parte il superblocco. Inizialmente, il volume avrà un singolo componente: tutti gli altri sono impostati come non riusciti. È necessario passare --level=1
(o equivalentemente -n 1
) (questo approccio funziona solo per RAID-1) e --metadata=0.9
oppure --metadata=1.0
(il formato superblocco predefinito 1.2 pone il superblocco vicino all'inizio del dispositivo, che può sovrascrivere i dati). L'argomento a --raid-devices
( -n
) è il numero di componenti (inclusi quelli mancanti) nel volume RAID.
mdadm --create /dev/md0 --level=1 --raid-devices=2 --metadata=1.0 /dev/sda1 missing
Ora puoi attivare l'array e aggiungere altri componenti.
mdadm --add /dev/md0 /dev/sdb1
Nota sui bootloader: Grub2 comprende Linux RAID-1 e può avviarsi da esso. Bootloader come Grub1 che non comprendono il RAID leggono in modo trasparente dai volumi mirror, ma il sistema non si avvia se l'unità da cui il bootloader sta leggendo si guasta. Se il volume RAID è su una partizione, assicurarsi di installare il settore di avvio di Grub su entrambe le unità.
¹ Assicurarsi di disporre di backup. "Non pericoloso" significa "probabilmente non ne avrai bisogno", non "scommettere i tuoi dati".
Ripubblicato e leggermente adattato da Come impostare il mirroring del disco (RAID-1)
--add
, e devi stare attento, ma non è molto complicato. Vedi Come configurare il mirroring del disco in Ubuntu? (Non posso proporre quella domanda come duplicato a causa delle nuove regole.)