# [HOW TO]RAID 1 software

## fat_penguin

Questo breve testo vuol dare una veloce ma completa guida all'istallazione di gentoo su un RAID 1 software.

Ho preso spunto da alcune istruzioni trovate sul web e ho provato sulla mia pelle tutto cio che è scritto.

Oltre alla messa in funzione di un RAID vedremo i comandi di base per la gestione di questi array di dischi.

Utilizzeremo il paccheto sys-apps/mdadm (http://cgi.cse.unsw.edu.au/~neilb/mdadm) al posto del "vecchio" sys-fs/raidtools, che è meno amichevole da usare (IMHO).

Tutte le istruzioni riportate si riferiscono ad un sistema con due dischi IDE/ATA impostati come hda e hdb e ad una configurazione delle partizioni in "/", "/boot" e "swap". E' preferibile inoltre che io due hdd siano il piu simili possibile in ordine di grandezza.

Partiamo con il livecd di gentoo seguiamo la guida di istallazione fino alla parte "4. Preparazione dei dischi".

A questo punto lanciamo il seguente comando per attivare il supporto al software raid:

```
modprobe raid1
```

e creiamo i nodi "md" che rappresentano i dispositivi RAID:

```

mknod /dev/md0 b 9 0

mknod /dev/md1 b 9 1

mknod /dev/md2 b 9 2

```

si assume quindi che da ora in poi "/dev/md0 = /boot" , "/dev/md1 = swap" e "/dev/md2 = /".

Per chiarezza diciamo pure che

 *Quote:*   

>  /dev/md0 = /dev/hda1 + /dev/hdb1
> 
>  /dev/md1 = /dev/hda2 + /dev/hdb2
> 
> /dev/md2 = /dev/hda3 + /dev/hdb3
> ...

 

Andiamo ora a partizionare i due hard disks in modo che le tre partizioni che creeremo siano uguali su entrambi.

E' molto importante che le partizione siano del tipo "Linux raid autodetect", con cfdisk il codice per questo tipo è "FD". Impostiamo inoltre le partizioni di boot come "boottabili".

Per facilitare questa operazione di consiglia di partizionare il primo hard disk e di lanciare il seguente comando:

```
sfdisk -d /dev/hda | sfdisk /dev/hdb
```

in modo che il partizionamento del primo venga "clonato" sul secondo. Nel caso non dovesse funzionare procedete pure manualmente su entrambe i dispositivi.

Eccoci ora alle creazione vera e propria del RAID. Lanciamo i seguenti comandi:

```

mdadm --create /dev/md0 --level=1 --raid-devices=2 /dev/hda1 /dev/hdb1

mdadm --create /dev/md1 --level=1 --raid-devices=2 /dev/hda2 /dev/hdb2

mdadm --create /dev/md2 --level=1 --raid-devices=2 /dev/hda3 /dev/hdb3

```

ora il sistema iniziera' la creazione degli array. Possiamo monitorare lo stato d'avanzamento di questa operazione con:

```

cat /proc/mdstat

```

una volta portata a termine la "costruzione" dei dispositivi RAID dovremmo ottenere un output del genere al comando precedente:

 *Quote:*   

> 
> 
> Personalities : [raid1] 
> 
> md1 : active raid1 hdb2[1] hda2[0]
> ...

 

A questo punto non ci resta che formattare le partizioni! Ad esempio con:

```

mke2fs /dev/md0

mke2fs -j /dev/md2

mkswap /dev/md1 

```

Attiviamo ora la swap 

```
swapon /dev/md1
```

e procediamo con il mount delle partizioni

```

mount /dev/md2 /mnt/gentoo

mkdir /mnt/gentoo/boot

mount /dev/md0 /mnt/gentoo/boot

```

Proseguiamo ora con la guida ufficiale di gentoo dal punto "5. Copia dei file di installazione di Gentoo" fino al punto "10.         Configurazione del Bootloader" ricordandoci che durante la compilazione del kernel va attivato il supporto al RAID:

 *Quote:*   

> 
> 
> Device Drivers  --->
> 
> Multi-device support (RAID and LVM)  --->
> ...

 

e di settare /etc/fstab correttamente. Ad esempio:

```

...

/dev/md0                /boot           ext2            noauto,noatime  1 1

/dev/md2                /               ext3            noatime         0 0

/dev/md1                none            swap            sw              0 0

...

```

Due parole sull'istallazione del boot loader. 

Per permettere il boot del sistema da entrambi i dischi, in caso di rottura di uno dei due, grub (in questo caso) va istallato nel Master Boot Record dei due hard disks.

Ecco come procedere dopo l'emerge di grub.

Avviare la shell di grub con il comando:

```
grub
```

e procedere come segue:

```

grub> root (hd0,0)

grub> setup (hd0)

grub> root (hd1,0)

grub> setup (hd1)

grub> quit

```

Ora va configurato il file di /boot/grub/grub.conf. Vi posto il mio:

 *Quote:*   

> 
> 
> # Boot automatically after 30 secs.
> 
> timeout 30
> ...

 

Prima di terminare l'istallazione di Gentoo e di procedere con il reboot non dimenticate di istallare il pacchetto sys-apps/mdadm :

```

emerge mdadm

```

Se tutto è andato secondo i piani al reboot vi troverete a lavorare su un sistema RAID 1 software!

Ora qualche cenno sulla gestione.

Il comando "mdadm" permette la completa amministrazione degli array.

Facciamo qualche esempio pratico. Ammettiamo di accorgerci che il secondo hard disk (hdb) si stia rompendo e che quindi vogliamo sostituirlo con uno nuovo. 

Ecco il dafarsi:

```

mdadm /dev/md0 --fail /dev/hdb1 --remove /dev/hdb1

mdadm /dev/md1 --fail /dev/hdb2 --remove /dev/hdb2

mdadm /dev/md2 --fail /dev/hdb3 --remove /dev/hdb3

```

in /proc/mdstat avremo qualcosa di simile ora:

 *Quote:*   

> 
> 
> Personalities : [raid1] 
> 
> md1 : active raid1 hda2[0]
> ...

 

ora spegniamo il pc, sostituiamo il disco guasto, riavviamo e...

Ripartizioniamo l'hard disk:

```

sfdisk -d /dev/hda | sfdisk /dev/hdb

```

ricreiamo il RAID:

```

mdadm /dev/md0 --add /dev/hdb1

mdadm /dev/md1 --add /dev/hdb2

mdadm /dev/md2 --add /dev/hdb3

```

controlliamo la ricostruzione dell'array con un "cat /proc/mdstat"

 *Quote:*   

> 
> 
> Personalities : [raid1] 
> 
> md1 : active raid1 hdb2[2] hda2[0]
> ...

 

ricordiamoci inoltre di istallare grub nel MBR del nuovo hdd:

```

grub> root (hd1,0)

grub> setup (hd1)

```

... e siamo di nuovo a cavallo!

E' chiaro che ho esposto solo una parte di quello che puo essere fatto con il software RAID di linux e col pacchetto "mdadm".         Oltre alle operazioni di base è possibile configurare il monitoraggio dello stato del RAID per avvisare l'amministratore in         caso di eventuali problemi. 

Note:

mdadm puo essere usato anche via file di configurazione /etc/mdadm.conf in modo da rendere piu "coerente" la gestione.

Fonti d'ispirazione:

http://www.linuxdevcenter.com/pub/a/linux/2002/12/05/RAID.html

http://www.gentoo.org/doc/en/gentoo-x86-tipsntricks.xml#software-raid

http://www.fonderiadigitale.it/gentoo/seminari/2004/Webb.it_Padova/

Spero di non aver detto qualche castroneria... Buon lavoro!

byebye

fat_penguinLast edited by fat_penguin on Sat Feb 19, 2005 3:49 pm; edited 1 time in total

----------

## .:deadhead:.

Complimenti. Per caso hai guardato anche l'howto di FonderiaDigitale, presentato al webbit di padova nel 2004?

Qualunque sia la risposta, potresti linkarlo in fondo, visto che finora era IMHO l'unico howto aggiornato che parlava di sw raid e mdadm su gentoo in maniera completa ed esaustiva  :Wink: 

----------

## fat_penguin

Inserisco volentieri il link... me lo passi?

fat_penguin

----------

## FonderiaDigitale

http://www.fonderiadigitale.it/gentoo/seminari/2004/Webb.it_Padova/

insieme al seminario c'e' un tarball con su degli script che ho fatto per mettere mdadm all'avvio e monitorare i dischi.

----------

## fedeliallalinea

Inserito nei post utilissimi sezione howto

----------

## mnl

Volevo aggiungere un paio di cose all'(utilissimo!) documento.

1. Ho avuto dei problemi nel creare raid software con due dischi SATA e il kernel 2.4.28-gentoo-r7 . La macchina si piantava al boot nell'atto di configurare il primo disco in modalita' UDMA. Nonostante quattro ricompilazioni del kernel ho ceduto e ho dovuto installare il 2.6.10-gentoo-r6 con il quale tutto e' andato a posto

2. Se qualcosa va male e bisogna tornare al livecd, per ristabilire gli array e rilavorarci si deve usare mdadm con --assemble e non piu' con --create (o almeno io ho usato con successo --assemble) in questo modo:

```
mknod /dev/md0 b 9 0

mknod /dev/md1 b 9 1

mknod /dev/md2 b 9 2

# al posto di hdaX e hdbX si usino le proprie periferiche (SATA = sda/sdb)

mdadm --assemble /dev/md0 /dev/hdb1 /dev/hda1

mdadm --assemble /dev/md1 /dev/hdb2 /dev/hda2

mdadm --assemble /dev/md2 /dev/hdb3 /dev/hda3

mount /dev/md2 /mnt/gentoo/

mount /dev/md0 /mnt/gentoo/boot/

swapon /dev/md1

mount -t proc none /mnt/gentoo/proc

```

Saluti a tutti e grazie infinite per l'aiuto.

----------

## Ciccio Bueo

volevo chiedervi se c'è un incremento delle prestazioni considerevole oppure no...  :Rolling Eyes: 

----------

## fat_penguin

tutto dipende dalla configurazione. Raid 1 serve alla ridondanza. Se lo metti in Raid 0 le prestazioni in scrittura migliorano senz'altro... ma non hai piu la ridondanza..

Una via di mezzo potrebbe essere il Raid 5 ...

byebye

fat_penguin

----------

## mnl

 *Ciccio Bueo wrote:*   

> volevo chiedervi se c'è un incremento delle prestazioni considerevole oppure no... 

 

Come giustamente detto, RAID1 serve a non uccidersi quando un disco ti esplode, non ad aumentare le prestazioni (che _in teoria_ restano eguali, in pratica molto probabilmente degradano leggermente).

RAID5 e' anche una buona idea se hai 3 dischi. Se ne hai 4, piuttosto che un raid5 con spare oggigiorno credo sia meglio un raid0+1, e allora si' che le prestazioni aumentano.

Ciao a tutti

----------

## Ciccio Bueo

io pensavo ad un raid 0 violento...  :Cool: 

rischio massimo... ma quanto più veloce vado?  forse con il raid 0 software non aumentano in maniera valida le prestazioni....

----------

## fat_penguin

Sembra che al giorno d'oggi il RAID software sia piu performante del RAID hardware...

Non ti resta che provare...

byebye

fat_penguin

----------

## Gyrus

Scusate la domanda, 

ma quando ho finito con la configurazione RAID1, ed ho 2 dischi uguali in mirror:

1- se uno si guasta , l'altro (buono) continua a mandare avanti il sistema senza interruzioni si servizio ?

2- e nel momento in cui sostituisco HD guasto, quest'ultimo viene in automatico ripristinato come mirror

    ho devo fare qualcosa io (riavvio, riconfigurazione ecc...)?

Gyrus

----------

## mnl

 *Gyrus wrote:*   

> Scusate la domanda, 

 

Nessuna scusa necessaria  :Smile: 

 *Quote:*   

> ma quando ho finito con la configurazione RAID1, ed ho 2 dischi uguali in mirror:
> 
> 1- se uno si guasta , l'altro (buono) continua a mandare avanti il sistema senza interruzioni si servizio ?

 

Precisamente, questo e' il suo scopo.

 *Quote:*   

> 2- e nel momento in cui sostituisco HD guasto, quest'ultimo viene in automatico ripristinato come mirror
> 
>     ho devo fare qualcosa io (riavvio, riconfigurazione ecc...)?

 

ponendo per assunto che tu stia parlando di raid software con mdadm, e che il disco nuovo abbia una dimensione maggiore o uguale a quello gia' presente, devi fare le seguenti cose:

1- togli il disco marcio

2- ne metti uno buon

3- lo partizioni come necessario (con i tipi giusti di partizione)

4- rimuovi con mdadm il disco marcio dall'array

5- aggiungi con mdadm il disco buono dall'array

6- aspetti che la ricostruzione termini

7- (se necessario) aggiungi con grub l'MBR al disco nuovo.

Credo che la parte principale di queste cose sia spiegata gia' nel primo messaggio della fila, prova a dare un'occhiata.

Ciao!

----------

## Gyrus

Perfetto !!

E' tutto chiaro (adesso).

La prossima settimana devo mettere su un server di Backup, con RAID1 software,

piallando un Linux (compatibile Red-Had) che mi da un sacco di problemi, che 

sostituisco con una Gentoo + RAID1 + Bacula.

Grazie 

Gyrus.

----------

## .:deadhead:.

alcune piccole precisazioni  :Wink:   *mnl wrote:*   

> 
> 
> 1- togli il disco marcio
> 
> 2- ne metti uno buon
> ...

 

se un disco si guasta:

1- rimuovi con mdadm il disco marcio dall'array

2- spegni la macchina!!!

3- togli il disco marcio

4- ne metti uno buon

5- lo partizioni come necessario (con i tipi giusti di partizione) [l'ideale è partizionarlo in maniera identica]

5- aggiungi con mdadm il disco buono dall'array

6- aspetti che la ricostruzione termini

nel caso tu abbia a che fare con un server con dischi hot-swap salta solo il punto 2.

----------

## mnl

 *.:deadhead:. wrote:*   

> alcune piccole precisazioni 

 

Molto ben accette, grazie!  :Cool: 

----------

## FonderiaDigitale

 *fat_penguin wrote:*   

> Sembra che al giorno d'oggi il RAID software sia piu performante del RAID hardware...
> 
> Non ti resta che provare...
> 
> byebye
> ...

 

se per raid hardware intendi i vari promise, allora ti do ragione: quelli non sono veri controller raid. si appoggiano per la maggior parte al software (drivers)

----------

## fat_penguin

 *FonderiaDigitale wrote:*   

>  *fat_penguin wrote:*   Sembra che al giorno d'oggi il RAID software sia piu performante del RAID hardware...
> 
> Non ti resta che provare...
> 
> byebye
> ...

 

... parlo anche di RAID "seri" tipo MegaRaid...

Certo andrebbero fatti dei test seri ed attendibili... ma cosi ad occhio mi sembra che per la ricostruzione degli array ci metta di meno un raid software ( a parità di dischi e controller scsi).

Ci tengo a sottolineare: andrebbe verificato! ...chi lo sa.. se mi resta un po di tempo...

byebye

fat_penguin

----------

## SilverXXX

Vorrei chiedere il permesso a fat penguin di riportare la guida su un altro forum, dato che si sta parlando di raid e sono sorti dei problemi sull'installazione. Se me lo chiedono posso postare un link al thread o la guida?

----------

## fat_penguin

 *SilverXXX wrote:*   

> Vorrei chiedere il permesso a fat penguin di riportare la guida su un altro forum, dato che si sta parlando di raid e sono sorti dei problemi sull'installazione. Se me lo chiedono posso postare un link al thread o la guida?

 

Per mantere una sola guida aggiornata sarebbe bene che dai il seguente link:

http://wiki.gentoo-italia.net/index.php/RAID_Software:_mirroring

Cmq se preferisci il copia incolla.. la conoscenza è di tutti...

byebye

fat_penguin

----------

## SilverXXX

Inanzitutto, grazie. Volevo anche chiederti poi se era possibile fare un raid1, con un hd già contenente i dati, senza perdere tutto. Penso sia possibile creare un raid con il disco nuovo (chiamiamolo hdb) da solo, passarci i dati del disco vecchio (hda), poi formattarlo e fare il raid. Cosa ne pensi? Cis ono problemi se sono sullo stesso canale ide?

----------

## mnl

 *SilverXXX wrote:*   

> Inanzitutto, grazie. Volevo anche chiederti poi se era possibile fare un raid1, con un hd già contenente i dati, senza perdere tutto.

 

Hmmm... a naso, visto che per avere un raid software devi assegnare un certo tipo alla partizione (linux raid autodetect), ho paura che la devi formattare per poi copiarci sopra il contenuto.

 *Quote:*   

> Ci sono problemi se sono sullo stesso canale ide?

 

In teoria no ma e' ampiamente sconsigliato.

Ciao!

----------

## fat_penguin

 *SilverXXX wrote:*   

> Inanzitutto, grazie. Volevo anche chiederti poi se era possibile fare un raid1, con un hd già contenente i dati, senza perdere tutto. Penso sia possibile creare un raid con il disco nuovo (chiamiamolo hdb) da solo, passarci i dati del disco vecchio (hda), poi formattarlo e fare il raid. Cosa ne pensi? Cis ono problemi se sono sullo stesso canale ide?

 

Per la questione dello stesso canale IDE non ci sono problemi tecnici... pero' sarebbe meglio lavorare su due bus.

Per l'alta questione penso che sulla guida di fonderiadigitale ci sia qualcosa al riguardo. Dacci un occhio. Appena  ho tempo faccio delle prove e le posto..

http://www.fonderiadigitale.it/gentoo/seminari/2004/Webb.it_Padova/

byebye

fat_penguin

----------

## .:chrome:.

 *mnl wrote:*   

> Hmmm... a naso, visto che per avere un raid software devi assegnare un certo tipo alla partizione (linux raid autodetect), ho paura che la devi formattare per poi copiarci sopra il contenuto.

 

no. non è detto. il raid-autodetect serve per consentire al raid-subsystem di riconoscere automaticamente il raid senza necessità di mappare tutto quanto in raidtab.

io una volta l'ho fatto un raid senza formattare né cambiare il filesystem id, ma così su due piedui non ricordo bene cosa avevo fatto.

andando a naso dovresti creare un raidtab ad hoc, e poi usare raidstart e raidhotadd, saltando mkraid. però ti ripeto... non mi ricordo bene cosa avevo fatto.

se vuoi fare una prova interessante, anziché raid, usa device-mapper, con il modulo dm-mirror. fa lo stesso servizio, e teoricamente dovrebbe farlo meglio. io non l'ho mai provato, però era una cosa che volevo fare

----------

## SilverXXX

Trovato. Era nel pdf di fonderiadigitale. Eppure lo avevo già letto.....  :Embarassed: 

vabbè, può capitare a tutti di sbagliare.

----------

## .:deadhead:.

@mnl

non c'è alcun tipo di problema, basta sostituire il type di partizioni in raid auto, creare l'array raid in modalità degradata [con un disco in fault, che è quello vuoto che devi ancora collegare] e, dopo aver creato la stessa tabella delle partizioni sul nuovo disco gli dici di ricostruire il raid array. et voilà il gioco è fatto. la cosa bella è che ti ricostruisce anche il filesystem.

k.gothmog

l'uso dei raidtools è deprecato in favore di mdadm [nell'howto di fonderia vien ben spiegato il tutto]

----------

## mnl

OK. Nella mia infinita ignoranza supponevo che modificando il tipo di partizione i dati venissero persi. Meglio cosi'  :Smile: 

Ciao.

----------

## .:deadhead:.

beh uno un backup se lo fa sempe  :Smile: 

----------

## mnl

Vabbe', ma cosi' son bravi tutti  :Smile: 

Se non ricordo male la domanda iniziale riguardava la possibilita' di creare un raid1 a partire da due dischi, uno dei quali contiene i dati che poi dovranno comparire nell'array, senza passaggi intermedi di backup. Sinceramente io non lo farei a meno che non fossi costretto, ma e' stato utile per me vedere che e' possibile.

----------

## iridium103

scusate la mia ignoranza da "niubbo esperto" , ma un array raid 1 si può costruire anche se il primo disco è pieno, nel senso.. si può costruire un'array con un disco pieno e uno vuoto, in modo che l'array si costruisca da zero, però copiandosi i dati presenti sul primo disco, nel secondo?... scusate ancora  :Very Happy: 

----------

## flocchini

ma stai scherzando?  :Wink: 

in caso contrario...

 Hanno appena finito di parlarne, rileggi meglio il thread  :Rolling Eyes: 

----------

## Gyrus

Una domanda:

Sto installando un PC con RAID1, con questo HOWTO, pero' ho letto 

anche un HOWTO in inglese sempre nel forum Gentoo, e parla di creare

ed editare il file:

```
/etc/raidtab
```

Volevo sapere se con i comandi dell' HOWTO in italiano (questo) lo 

genera in automatico.

Mi sembra di capire che e' un file importante.

Gyrus

----------

## fat_penguin

Raidtab è deprecato... non piu usato.

byebye

fat_penguin

----------

## Gyrus

OK !

meglio cosi .....

Sto compilando il kernel e tra un po' saro' pronto per riavviare il PC con RAID1.

fat_penguin  Grazie per la Velocissima risposta.

----------

## Gyrus

Ho finito di compilare , ma il kernel (2.4) non mi avvia la macchina.

Si ferma all'avvio cin un messaggio che dice che circa:

Gentoo utilizza devfs, dato che il kernel non e compilato con devfs ....

ricompilare il kernel con il modulo devfs ....

 :Shocked: 

Poi mi chiede la password per amministrare, o ctrl-d per riavviare.

Ho controllato ho devfsd installato , ma per il kernel non so, posso non ricompilare?

Devfs o udev crea problemi con i RAID1 software?

 :Crying or Very sad: 

----------

## fat_penguin

 *Gyrus wrote:*   

> Ho finito di compilare , ma il kernel (2.4) non mi avvia la macchina.
> 
> Si ferma all'avvio cin un messaggio che dice che circa:
> 
> Gentoo utilizza devfs, dato che il kernel non e compilato con devfs ....
> ...

 

Con kernel 2.6.x mai avuto problemi ne con UDEV ne con DEVFS

byebye

fat_penguin

----------

## Gyrus

Purtroppo ho compilato il 2.4, quindi non c'e' speranza ?

----------

## power83

e se uno volesse utilizzare raid 0+1 che software deve usare?

----------

## Gyrus

Ho ricompilato con il kernel 2.6 che ho trovato nel CD di installazione, ho riavviato eeeee.....

KERNEL PANIC !!

Il problema e' che non riesce ad aprire md2:

```
VFS: Cannot open root device "md2" or unknown-block(0,0)
```

Il PC e un vecchio PII a 350 Mhz con a bordo un controller HighPoint, quello base, che

sono stato costretto a mettere per far vedere al PC, i 2 HD da 160Gb.

Il fatto e' che i driver per il controller ci sono e viene riconosciuto,

ho seguito passo passo HOWTO , cambiando solo il nome dei dispositivi,

in quanto i due dischi il sistema li vede in hde ed hdg avendoli montati come

primari di ciascun canale.

dove sta il problema ??

Gyrus

----------

## fat_penguin

@power83: il kernel supporta varie configurazioni RAID. Penso sia possibile "sommare" i vari tipi di raid... poi creare due "md" in stripe e metteri in mirror tra di loro...

@Gyrus: prova a vedere se hai seguito tutti i passi di questo How To:  http://wiki.gentoo-italia.net/index.php/RAID_Software:_mirroring

[edit]

@Gyrus: controlla la configurazione del bootloader...

[/edit]

byebye

fat_penguin

----------

## Gyrus

Ok domani mattina provo.

I passi della guida li ho cmq seguiti tutti,

grub quando gli do : root e setup risponde che trova i dispositivi md0

ma il riavvio ho un kernel panic  :Mad: 

Gyrus

----------

## Tiro

ottima guida...appena ho un pò di soldi e di tempo mi compro 3 hd ed un controller raid e mi faccio un bel raid0 selvaggio  :Laughing:  ...ma che controller raid mi consigliate?? ...a prezzi abbordabili!  :Wink: 

----------

## fat_penguin

 *Tiro wrote:*   

> ottima guida...appena ho un pò di soldi e di tempo mi compro 3 hd ed un controller raid e mi faccio un bel raid0 selvaggio  ...ma che controller raid mi consigliate?? ...a prezzi abbordabili! 

 

Perche ti dovresti comprare un controller RAID???

byebye

fat_penguin

----------

## Gyrus

Nessuno ha provato seguendo la guida , a far funzionare il RAID1 , con un controller

HighPoint a bordo, sul quale sono collegati i dischi ?

 :Sad: 

----------

## Tiro

 *Quote:*   

> 
> 
> Perche ti dovresti comprare un controller RAID??? 

 

il raid si può fare anche con controller ide..   :Question: 

----------

## mnl

Tiro: il tema di tutto questo discorso e' "raid software" (com'e' scritto in alto  :Smile:  ), e si sta parlando dell'implementazione di RAID mediante strumenti software; quindi la presenza di un controller raid e' del tutto superflua.

----------

## Tiro

azzz....scusate la mia ignoranza ma PROPRIO nn sapevo che il raid si potesse fare anche solo via sw....e che la guida fosse inutile SENZA un controller  :Embarassed: 

FICO!!!!  :Smile: 

----------

## flocchini

Intanto ringrazio ancora fat_penguin per il chiarissimo howto, l'ho usato per un esperimento da un cliente recentemente convertito a linux e tutto e' andato a meraviglia, raid1 funzionante al primo colpo e fermo macchina di 5 ore tra rimozione win2000, installazione di stage3, configurazioni varie, raid e samba (grazie anche a fonderia digitale x le slide del webbit)

Poi @gyrus: se va in allarme x devfs vuol dire che non hai seguito bene la guida all'installazione, dove dice esattamente cosa aggiungere alla config di defautl del kernel... In particolare tra i file system, ti manchera' qsa tipo l' "automatically mount at boot" o qsa sempre li' in giro. Il raid funziona parfettamente anche su kernel 2.4, avevo un raid0 sul mio vecchio serverino casalingo prima che spaventato dalla pericolosita' tornasi a separare i 2 dischi.

@ gyrus2: ma tu grub mica devi installarlo su md0, lo installi su entrambi gli mbr dei 2 dischi (prendendo come esempio un raid1). Poi sei sicuro di aver flaggato come avviabili entrambe le partizioni?

----------

## Gyrus

mnl:

In un messaggio sopra spiegavo ...

```
Il PC e un vecchio PII a 350 Mhz con a bordo un controller HighPoint 307, quello base, che

sono stato costretto a mettere per far vedere al PC, i 2 HD da 160Gb. 
```

flocchini:

Adesso provo a fare tutti i controlli che mi hai detto ... speriamo bene.  :Confused: 

----------

## mnl

 *Gyrus wrote:*   

> mnl:In un messaggio sopra spiegavo ...

 

Sisi, il mio appunto non era riferito a te. In generale anche io consiglio di avere un controller ide per i dischi, anche di media qualita', perche' (noto) spesso aumenta e di molto la velocita' d'accesso e soprattutto sono + veloci le operazioni di sincronizzazione (in caso di raid1). Inoltre non discuto che nel tuo caso avere un controller separato e' necessario. Pero' per quel che riguarda la funzionalita' di raid software offerta da linux, questo non serve.

----------

## Tiro

ma per raid0 raid5 ecc...il procedimento è analogo a quello dell'howto o cambia qlcs oltre al modprobe raid0...?

----------

## fat_penguin

probabilmente cambia la configurazione del boot loader...

byebye

fat_penguin

----------

## Tiro

ok...grazie! mi cimenterò...  :Wink: 

----------

## tomasino

Ciao,

premetto che non ho nessuna esperienza pratica di raid e che quindi la mia domanda può suonare blasfema alle orecchie di qualcuno...

Devo mettere su un server con raid 1(mi interessa solo la sicurezza dei dati), ma il case particolare della macchina che mi viene affidata non ha spazio per un secondo hd. E' possibile fare raid software su un disco s-ata e un disco firewire?

----------

## mnl

Credo che l'unico vincolo necessario sia, che entrambi i dischi vengano visti al boot (prima di grub/lilo, intendo). Se questo succede, credo che si possa fare.

----------

## .:deadhead:.

Dunque tommasino tu vuoi:

che i dati siano in salvo [backup]

che l'intero server sia salvo anche il caso di malfunzionamento hardware? [raid1]

risponditi alla domanda. Se la risposta è la 2, allora l'hardware che hai non va bene...com'è possibile che tu non abbia spazio per un secondo HD nel case? quanti ce ne sono già su? A seconda del ca$h che hai puoi orientarti su un raid SW o HW. ma 1 è la regola fondamentale per un buon raid: omogeneità! Dischi uguali [l'ideale è stessa marca modello e lotto], stessa connessione [scsi ise sata]... nel tuo caso sarebbe un po' un po' rischioso, visto che sono diversi dischi su diverse connessioni [che hanno diverse velocità] etc etc...

A questo punto si torna alla prima domanda... E' davvero necessario un raid? Se si, si mette mano al portafoglio e si cambia case e si comprano 2 dischi nuovi. Ultima cosa: i famigerati raid sata sulle motherboard sono per 9/10 finti raid, se vuoi fare raid con sata usa direttamente mdadm, risparmierai molta fatica  :Smile:  . Se vuoi raid hardware, adaptec 3ware lsi logic sono alcune ottime marche

----------

## tomasino

Quello che cerco è proprio RAID1. Temevo anch'io che apparecchi con diversi collegamenti fossero poco adatti ad un sistema raid, tu mi confermi questa paura.

Spero a questo punto di poter riutilizzare lo spazio riservato all'unità ottica per il secondo disco, per motivi di spazio e di consumo chi mi affida il server ha optato per un pundit della asus, ormai ce l'ho e me lo tengo  :Razz: 

Grazie, ciao.

----------

## FonderiaDigitale

c'e da dire che con il raid software tecnicamente funzionano anche con dischi diversi su bus diversi. c'e' solo da tenere conto che il sistema viaggia alla velocita' del bus e disco piu' lento all'interno dell'array (e anche qualcosa leggermente in meno, nella pratica).

In casi specifici, come nel raid5, dove la CPU deve tenere conto delle differenze di geometria dei dischi, cosi costringi la cpu a parecchio lavoro extra.

Tieni di conto che in ogni caso FUNZIONA. anche se lento. secondo me e' utile saperlo nel caso, ad esempio, che tu metta su una macchina un po vecchia con dei dischi altrettanto usati, e un domani ne spacchi uno e non lo ritrovi uguale: per tamponare la falla puoi mettere nel sistema un disco 'provvisorio' per evitare di trovarti con un raid zoppo nel caso che anche quell'altro disco (molto probabile) dia forfait.

imho.

----------

## GuN_jAcK

ho letto la guida è l'ho seguita alla lettera per fare un RAID, devo dire veramente ottima e chiara!  :Smile:  Complimenti!  :Very Happy: 

Se mi posso permettere vorrei dare un consiglio per una piccola aggiunta alla guida...

Se un giorno avreste il bisogno, per chissà quale motivo, l'esigenza di dover chrootare nel sistema, le vostre partizioni potrete rimontarle semplicemente con:

mdadm --assemble /dev/mdx --auto=yes /dev/hdax  /dev/hdbx

ovviamente al posto delle x si metteranno le relative partizioni  :Smile:  e si procedera con i vari mount e il chroot del sistema.

Non so se potrà essere d'aiuto a qualcuno ma dato che io ne ho avuto necessità faccio risparmiare del tempo a tutti quelli che vogliono evitare ricerche sul man  :Razz:  (anche perchè in certi casi non è presente sui sistemi "provvisori" come può essere il Cd di installazione)

----------

## Clunis

Io ho raid0 con due dischi sata su nvraid (chipset nforce4) riesco a far riconoscere il raid al sistema ma poi non so come comportarmi con le partizioni...

io sui due dischi in raid0 ho 1 partizione con windows... e 10gb di spazio libero nei quali volevo mettere gentoo... ma non so come devo fare qualcuno mi sa aiutare?

grazie

----------

## randomaze

 *Clunis wrote:*   

> Io ho raid0 con due dischi sata su nvraid (chipset nforce4) riesco a far riconoscere il raid al sistema ma poi non so come comportarmi con le partizioni...

 

Detto cosí é molto generico. Nel primo post ci sono delle indicazioni, hai provato a seguirle e/o capire cosa fanno in modo da poterle adattare alla tua situazione?

----------

## mnl

Se ho ben capito hai due dischi che windows vede in raid0 (in qualche modo), e su ognuno di questi dischi c'e' una partizione vuota da 10gb e tu vuoi montare gentoo su queste due, creandoci sopra prima un array raid0 (o raid1?)

bene. Non mi intendo di raid0 e mi sento di sconsigliartelo. Se invece vuoi usare raid1, credo tu non debba fare altro che seguire quanto scritto nel primo messaggio di questo thread. L'unica differenza credo e' che quando lanci fdisk invece di partizionare tutto il disco butti via le partizioni da 10gb e te ne fai due o tre per il sistema linux (ad esempio una da 500mb per boot una da 2gb per swap e tutto il resto in root, replicandole precise settore per settore sul secondo disco), poi prosegui.

Se non ho capito bene prova a spiegarti meglio.  :Smile: 

Ciao e buon lavoro

----------

## Truzzone

Riesumo questo thread poichè ho problemi con mdadm:

Al momento del riavvio durante il caricamento dell'fstab dove ho specificato il mount delle partizioni in raid una non riesce a trovarla, devo premete CTRL+D e a boot terminato assemblo il raid a mano ed eseguo il mount.

Ho provato anche:

```
mdadm --detail --scan > /etc/mdadm.conf
```

ma al riavvio mi da sempre lo stesso errore   :Crying or Very sad: 

```
=mdadm --detail --scan

ARRAY /dev/md1 level=raid0 num-devices=2 UUID=xxxxxxxxxxxxxxxx

   devices=/dev/sda2,/dev/sdb2

ARRAY /dev/md2 level=raid0 num-devices=2 UUID=xxxxxxxxxxxxxxxxxx

   devices=/dev/sda1,/dev/sdb1

ARRAY /dev/md3 level=raid0 num-devices=2 UUID=xxxxxxxxxxxxxxxxx

   devices=/dev/sdc1,/dev/sdd1

ARRAY /dev/md4 level=raid0 num-devices=2 UUID=xxxxxxxxxxxxxxx

   devices=/dev/sdc2,/dev/sdd2

ARRAY /dev/md0 level=raid0 num-devices=2 UUID=xxxxxxxxxxxxxxxx

   devices=/dev/hda3,/dev/hdc2

```

In particolare l'ultimo array è quello che mi da problemi   :Confused: 

Ciao by Truzzone   :Sad: 

----------

## mnl

Sicuro che hai settato le partizioni di tipo linux raid (fd, mi pare)? Io ho avuto il tuo stesso problema quando mi ero dimenticato di farlo.

----------

## Truzzone

```
/dev/hda3            2065      155061    77110488   fd  Linux raid autodetect

/dev/hdc2            2065      155061    77110488   fd  Linux raid autodetect
```

Come tutte le altre, quelle che ho riportato sopra sono quelle che mi danno errore al boot, per questo non riesco a capire il motivo per cui mi diano problemi.   :Confused: 

Ciao by Truzzone   :Smile: 

----------

## mnl

Giusto per capire riesci a riassumere l'errore che ti esce fuori, e gia' che ci sei puoi mettere la parte rilevante dell'fstab?

Io finora ho installato 5 o 6 sistemi raid con mdadm, quindi non ne so tanto, ma se posso aiutarti, bene.

----------

## Truzzone

L'errore avviene al boot è il classico errore che avviene quando al momento del mount delle partizioni presenti nell'fstab, non riesce a trovare la periferica, nel mio caso md0, poichè non viene assemblato il raid:

```
/dev/hda1               /boot           ext3            noauto,noatime  1 2

/dev/md0                /               ext3            noatime         1 1

/dev/md1                /mnt/1  ext3            noatime         1 1

/dev/md2                /mnt/2  ext3            noatime         1 1

/dev/md3                /mnt/3  ext3            noatime         1 1

/dev/md4                /mnt/4  ext3            noatime         1 1

/dev/hda2               none            swap            sw,pri=1        0 0

/dev/hdc1               none            swap            sw,pri=1        0 0
```

Non riesco a capire il motivo per cui non assembla quel raid al boot, come già detto ho provato a creare anche il file di config di mdadm nella etc ma è come se non esistesse, poichè sono scuro al 100% che non lo cerca nemmeno, c'è un parametro da passargli, qualcosa da fare per fargli leggere il file di configurazione   :Question: 

Ciao by Truzzone   :Smile: 

----------

## mnl

Infatti, mdadm non legge il file di configurazione, lo legge solo se viene fatto partire come demone per inviare messaggi di allerta.

Curiosita': nel kernel che hai messo in /dev/hda1 ci sono le opzioni per il modulo raid e per il filesystem, vero? (scusa l'ovvieta')

----------

## Truzzone

 *mnl wrote:*   

> ...
> 
> Curiosita': nel kernel che hai messo in /dev/hda1 ci sono le opzioni per il modulo raid e per il filesystem, vero? (scusa l'ovvieta')

 

Che cosa intendi per opzioni?   :Question: 

Ciao by Truzzone   :Smile: 

----------

## mnl

Pardon. L'attivazione del supporto RAID.

----------

## Truzzone

 *mnl wrote:*   

> Pardon. L'attivazione del supporto RAID.

 

Certo, altrimenti anche gli altri non funzionerebbero senza problemi:

```
Server ~ # cat /usr/src/linux/.config | grep MD

# CONFIG_BLK_DEV_CMD640 is not set

CONFIG_BLK_DEV_AMD74XX=y

# CONFIG_BLK_DEV_CMD64X is not set

CONFIG_MD=y

CONFIG_BLK_DEV_MD=y

CONFIG_MD_LINEAR=y

CONFIG_MD_RAID0=y

CONFIG_MD_RAID1=y

# CONFIG_MD_RAID10 is not set

# CONFIG_MD_RAID5 is not set

# CONFIG_MD_RAID6 is not set

# CONFIG_MD_MULTIPATH is not set

CONFIG_MD_FAULTY=y
```

Ciao by Truzzone   :Rolling Eyes: 

----------

## neryo

 *fat_penguin wrote:*   

> tutto dipende dalla configurazione. Raid 1 serve alla ridondanza. Se lo metti in Raid 0 le prestazioni in scrittura migliorano senz'altro... ma non hai piu la ridondanza..
> 
> 

 

si e' vero.. raid 1 serve alla ridondanza, ma comunque in lettura le prestazioni aumentano.. e' possibile leggere il parallelo diverse porzioni dello stesso file. Questo e' teorico.. dipende dal driver raid o dal controller...   :Rolling Eyes: 

----------

## Truzzone

E' tutto il giorno che ci sbatto la testa   :Mad: 

 *Quote:*   

> raid0 : nb_zone is 1.
> 
> raid0 : Allocating 8 bytes for hash.
> 
> md: considering sdd2 ...
> ...

 

Infine sono riuscito a far avviare il raid al boot mettendo tutti i moduli sata built-in nel kernel e togliendo la regola md dalle rules di udev, ma quel raid non ne vuole sapere di andare correttamente   :Mad: 

Come si fa con md ad aviare correttamente il raid visto che del file di configurazione non gliene frega niente   :Evil or Very Mad: 

Ciao by Truzzone   :Crying or Very sad: 

----------

## newred

Ciao a tutti sto allestendo un piccolo server casaligno... ho terminato l'installazione del software base del sistema e ora vorrei aggiungere il raid1 al sistema

Ho già due hd uguali seagate di cui 1 con il sistema già installato e funzionante...

Ora vorrei aggiungere il secondo per mettere in raid alcune partizioni...

Ho provato a leggere il pdf che è già stato citato.. ma non sono riuscito a concludere nulla..

Premetto che ho appena iniziato ad usare linux e gentoo...

Qualcuno potrebbe spiegarmi passo passo cosa devo fare...

Grazie

----------

## neryo

 *newred wrote:*   

> Ciao a tutti sto allestendo un piccolo server casaligno... ho terminato l'installazione del software base del sistema e ora vorrei aggiungere il raid1 al sistema
> 
> Ho già due hd uguali seagate di cui 1 con il sistema già installato e funzionante...
> 
> Ora vorrei aggiungere il secondo per mettere in raid alcune partizioni...
> ...

 

mh, questa cosa doveva essere preparata durante la fase di installazione.. ora se non hai lasciato un po' di spazio a fine disco non potrai fare molto... questo perche' per il raid software alcune info vengono storate nella parte finale del disco, ma se hai gia' riempito tutto con delle partizioni (a meno di un resize) diventa impossibile creare ora il raid.   :Rolling Eyes: 

----------

## newred

Avevo tentato di installare subito con il raid1 , ma dopo 2 tantativi falliti ho pensato di iniziare con l'installazione base e poi aggiungere il raid....

Cmq non ho riempito tutto... o almeno ho partizionato tutto , ma ho una partizione da 70Gb che è destinanata allo starage dei dati che è ancora vuota e posso eliminare o ridimensionare tranquillamente...

La struttura che ho usato è:

32Mb /boot

1Gb swap

9Gb /

40Gb /home

70Gb /Dati

----------

