Trasformare un'installazione "liscia" in raid1 software, si suppone l'installazi one in una partizione unica su hda1. Nel caso di piu' partizione ripetere la pro cedura per ogni partizione da trasformare in raid.

- Compilare il kernel con il raid1 software (non come modulo) - Installare raidtools2 - Installare il kernel con il raid1 e creare un floppy di boot (mkboot) - Aggiungere il secondo disco (in questo caso hdc), il sistema partira' con il k ernel che contiene il supporto per il raid1 - Creare su hdc una partizione linux primaria identica a quella presente su hda. - (Creare md0 con: mknod /dev/md0 b 9 0) - Creare il file /etc/raidtab come segue:

raiddev                 /dev/md0
raid-level              1
nr-raid-disks           2
nr-spare-disks          0
persistent-superblock   1
chunk-size              4
device                  /dev/hdc1
raid-disk               0
device                  /dev/hda1
failed-disk             1

hdc1 e' il disco aggiunto, il comando raid-disk 0 indica che e' il primo disco del raid. hda1 e' il disco originale, quello che contiene il sistema installato, il comando failed-disk 1 indica che il raid su quel disco non e' funzionante (al trimenti si distruggerebbe il sistema funzionante!). - Creare il raid1 su hdc con il comando: mkraid /dev/md0 (eventualmente usare mk raid -f /dev/md0) - Creare il filesystem su /dev/md0 - Se e' tutto ok, riavviare il sistema in single-user, montare md0 in mnt (mount

cd / ; find . -xdev | cpio -pm /mnt - Modificare il file /mnt/etc/fstab mettendo /dev/md0 al posto di /dev/hda1 - Modificare il file /mnt/etc/lilo.conf mettendo /dev/md0 al posto di /dev/hda1 e aggiungendo la riga: raid-extra-boot=auto - Eseguire lilo con il comando: chroot /mnt /sbin/lilo per scrivere i valori corretti di /mnt/etc/lilo.conf nell'MBR di hdc - Con fdisk cambiare il tipo di partizione da 83 a FD (raid autodetect) - Smontare md0 - Quando si crea un device raid, la partizione fisica diventa leggermente piu' p iccola perche' viene scritto un secondo superblocco alla fine della partizione. Prima di riavviare e' necessario sistemare la dimensione, pena un errore in fase

e2fsck -f /dev/md0 (per controllare che la partizione sia ok) resize2fs /dev/md0 (rispondere N alla domanda "Abortire?") - Riavviare il sistema con il floppy specificando root=/dev/md0 - Se ha funzionato, il sistema e' stato avviato in raid dal disco aggiunto (hdc) , controllare /var/log/syslog e /proc/mdstat - Cambiare in /etc/raidtab la riga "failed-disk 1" in "raid-disk 1" per far capi re al sistema che il disco hda e' pronto per far parte del raid - Dare il comando: raidhotadd /dev/md0 /dev/hda1 il sistema iniziera' a fare il sync dei due dischi (distruggendo il vecchio sist ema su hda che viene sostituito dalla nuova copia in raid). Controllare in /proc /mdstat l'avanzamento e il tempo necessario - Al termine eseguire: install-mbr /dev/hda install-mbr /dev/hdc /sbin/lilo e riavviare la macchina senza il floppy

- In caso di rottura di uno qualsiasi dei due dischi il sistema potra' ripartire

e ripetere il sync con raidhotadd /dev/md0 /dev/hdXX

Note varie: - non serve mettere in raid la partizione di swap - dato che le partizioni devono essere esattamente identiche, conviene farle di dimensioni leggermente inferiori alla capacita' del disco - la procedura e' stata collaudata su un sistema debian woody 3.0r2 - nonostante tutto, se possibile, conviene fare un backup... - eventualmente installare mdadm