Newsgroup: it.comp.os.linux.debian
Titolo: raid1 sostituzione disco

Ieri una macchina con debian sarge si è inchiodata.
Questa mattina ho forzato lo spegnimento dell'alimentatatore ed ho riavviato
Dentro dmesg ho trovato i seguenti messaggi:
hdb: dma_intr: status=0x51 { DriveReady SeekComplete Error }
hdb: dma_intr: error=0x40 { UncorrectableError }, LBAsect=9325503, high=0,
low=9325503, sector=9324863
end_request: I/O error, dev hdb, sector 9324863
hdb: dma_timer_expiry: dma status == 0x61
hdb: DMA timeout error
hdb: dma timeout error: status=0xd0 { Busy }
hda: DMA disabled
hdb: DMA disabled
ide0: reset: success
raid1: Disk failure on hdb1, disabling device. 
    Operation continuing on 1 devices
hdb: task_in_intr: status=0x59 { DriveReady SeekComplete DataRequest Error }
hdb: task_in_intr: error=0x40 { UncorrectableError }, LBAsect=9325503,
high=0, low=9325503, sector=9325503
end_request: I/O error, dev hdb, sector 9325503
raid1: hdb: unrecoverable I/O read error for block 9324800
raid1: hdb: unrecoverable I/O read error for block 9325440
ed il file /proc/mdstad contiene:
Personalities : [raid1]
md1 : active raid1 hda5[0] hdb5[2](F)
      4883648 blocks [2/1] [U_]
md2 : active raid1 hda6[0] hdb6[2](F)
      4883648 blocks [2/1] [U_]
md4 : active raid1 hda8[0] hdb8[1]
      1951744 blocks [2/2] [UU]
md5 : active raid1 hda9[0] hdb9[1]
      273715328 blocks [2/2] [UU]
md0 : active raid1 hda1[0] hdb1[2](F)
      4883648 blocks [2/1] [U_]
md3 : active raid1 hda7[0] hdb7[1]
      2730944 blocks [2/2] [UU]
unused devices: <none>
Mi pare di aver capito che uno dei due dischi messi in raid 1 con varie
partizioni gemelle non funziona più correttamente.
Una volta recuperato un nuovo disco, quale sequenza di operazioni devo fare
per rimettere a posto il funzionamento del raid1 ?
Ciao

 per rimettere a posto il funzionamento del raid1 ?
a) formatti il disco "sostituto" in modo che abbia le stesse partizioni
del disco da sostiuitre
b) smonti (in senso software) dal raid il disco difettoso
(ipotizziamo tu vogliamo rimuovere la partizione &#8220;/dev/hdb5&#8221;
dall&#8217;array &#8220;/dev/md0&#8221;)
# mdadm /dev/md0 -f /dev/hdb5   (definisci faulty quella partizione)
# mdadm /dev/md0 --remove /dev/hdb5 (la rimuovi dal raid)
Iterare il processo per tutte le partizioni del disco che toglierai
c) spegnere la macchina - togliere il disco guasto e mettere il disco
buono.
occhio a jumper ed assimilabili
d) inserisci il nuovo disco nel raid
# mdadm /dev/md0 --add /dev/hdb5
Il sistema dovrebbe informarti che sta riallineando il raid
Questa procedura funziona su Ubuntu - immagino anche su debian
NB
- Occhio ai riferimenti: se hai dischi satat o scsi non avrai hdb5
- quando smonti il disco rotto, occhio a non toogliere, per errore, quello
buono
Ciao
-- 
-- 
Norbert
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

 ...
Grazie per le dritte. Appena recupero il nuovo disco faccio la prova  :-)
Ciao

 il nuovo disco è più grande del precedente ?
dd if=/dev/hdX of=/dev/hdY bs=512 count=1
Seguito da un testdisk per rimettere coerente il dimensionamento.
Ma non e' detto che non si lamenti per il raid.
E se il raid e' in mirror, potresti lasciare anche cosi' come e'.
-- 
           |Save our planet!
    Ciao   |Save wildlife!
   roberto |For your E-MAIL use ONLY recycled Bytes  !!
           |roberto poggi   
rpo...@softhome.net

 
soprattutto ricorda di mettere il secondo disco sull'altro canale e non
come slave al primario, perche se si rompe uno dei due 9 volte su dieci
hai problemi. Per ulteriori informazioni vedi l'how-to del raid.
/paride

 Per ulteriori informazioni vedi l'how-to del raid. 
Avevo letto a suo tempo il consiglio. Solo che la scheda madre non ne voleva
sapere di vedere il secondo disco sul secondo canale. Siccome non avevo
tempo ho messo ambedue i dischi sullo stesso controller ed ho lasciato
perdere
Ora spero di riuscire a mettere in pratica il consiglio dell'how-to
Ciao

 Seguito da un testdisk per rimettere coerente il dimensionamento.
Ok, grazie.
L'uso di dd per copiare la tebella delle partizioni lo avevo già letto da
qualche parte, ma mi ero completamente dimenticato.
testdisk invece non lo conoscevo
Ciao

 Sai come si fa a copiare al volo le tabelle delle partizioni dal disco
sfdisk -d /dev/hda | sfdisk /dev/hdb
NB
Ovviamente mettere i nomi adatti al posto di hda e hdb
Ciao
-- 
Norbert
