|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Senior Member
Iscritto dal: Jul 2002
Città: Padova
Messaggi: 4245
|
RAID, post lunghino...........
Sto provando ormai da un giorno e mezzo a mettere in piedi un raid 1 software, ma nonostante abbia cercato di seguire fedelmente più how-to con nessuno sono riuscito a spuntarla.
Vi espongo cosa ho fatto e spero di trovare qualche anima buona che mi dica dove sto sbagliando ![]() Premettendo che il tutto sto cercando di farlo su una debian Sarge: 1. Per prima cosa ho installato Debian sul primo hd creando il seguente schema di partizioni: Codice:
hda1 /boot ext3 50Mb hda2 swap 1Gb hda3 / reiser 15Gb hda5 /dati ext3 64Gb 3. Ho installato mdadm 4. Ho clonato la tabella delle partizioni. Codice:
sfdisk -d /dev/hda | sfdisk /dev/hdb 6. Ho creato gli MD device; Ho dato per scontato che per ogni partizione da mettere in raid dovevo crare un device MD e quindi: Codice:
mdadm --create /dev/md0 --level=1 --raid-disks=2 missing /dev/hdb1 mdadm --create /dev/md1 --level=1 --raid-disks=2 missing /dev/hdb2 mdadm --create /dev/md2 --level=1 --raid-disks=2 missing /dev/hdb3 mdadm --create /dev/md3 --level=1 --raid-disks=2 missing /dev/hdb4 Codice:
mkfs -j /dev/md0 mkfs -j /dev/md3 mkreiserfs /dev/md2 mkswap /dev/md1 swapon /dev/md1 Codice:
mount /dev/md2 /mnt mkdir /mnt/boot mount /dev/md0 /mnt/boot mkdir /mnt/dati mount /dev/md3 /mnt/dati Codice:
cp -axuv / /mnt Codice:
# <file system> <mount point> <type> <options> <dump> <pass> proc /proc proc defaults 0 0 /dev/md2 / reiserfs defaults 0 1 /dev/md0 /boot ext3 defaults 0 2 /dev/md3 /dati ext3 defaults 0 2 /dev/md1 none swap sw 0 0 /dev/hdc /media/cdrom0 iso9660 ro,user,noauto 0 0 /dev/fd0 /media/floppy0 auto rw,user,noauto 0 0 Codice:
title Debian GNU/Linux, RAID-kernel 2.6.8-2-386 root (hd0,0) kernel /vmlinuz-2.6.8-2-386 root=/dev/md2 ro initrd /initrd.img-2.6.8-2-386-raid savedefault boot Codice:
grub-install /dev/hda Codice:
- su /etc/mkinitrd/modules ho aggiunto md e raid1 - su /etc/mkinitrd/mkinitrd.conf ho modificato la riga ROOT=probe in ROOT=/dev/md2 - Ho generato il nuovo initrd con mkinitrd -o /boot/initrd.img-2.6.8-2-386-raid Dopo tutta questa pappardella di roba, il risultato è: Codice:
fsck.ext3: Invalid argument while trying to open /dev/md0 /dev/md0: The superblock could not be read or does not describe a correct ext2 filesystem. If the device is valid and it really contains an exst2 filesystem (and not swap or ufs or something else), then the superblock is corrupt, and you might try running e2fsck with an alternate superblock: e2fsck -b 8193 <device> fsck failed. Please repair manually. fsck.ext3: Invalid argument while trying to open /dev/md3 /dev/md3: The superblock could not be read or does not describe a correct ext2 filesystem. If the device is valid and it really contains an exst2 filesystem (and not swap or ufs or something else), then the superblock is corrupt, and you might try running e2fsck with an alternate superblock: fsck failed. Please repair manually. CONTROL-D will exit from this shell and continue system startup. Give root password for maintenance (or type Contro-D to continue): A questo punto, sono convinto che mi sta sfuggendo qualcosa che probabilmente ho sotto il naso ma non riesco a vedere. Prima che leggiate sui giornali che mi sono suicidato a causa di un Raid1 ![]() Grazie. Ciao. P.S. La guida che ho seguito di più è questa: http://www.linuxtrent.it/documentazi...ftwareSuDebian Ultima modifica di stefanoxjx : 23-09-2006 alle 16:42. |
![]() |
![]() |
![]() |
#2 | |
Senior Member
Iscritto dal: Aug 2004
Città: Salento
Messaggi: 1080
|
Quote:
![]()
__________________
Il 90% dei problemi riscontrati sui computer sono localizzabili tra la sedia e la tastiera, il restante 10% nella scopa della donna delle pulizie.
![]() |
|
![]() |
![]() |
![]() |
#3 | |
Senior Member
Iscritto dal: Jul 2002
Città: Padova
Messaggi: 4245
|
Quote:
1. Devo installarlo su una macchina già operativa 2. Per vedere se almeno funzionava ho provato su una macchina test a fare un'installazione ex novo attivando il raid direttamente dall'installer di debian. Sarò io duro de capoccia, però onestamente non ho capito la logica che usa debian per attivare il raid. 3. Ho risolto ![]() |
|
![]() |
![]() |
![]() |
#4 | |
Senior Member
Iscritto dal: Aug 2004
Città: Salento
Messaggi: 1080
|
Quote:
![]()
__________________
Il 90% dei problemi riscontrati sui computer sono localizzabili tra la sedia e la tastiera, il restante 10% nella scopa della donna delle pulizie.
![]() |
|
![]() |
![]() |
![]() |
#5 |
Senior Member
Iscritto dal: Jul 2002
Città: Padova
Messaggi: 4245
|
Pensavo di aver risolto, invece non ho risolto nulla!!!!
Non c'è qualche guru del raid che mi può aiutare? Anche se non è un guru mi basta che sappia distinguere la differenza tra il raid contro mosche e zanzare e il raid per la sicurezza dei dati ![]() ![]() Grazie. Ciao. |
![]() |
![]() |
![]() |
#6 |
Member
Iscritto dal: Mar 2006
Messaggi: 290
|
Una volta creato il raid prima di riavviare il server devi lanciare il seguente comando:
mdadm --detail --scan >> /etc/mdadm/mdadm.conf Se no dopo il riavvio non vengono riconosciuti gli md. |
![]() |
![]() |
![]() |
#7 | |
Senior Member
Iscritto dal: Jul 2002
Città: Padova
Messaggi: 4245
|
Quote:
![]() Dopo 3 giorni full immersion sul RAID, sono rimasto stecchito ![]() Comunque, avrei qualche domanda per quando mi torenrà la voglia di provare e sopratutto per quando troverò qualche how-to più convincente!!!! Le mie domande sarebbero queste: 1. Tra i 100 how-to che ho letto, ho visto che molti nominavano i comandi mkraid, raidstart ecc. ecc., però non li ho trovati nel mio sistema nemmeno installando raidtools2. E' più aggiornato mdadm o raidtools? 2. Il tipo di partizione "DF" bisogna impostarlo su tutti e due i dischi o solo sul secondo disco? 3. /dev/md0 deve per forza essere root? Ho forse sbagliato perchè non ho messo md0 come root ma bensì: Codice:
hda1 /boot ext3 50Mb = /dev/md0 hda2 swap 1Gb =/dev/md1 hda3 / reiser 15Gb =/dev/m2 hda5 /dati ext3 64Gb =/dev/md3 Il problema è che così facendo il sistema non mi parte in raid, ma mi parte con la classima mappatura hda1,hda2 ecc. ecc. e quindi non mi permette di aggiongere la partizione di mirror con mdadm --add /dev/md....... 5. Sempre nel solito how-to ad un certo punto mi fa reinstallare grub, ma non era lilo che aveva bisogno di essere reinstallato ad ogni modifica? grub non prende le info direttamente dal menu.lst? 6. Perchè quello che dovrebbe essere semplice diventa sempre un'odiessea? ![]() ![]() I problemi che ho riscontrato maggiormente sono 2, uno l'ho già esposto nel mio primo post, mentre il secondo è che mdadm --add non mi lascia aggiungere la partizione da mettere in raid, dicendomi "failed return: -16". Ora non ho il messaggio esatto sotto mano, però basta che provi a reinstallare il raid e lo trovo subito ![]() Grazie a tutte le buone anime che vorranno chiarirmi le idee. Ciao. Ultima modifica di stefanoxjx : 26-09-2006 alle 00:02. |
|
![]() |
![]() |
![]() |
#8 |
Senior Member
Iscritto dal: Feb 2004
Messaggi: 1209
|
Mi chiedo.. dopo che hai fatto
mkfs -j /dev/md0 mkfs -j /dev/md3 mkreiserfs /dev/md2 mkswap /dev/md1 swapon /dev/md1 ma MD0 e MD3 nn metti il filesystem? come hai fatto a montarli se nn gli hai creato il filesystem?
__________________
...Ordunque... |
![]() |
![]() |
![]() |
#9 |
Senior Member
Iscritto dal: Apr 2003
Città: Genova
Messaggi: 673
|
scusami ma mi pare che il tuo problema sia al punto 1)
ovvero: sfdisk -d /dev/hda | sfdisk /dev/hdb ovvero tu stai copiando la partition table dal hda a hdb. e quindi anche la tipologia di System, per funzionare mdadm se non erro ha la necessita che le partizioni siano di tipo "Linux raid autodetect" (fd). quindi io rinizierei da qui modificando il tipo di system. Dopo continuerei con quanto scritto da te fino ad arrivare al punto 9.Una volta fatta la copia (su hdb) è necessario a sua volta un bel sfdisk -d /dev/hdb | sfdisk /dev/hda e un mdadm mdadm --manage --add /dev/md0 /dev/hda1 ... cosi' dovrebbe andare. Tentar non nuoce ![]() |
![]() |
![]() |
![]() |
#10 |
Member
Iscritto dal: Mar 2006
Messaggi: 290
|
Allora se segui questa procedura che uso io poi adattatala alle tue esigenze
hda ce l'ho cosi suddiviso: hda1 : / di tipo ext3 hda2 : swap #copio le partizioni di hda in hdb sfdisk -d /dev/hda | sfdisk --force /dev/hdb #creo raid device mdadm --create /dev/md0 --level 1 --raid-devices=2 missing /dev/hdb1 mdadm --create /dev/md1 --level 1 --raid-devices=2 missing /dev/hdb2 #vedi che il raid è partito cat /proc/mdstat #formatto il raid device mkfs.ext3 /dev/md0 mkswap /dev/md1 #creo o monto il raid mkdir /mnt/root mount /dev/md0 /mnt/root/ #sistemo initrd cp /etc/mkinitrd/mkinitrd.conf /etc/mkinitrd/mkinitrd.conf.orig ------------------------------------------------ modifico /etc/mkinitrd/mkinitrd.conf in questo modo: MODULES=dep ROOT="/dev/md0 ext3" ------------------------------------------------- #ricreo initrd (sostituisci a 2.4.27-2-386 la versione del tuo kernel) mkinitrd -o /boot/initrd.img-2.4.27-2-386-md 2.4.27-2-386 #sistemo grub cp /boot/grub/menu.lst /boot/grub/menu.lst.orig --------------------------------------------------- modifico /boot/grub/menu.lst in questo modo: title Debian GNU/Linux, kernel 2.4.27-2-386-md Disk1 root (hd0,0) kernel /boot/vmlinuz-2.4.27-2-386 root=/dev/md0 ro initrd /boot/initrd.img-2.4.27-2-386-md savedefault boot title Debian GNU/Linux, kernel 2.4.27-2-386-md Disk2 root (hd1,0) kernel /boot/vmlinuz-2.4.27-2-386 root=/dev/md0 ro initrd /boot/initrd.img-2.4.27-2-386-md savedefault boot ---------------------------------------------------------------- #sistemo mdadm.conf cp /etc/mdadm/mdadm.conf /etc/mdadm/mdadm.conf.orig mdadm --detail --scan >> /etc/mdadm/mdadm.conf #copio tutto quello che c'è in hda in hdb rsync -auHxv / /mnt/root/ #sistemo fstab cp /etc/fstab /etc/fstab.orig -------------------------------------------------------------- modifico /etc/fstab aggiungendo: /dev/md0 / ext3 defaults,errors=remount-ro 0 1 /dev/md1 none swap sw 0 0 ---------------------------------------------------------------- #copio fstab sul secondo disco cp /tmp/fstab /mnt/root/etc/fstab #riavvii il server init 6 #fai boot da disk1 #aggiungi al raid hda mdadm /dev/md0 -a /dev/hda1 mdadm /dev/md1 -a /dev/hda2 #verifica che i due dischi si stanno sincronizzando cat /proc/mdstat #ricreo initrd mkinitrd -o /boot/initrd.img-2.4.27-2-386-md 2.4.27-2-386 #ricreo mdadm mdadm --detail --scan > /etc/mdadm/mdadm.conf #configurazione manuale di grub grub --device-map=/boot/grub/device.map --------------------------------------------------------------- configurazione iterattiva >> root (hd0,0) >> setup (hd0) >> root (hd1,0) >> setup (hd1) >> quit --------------------------------------------------------------- configurazione manuale di grub.lst title Debian GNU/Linux, kernel 2.4.27-2-386-md Disk2 root (hd0,0) kernel /boot/vmlinuz-2.4.27-2-386 root=/dev/md0 ro initrd /boot/initrd.img-2.4.27-2-386-md savedefault boot title Debian GNU/Linux, kernel 2.4.27-2-386-md Disk1 root (hd1,0) kernel /boot/vmlinuz-2.4.27-2-386 root=/dev/md0 ro initrd /boot/initrd.img-2.4.27-2-386-md savedefault boot ---------------------------------------------------------------- #riconfiguro mdadm dpkg-reconfigure mdadm e hai finito... |
![]() |
![]() |
![]() |
#11 | |||||
Senior Member
Iscritto dal: Dec 2005
Città: Istanbul
Messaggi: 1817
|
Quote:
Quote:
Installi su partizioni normali su hda, crei il mirror su hdb + missing, copi le partizioni, rifai il boot dal secondo disco, cambi il tipo partizione su hda e aggiungi il disco al mirror. O piu' semplice, crei il raid con un livecd e poi installi direttamente sul mirror (sempre che l'installer della tua distribuzione supporti il raid). Quote:
Codice:
title GNU/Linux root (hd0,0) kernel /boot/kernel root=/dev/ram0 init=/linuxrc ramdisk=8192 real_root=/dev/md7 udev initrd /boot/initrd Quote:
![]() In effetti... Quote:
![]() ![]() Ho seguito due guide per gentoo e devo dire che dopo una prima installazione di prova sono andato liscio senza problemi.
__________________
One of the conclusions that we reached was that the "object" need not be a primitive notion in a programming language; one can build objects and their behaviour from little more than assignable value cells and good old lambda expressions. —Guy Steele |
|||||
![]() |
![]() |
![]() |
#12 | |
Senior Member
Iscritto dal: Jul 2002
Città: Padova
Messaggi: 4245
|
Quote:
![]() Comunque più sotto c'è: Codice:
mount /dev/md2 /mnt mkdir /mnt/boot mount /dev/md0 /mnt/boot mkdir /mnt/dati mount /dev/md3 /mnt/dati cp -axuv / /mnt |
|
![]() |
![]() |
![]() |
#13 | |
Senior Member
Iscritto dal: Jul 2002
Città: Padova
Messaggi: 4245
|
Quote:
Proprio per questo tra le tante prove fatte avevo provato a impostare "Linux raid autodetect (FD)" su tutti e due i dischi, ma non mi ha detto molto bene ![]() ![]() ![]() |
|
![]() |
![]() |
![]() |
#14 | |
Senior Member
Iscritto dal: Jul 2002
Città: Padova
Messaggi: 4245
|
Quote:
Appena ho un attimo provo seguendo il tuo how-to e poi ti faccio sapere. Grazie ancora. Ciao. |
|
![]() |
![]() |
![]() |
#15 | |
Senior Member
Iscritto dal: Jul 2002
Città: Padova
Messaggi: 4245
|
Quote:
Grazie delle risposte. Chissà che prendendo un po' di qua e un po di la, riesca a venirne fuori ![]() |
|
![]() |
![]() |
![]() |
#16 |
Senior Member
Iscritto dal: Oct 2003
Città: La Spezia
Messaggi: 962
|
ciao,
io usavo anche: sync && sync dopo aver clonato i dischi,altrimenti al reboot non mi partiva, se ti può essere utile... byez
__________________
![]() ![]() Gigabyte ga-p55-ud6 | Intel i7 860 | 2x2gb Corsair xms3 | Adaptec 2410sa | raid1 barracuda 500gb 7200.12 | Intel x25-m 80gb G2 | ATI radeon 4890 | tutto in downclock (non ho parenti all'enel) |
![]() |
![]() |
![]() |
#17 | |
Senior Member
Iscritto dal: Jul 2002
Città: Padova
Messaggi: 4245
|
Quote:
Semplicemente non partiva o partiva ma ad un certo punto ti dava errori? |
|
![]() |
![]() |
![]() |
#18 |
Senior Member
Iscritto dal: Oct 2003
Città: La Spezia
Messaggi: 962
|
mmm di preciso non me lo ricordo,
credo che lilo si incazzasse in fase di avvio mostrando il codice di errore, sempre che non ricordi male. cmq il tutto succedeva perchè non facevo nessun reboot al cambio di partizioni, cioe quando cambi in raid detect, facevo tutta la procedura di fila e secondo me si incazzava per quello. Cmq solo su debian mi è successo, su slack no. ciao
__________________
![]() ![]() Gigabyte ga-p55-ud6 | Intel i7 860 | 2x2gb Corsair xms3 | Adaptec 2410sa | raid1 barracuda 500gb 7200.12 | Intel x25-m 80gb G2 | ATI radeon 4890 | tutto in downclock (non ho parenti all'enel) |
![]() |
![]() |
![]() |
#19 | ||||||||
Senior Member
Iscritto dal: Jul 2002
Città: Padova
Messaggi: 4245
|
Quote:
Codice:
boot 50Mb ext3 swap 1Gb / 15Gb ext3 /dati 64Gb ext3 Quote:
Quote:
Codice:
mdadm --create /dev/md0 --level 1 --raid-devices=2 missing /dev/hdb1 mdadm --create /dev/md1 --level 1 --raid-devices=2 missing /dev/hdb2 mdadm --create /dev/md2 --level 1 --raid-devices=2 missing /dev/hdb3 mdadm --create /dev/md3 --level 1 --raid-devices=2 missing /dev/hdb4 Quote:
Codice:
mkfs.ext3 /dev/md0 mkfs.ext3 /dev/md2 mkfs.ext3 /dev/md3 mkswap /dev/md1 swapon /dev/md1 Quote:
Codice:
#creo o monto il raid mkdir /mnt/root mount /dev/md3 /mnt/root/ mkdir /dev/md3/boot mount /dev/md0 /mnt/root/boot #sistemo initrd cp /etc/mkinitrd/mkinitrd.conf /etc/mkinitrd/mkinitrd.conf.orig ------------------------------------------------ modifico /etc/mkinitrd/mkinitrd.conf in questo modo: MODULES=dep ROOT="/dev/md0 ext3" Durante la creazione di initrd mi ha dato l'errore "/usr/sbin/mkinitrd: line 15: ext3: command not found e quindi ho dovuto rimuovere ext3 per poter creare initrd ------------------------------------------------- #ricreo initrd (sostituisci a 2.4.27-2-386 la versione del tuo kernel) mkinitrd -o /boot/initrd.img-2.6.8-2-386-raid Vedi problema descritto sopra e inoltre ho eliminato la parte finale inerente la versione del kernel #sistemo grub cp /boot/grub/menu.lst /boot/grub/menu.lst.orig --------------------------------------------------- modifico /boot/grub/menu.lst in questo modo: title Debian GNU/Linux root (hd0,0) kernel /boot/vmlinuz-2.6.8-2-386 root=/dev/md0 ro initrd /boot/initrd.img-2.6.8-2-386-raid savedefault boot Quote:
Codice:
#sistemo mdadm.conf cp /etc/mdadm/mdadm.conf /etc/mdadm/mdadm.conf.orig mdadm --detail --scan >> /etc/mdadm/mdadm.conf #copio tutto quello che c'è in hda in hdb rsync -auHxv / /mnt/root/ rsync -auHxv /boot /mnt/root/boot/ #sistemo fstab cp /etc/fstab /etc/fstab.orig -------------------------------------------------------------- modifico /etc/fstab aggiungendo: /dev/md2 / ext3 defaults,errors=remount-ro 0 1 /dev/md0 /boot ext3 ........... /dev/md3 /dati ext3 ............ /dev/md1 none swap sw 0 0 ---------------------------------------------------------------- #copio fstab sul secondo disco cp /tmp/fstab /mnt/root/etc/fstab #riavvii il server init 6 #fai boot da disk1 #aggiungi al raid hda mdadm /dev/md0 -a /dev/hda1 mdadm /dev/md1 -a /dev/hda2 mdadm /dev/md2 -a /dev/hda3 mdadm /dev/md3 -a /dev/hda4 #verifica che i due dischi si stanno sincronizzando cat /proc/mdstat #ricreo initrd mkinitrd -o /boot/initrd.img-2.6.8-2-386-raid #rireo mdadm mdadm --detail --scan > /etc/mdadm/mdadm.conf Quote:
Quote:
![]() Codice:
fsck.ext3: Invalid argument while trying to open /dev/md0 /dev/md0: The superblock could not be read or does not describe a correct ext2 filesystem. If the device is valid and it really contains an exst2 filesystem (and not swap or ufs or something else), then the superblock is corrupt, and you might try running e2fsck with an alternate superblock: e2fsck -b 8193 <device> fsck failed. Please repair manually. fsck.ext3: Invalid argument while trying to open /dev/md3 /dev/md3: The superblock could not be read or does not describe a correct ext2 filesystem. If the device is valid and it really contains an exst2 filesystem (and not swap or ufs or something else), then the superblock is corrupt, and you might try running e2fsck with an alternate superblock: fsck failed. Please repair manually. CONTROL-D will exit from this shell and continue system startup. Give root password for maintenance (or type Contro-D to continue): Inoltre non mi hai fatto modificare il tipo di partizione in "FD", forse perchè dai per scontato che vada fatto? Grazie. Ciao. |
||||||||
![]() |
![]() |
![]() |
#20 |
Senior Member
Iscritto dal: Oct 2003
Città: La Spezia
Messaggi: 962
|
credo che dopo aver fatto :
#copio le partizioni di hda in hdb sfdisk -d /dev/hda | sfdisk --force /dev/hdb tu debba cambiare a mano con cfdisk il tipo di partizione, mettendola in Raid Autodetect. poi dai un sync && sync e vai avanti normalmente. stessa cosa quando avvii da raid in fault cambia il tipo sul disco A prima di aggiungerlo all'array in fault. sono curioso di vedere se ci usciamo, ![]()
__________________
![]() ![]() Gigabyte ga-p55-ud6 | Intel i7 860 | 2x2gb Corsair xms3 | Adaptec 2410sa | raid1 barracuda 500gb 7200.12 | Intel x25-m 80gb G2 | ATI radeon 4890 | tutto in downclock (non ho parenti all'enel) |
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 11:36.