PDA

View Full Version : Problema Raid-1 software linux 2.4


DaRkBoDoM
23-07-2003, 14:49
Hola.

Ho deciso di installare un secondo disco su di una macchina debian.

Per creare l'array ho creato questo /etc/raidtab


raiddev /dev/md0
raid-level 1
nr-raid-disks 1
nr-spare-disks 0
chunk-size 32
persistent-superblock 1
device /dev/hdc1
raid-disk 0

raiddev /dev/md1
raid-level 1
nr-raid-disks 1
nr-spare-disks 0
chunk-size 32
persistent-superblock 1
device /dev/hdc5
raid-disk 0

raiddev /dev/md2
raid-level 1
nr-raid-disks 1
nr-spare-disks 0
chunk-size 32
persistent-superblock 1
device /dev/hdc6
raid-disk 0

raiddev /dev/md3
raid-level 1
nr-raid-disks 1
nr-spare-disks 0
chunk-size 32
persistent-superblock 1
device /dev/hdc7
raid-disk 0


L'array e' stato creato correttamente, quindi ho migrato il sistema da hdax a mdx e infine ho rimosso hda (vecchio disco che ho colto l'occasione per sostituire) collegando quindi hdc al suo posto (nb. hdc ads e' diventato hda), infine ho aggiungo un nuovo disco gemello ad hda e l'ho partizionato in maniera identica a quest'ultimo.
Tutto funziona correttamente

Filesystem Size Used Avail Use% Mounted on
/dev/md1 4.4G 1.4G 2.8G 33% /
/dev/md2 12G 3.8G 8.2G 32% /home
/dev/md0 23M 9.0M 12M 42% /boot
/dev/md3 21G 8.0G 13G 38% /var


solo che quando vado ad giiungere le partizioni di hdc al raid con
raidhotadd /dev/md0 /dev/hdc1
ecc...

questi dischi vengono inseriti nell'array ma non utilizzati, tanto che la ricostruzione non parte... dove sto sbagliando?

P.s.

abcd:~# cat /proc/mdstat
Personalities : [linear] [raid0] [raid1] [raid5] [multipath]
read_ahead 1024 sectors
md0 : active raid1 hdc1[1] hda1[0]
24000 blocks [1/1] [U]

md1 : active raid1 hdc5[1] hda5[0]
4723008 blocks [1/1] [U]

md2 : active raid1 hdc6[1] hda6[0]
12586816 blocks [1/1] [U]

md3 : active raid1 hdc7[1] hda7[0]
22282048 blocks [1/1] [U]

unused devices: <none>

ilsensine
23-07-2003, 14:59
Credo che hai creato 4 diverse catene raid, ciascuna composta da...una partizione ;)

DaRkBoDoM
23-07-2003, 15:04
Ehm... si, e' quello che volevo fare... ma questo non spiega il problema

DaRkBoDoM
23-07-2003, 15:09
...anche xche' se non sbaglio il raid software su linux si puo' fare solo combinando partizioni, non interi dischi

ilsensine
23-07-2003, 16:39
Ho fatto delle prove con i file in loopback, e funziona. Nota che l'andamento della ricostruzione la leggi da /proc/mdstat, con i kernel recenti (è asincrona!). Nota inoltre che se non indichi in raidtab i dischi che usi o intendi usare, puoi fare tutti i raidhotadd che vuoi ma in effetti non aggiungi nulla all'array...ad es. io ho usato il seguente raidtab:

raiddev /dev/md0
raid-level 1
nr-raid-disks 2
nr-spare-disks 0
chunk-size 32
persistent-superblock 1
device /dev/loop/1
raid-disk 1
device /dev/loop/0
raid-disk 0

Inizialmente sono partito solo con /dev/loop/1, senza aver fatto il setup di /dev/loop/0 (il dispositivo era quindi inesistente). Una volta fatto losetup e raidhotadd, l'array è stato ricostruito.
Nota che se vuoi partire senza utilizzare una parizione dell'array, al posto di "raid-disk xxx" devi mettere "failed-disk xxx"; ad array partito, editi raidtab rimettendo raid-disk, lanci raidhotadd e la ricostruzione avverrà in background, come potrai leggere da mdstat.

DaRkBoDoM
23-07-2003, 21:19
NN capisco... ho modificato /etc/raidtab ma facendo raidhotadd me lo aggiunge cmq come spare disk

ilsensine
24-07-2003, 09:25
Perché quando hai fatto mkraid c'era solo un disco indicato in raidtab.

DaRkBoDoM
24-07-2003, 10:14
.... e quindi dici che l'unico modo per aggiungere il disco al raid e' fare di nuovo tutto dall'inizio?
Azz..

aventrax
24-07-2003, 10:15
Originariamente inviato da DaRkBoDoM
Ehm... si, e' quello che volevo fare... ma questo non spiega il problema

Lo spiega eccome, vuoi fare un array ridondante di dischi utilizzandone solo uno? lol

ilsensine
24-07-2003, 10:28
Originariamente inviato da DaRkBoDoM
.... e quindi dici che l'unico modo per aggiungere il disco al raid e' fare di nuovo tutto dall'inizio?
Azz..
Sì.
Specifica come nr_raid_disks in numero max di partizioni che vuoi utilizzare o utilizzerai in futuro. Se non usi tutte le partizioni in un primo momento, marcale come failed-disk come ti ho spiegato.
Nota che mkraid potrebbe mantenere i dati delle partizioni, oppure distruggerli. Fai un backup e, se mantiene i dati, tanto meglio.
Attento che non puoi marcare il disco 0 come failed ;)

DaRkBoDoM
24-07-2003, 10:44
:muro: