Configurare e installare un RAID1 tra due dischi SATA con Slackware 12.0
Il comando mkraid è scomparso dalla slack12, in quanto deprecato. Viene soppiantato dal comando mdadm.
Letti diversi manuali, HOW-TO, forum eccetera eccetera, la stragrande parte delle quali scritta - superfluo a dirsi - per mkraid; seguiti i vari post di www.frattocchie.it (SEMPRE molto utili).
La procedura suggerita qui non è la strada più breve ma tutto sommato è quella più semplice e seguendola è possibile installare il RAID1 in circa tre quarti d'ora (il tempo ha sempre la sua importanza).
PRIMA di mettersi al lavoro, leggere per esteso la procedura e accertarsi di aver chiarito i vari dubbi che possono sopravvenire. Un piccolo errore di procedura può significare buttar via tutto il lavoro (mi è successo personalmente!).
Un PC con due HD possibilmente di uguale capacità e certamente funzionanti; i CD di installazione Slackware 12; carta e penna.
1) Introdurre il CD n.1 di installazione Slackware 12.0. effettuare il login come root e avviare il partizionamento dei due dischi. digitare da riga di comando
# fdisk /dev/sda
Command (m for help): n Command action l logical (5 or over) p primary partition (1-4) p Partition number (1-4): 1 First cylinder (1-30401, default 1): <CR> Using default value 1 Last cylinder or +size or +sizeM or +sizeK (1-30401, default 30401): +50M
Command (m for help): t Partition number (1-4): 2 Hex code (type L to list codes): 82
Command (m for help): t Partition number (1-4): 1 Hex code (type L to list codes): fd
== AVVERTENZA IMPORTANTE == Qualcuno mi ha chiesto perchè la swap non è stata inserita nel RAID. Ci sono ragioni a favore e ragioni contro. qualora si intendesse creare il mirror anche per la partizione di swap, occorre cambiare anche il suo id da "82" a "fd" e seguire la procedura particolare indicata negli steps opportuni.
Command (m for help): p
Device Boot Start End Blocks Id System
/dev/sda1 <START> <END> <BLOCKS> fd Linux raid autodetect
/dev/sda2 <START> <END> <BLOCKS> 82 Linux swap
/dev/sda3 <START> <END> <BLOCKS> fd Linux raid autodetect
/dev/sda4 <START> <END> <BLOCKS> fd Linux raid autodetect
Copiare la tabella che viene riprodotta, compresi i numeri <START>, <END>, <BLOCKS>. Torneranno utili per la partizione del secondo disco e in ogni caso per ripetere la partizione qualora le operazioni non andassero a buon fine.
Command (m for help): w The partition table has been altered!
2) Creare il RAID1
# mdadm -Cv /dev/md1 -l1 -n2 /dev/sda1 /dev/sdb1
e rispondere "y" alla domanda se si vuole creare il device (il comando appena digitato ha detto: -Cv = crea in modo descrittivo il primo device raid /dev/md1 ---> -l1 = con un livello di RAID 1 ---> -n2 = che utilizza due dischi ---> [nome dei due dischi]).
ATTENZIONE alla successione della numerazione, che salta la partizione 2 in quanto è la partizione di SWAP.
/dev/md1 ---> /dev/sda1 /dev/sdb1 /dev/md2 ---> /dev/sda3 /dev/sdb3 /dev/md3 ---> /dev/sda4 /dev/sdb4
== AVVERTENZA IMPORTANTE == Se si è scelto di inserire la swap nel RAID, allora occorre creare il device anche per lei (per esempio: mdadm -Cv /dev/md0 -l1 -n2 /dev/sda2 /dev/sdb2)..
# mke2fs -j /dev/mdN
dove N sta per il numero del device di RAID. ripetere per md1 - md2 - md3.
# mkswap /dev/sda2 # mkswap /dev/sdb2
non inseriremo nel RAID le partizioni di SWAP; in questo modo il RAID funzionerà con una SWAP pari a /dev/sda2 + /dev/sdb2. Nel caso uno dei due dischi si degradi, l'altro avrà a disposizione solo la propria SWAP.
== AVVERTENZA IMPORTANTE == Per formattare il device RAID swap digitare nella riga di comando
# mkswap /dev/md0
e quindi attivarlo digitando nella riga di comando
# swapon /dev/md0
# cat /proc/mdstat
comparirà la lista dei 4 devices appena creati; leggendo qualcosa del genere
md1 : active raid1 sdb1[1] sda1[0] <numero> blocks [2/2] [UU]
vuol dire che il RAID è installato attivo e sincronizzato può anche comparire la parola DELAYED ---> il device deve essere ancora sincronizzato. SUGGERIMENTO: attendere che tutti i devices siano sincronizzati prima di eseguire l'installazione della Slackware
3) Installare Slackware 12.0.
# setup
== AVVERTENZA IMPORTANTE == Nel caso si sia scelto di inserire nel RAID anche swap, allora non verrà riconosciuto dal sistema, che dirà di non aver individuato nessuna partizione di swap. rispondere di sì alla domanda se si intende ugualmente continuare con l'installazione. quando il programma chiederà di decidere i punti di mount NON selezionare la partizione scelta per lo swap (nell'esempio: /dev/md0) e lasciarla non configurata per ora.
--> selezionare la prima opzione, per impostare i parametri generali --> modificare le opzioni secondarie che interessano --> MODIFICARE il dispositivo di boot predefinito (/dev/sda) in /dev/md1 (quello dove ora si trova il boot del RAID) --> selezionare l'opzione per la costruzione dell'avvio di LINUX --> MODIFICARE il dispositivo di root scegliendolo tra quelli proposti dalla tabella /dev/md2 --> selezionare l'installazione di LILO
4) Installazione di LILO. Con il file di LILO appena costruito e installato non sono stati occupati gli MBR di entrambi i dischi. nel caso si rompesse uno dei due potrebbe essere un problema far ripartire la macchina. PRIMA di riavviare il sistema eseguire una nuova installazione con la seguente procedura.
# mount /dev/md2 /mnt/hd
# vi /mnt/hd/etc/lilo.conf
inserire (p.e. dopo la riga boot = /dev/md1) la seguente riga
raid-extra-boot = "/dev/sda,/dev/sdb"
salvare e chiudere vi.
# /mnt/hd/sbin/lilo -v -C /mnt/hd/etc/lilo.conf
(stiamo dicendo al sistema di andare ad eseguire lilo che si trova nella partizione montata e di installare il file lilo.conf che si trova nel medesimo device. si poteva fare lo stesso portandosi nella partizione /mnt/hd e digitando #chroot . --> complichiamoci la vita, va' ATTENZIONE!!! come buona regola generale, PRIMA di installare LILO conviene verificare se siano stati commessi errori nella digitazione. per questa ragione è sempre utile ricorrere al test: digitare da riga di comando
# /mnt/hd/sbin/lilo -t -v -C /mnt/hd/etc/lilo.conf
e solo se non compaiono errori DOPO eseguire lo stesso comando SENZA -t)
== AVVERTENZA IMPORTANTE == Se si è scelto di inserire nel RAID anche la partizione di swap, a questo punto occorre configurare il file fstab. perciò digitare nella riga di comando
# vi /mnt/hd/etc/fstab
e come prima riga aggiungere la seguente
/dev/md0 swap swap defaults 0 0
quindi salvare il file.
5) Creazione di un nuovo file /etc/mdadm.conf. Il file /etc/mdadm.conf è stato pensato come omologo del file /etc/raidtab. Può essere creato manualmente oppure si può farlo creare da mdadm. Ora che il RAID è funzionante possiamo seguire questa seconda strada.
# cp /etc/mdadm.conf /etc/mdadm.conf.old
# mdadm --detail --scan > /etc/mdadm.conf
nel caso vi fossero problemi in futuro, sarà possibile riavviare un device con il seguente comando
# mdadm -As /dev/mdN (dove N è il numero del device.
il comando andrà a leggersi i dati nel file di configurazione: -As ---> assembla e fai lo scan)
Autore: Nemo