R: Al 28 Settembre 1997 è (riporto letteralmente. ndt) "2.0.30 + pre-9 2.0.31 + Werner Fink's swapping patch + the alpha RAID patch". A Novembre 1997, è 2.0.31 + ... !?
R: Assicuratevi che/usr/include/linux
sia un link simbolico a/usr/src/linux/include/linux
. Assicuratevi che i nuovi filesraid5.c
, etc. siano stati copiati nei posti giusti. A volte il comando patch non crea nuovi files. Provate con l'opzione-f
del comandopatch
.
R: raidtools-0.42 richiede linuxthreads-0.6 da: ftp://ftp.inria.fr/INRIA/Projects/cristal/Xavier.Leroy In alternativa si possono usare le glibc v2.0.
mdrun -a /dev/md0: Invalid argument
R: Si deve usaremkraid
per inizializzare il set RAID prima che venga usato per la prima volta.mkraid
si assicura del fatto che il sistema RAID sia inizialmente in uno stato di coerenza cancellando le partizioni RAID. In aggiunta,mkraid
si occuperà di creare i superblock RAID.
mdrun -a /dev/md0: Invalid argument
La procedura di setup è stata:
cat /proc/mdstat
produce questo output:
Personalities : read_ahead not set md0 : inactive sda1 sdb1 6313482 blocks md1 : inactive md2 : inactive md3 : inactive
mdrun -a
genera il messaggio di errore
/dev/md0: Invalid argument
R: Si provi ad eseguirelsmod
(o, in alternativa,cat /proc/modules
) per vedere se i moduli raid sono stati caricati. Se non lo sono stati, possono essere caricati in maniera esplicita con i comandimodprobe raid1
omodprobe raid5
. In alternativa, se usate l'autoloader e se credete chekerneld
debba caricarli e non lo fa, potrebbe essere a causa del fatto che il loader manca delle informazioni che servono per caricare i moduli. Modificate/etc/conf.modules
aggiungendo le linee seguenti:alias md-personality-3 raid1 alias md-personality-4 raid5
mdadd -a
si ha l'errore:
/dev/md0: No such file or directory
. Sembra però che
non vi siano /dev/md0
da nessuna parte. E adesso?
R: Il package raid-tools crea questi dispositivi quando viene eseguito il comandomake install
come utente root. In alternativa, si può fare così:cd /dev ./MAKEDEV md
/dev/md0
,
provo a montarlo ma ottengo il seguente errore:
mount: wrong fs type, bad option, bad superblock on /dev/md0,
or too many mounted file systems
.
Cosa c'è che non va?
R: Si deve creare un file system su/dev/md0
prima che sia possibile montarlo. Usaremke2fs
.
Sul mio sistema Linux 2.0.30, mentre eseguivomkraid
su un dispositivo RAID-1, durante la pulizia delle due distinte partizioni ho visto apparire sulla console gli errori"Cannot allocate free page"
e altri errori"Unable to handle kernel paging request at virtual address ..."
risultavano nel log di sistema. A questo punto il sistema è diventato pressoché inutilizzabile, ma si è poi ristabilito dopo un po'. L'operazione sembra essersi conclusa senza errori e adesso utilizzo senza problemi il mio dispositivo RAID-1. Comunque quegli errori continuano a sconcertarmi. Qualche idea?
R: Questo era un bug ben conosciuto nei kernel 2.0.30. È stato corretto nel kernel 2.0.31; in alternativa si può tornare al 2.0.29.
mdrun
su un dispositivo RAID-1,
RAID-4 o RAID-5. Se provo ad eseguire mdrun
su un
dispositivo aggiunto con mdadd
mi viene dato il
messaggio ''invalid raid superblock magic
''.
R:
Assicurarsi che sia stata seguita la parte della procedura di
installazione dove viene utilizzato mkraid
.
/dev/md0
il kernel se ne esce con molti
errori tipo md0: device not running, giving up !
e
I/O error...
. Ho aggiunto con successo i miei
dispositivi al dispositivo virtuale.
R:
Per essere utilizzabile un dispositivo deve essere in funzione.
Si usi il comando mdrun -px /dev/md0
dove x è 1 per
linear, 0 per RAID-0 o 1 per RAID-1, etc.
cat /proc/mdstat
mi dice la grandezza totale del
dispositivo ma df
mi fa vedere solo le dimensioni
del primo dispositivo fisico
R:
Si deve eseguire mkfs
su un nuovo dispositivo md
prima di usarlo per la prima volta, in modo tale che
il filesystem copra tutto il dispositivo.
/etc/mdtab
usando mdcreate, ho poi
eseguito mdadd
, mdrun
e fsck
sulle mie due partizioni /dev/mdX
. Prima del
reboot sembra tutto a posto. Appena effettuo il reboot
fsck
mi dà errori su tutte e due le partizioni:
fsck.ext2: Attempt to read block from filesystem resulted
in short read while trying too open /dev/md0
.
Perché?! Come posso fare a correggerlo?!
R: Durante il processo di boot, le partizioni RAID devono essere messe in funzione prima che vengano controllate dafsck
. Questo deve essere fatto in uno degli script di boot. In qualche distribuzionefsck
è eseguito da/etc/rc.d/rc.S
, in altre è eseguito da/etc/rc.d/rc.sysinit
. Si modifichino questi file in modo da eseguiremdadd -ar
*prima* difsck -A
. Ancora meglio, suggerisco che venga eseguitockraid
semdadd
restituisce un codice di errore. Come fare ciò è discusso in maggiore dettaglio nella domanda 14 della sezione ''Riparare gli errori''. (Qui l'originale inglese sembra incoerente, in quanto la domanda 14 della sezione menzionata non è attinente. La domanda più attinente sembra essere la 7 della sezione "Considerazioni sul setup e sull'installazione". ndt)
invalid raid
superblock magic
R: Questo bug è stato corretto. (Settembre 97) Assicuratevi di avere l'ultima versione del codice RAID.
Warning: could not write 8 blocks
in inode table starting at 2097175
R: Questo sembra essere un problema conmke2fs
(Novembre 97) Un rimedio temporaneo consiste nel procurarsi il codice di mke2fs e aggiungere#undef HAVE_LLSEEK
ae2fsprogs-1.10/lib/ext2fs/llseek.c
subito prima del primo#ifdef HAVE_LLSEEK
e quindi ricompilare mke2fs.
ckraid
non riesce a leggere /etc/mdtab
R: Il formato del file di configurazione usato per RAID0/linear in/etc/mdtab
è obsoleto, anche se sarà supportato ancora per un po'. I file di configurazione usati attualmente sono chiamati/etc/raid1.conf
, etc.
raid1.o
) non vengono caricati
automaticamente; si deve eseguire modprobe manualmente prima di
eseguire mdrun. Come posso ovviare all'inconveniente?
R: Per il caricamento automatico dei moduli, si possono aggiungere le seguenti linee a/etc/conf.modules
:alias md-personality-3 raid1 alias md-personality-4 raid5
mdadd
13 dispositivi e adesso sto
cercando di eseguire mdrun -p5 /dev/md0
, ma mi viene
dato il messaggio: /dev/md0: Invalid argument
R: La configurazione predefinita di software RAID prevede 8 dispositivi reali. Editarelinux/md.h
, modificare#define MAX_REAL=8
con un numero più alto e ricompilare il kernel.
md
su delle partizioni
nella nostra ultima SPARCstation 5. Sospetto che sia qualcosa
che ha a che fare con le etichette di volume.
R:
Le etichette di volume Sun risiedono nel primo 1K di
una partizione. Per RAID-1 le etichette di volume Sun
non sono un problema poiché ext2fs
salterà
l'etichetta di ogni mirror. Per gli altri livelli RAID
(0, linear e 4/5) questo sembra essere un problema;
non si è arrivati ancora ad una causa certa (Dicembre 97).