Errori comuni di Gentoo Grub
1.
Note iniziali
Riconoscimenti
Molte grazie a Earthwings,
penetrode,
loyaltonone,
pilla,
airhead,
nephros,
yamakawa
e a tutti gli altri, per i suggerimenti sul thread
originale.
Avvertenza sulla responsabilità
Gli esempi forniti sono soltanto esempi. Assicurati di modificare i numeri
delle partizioni secondo le caratteristiche del tuo sistema. Seguendo le
soluzioni fornite da questo documento, te ne assumi tutta la responsabilità.
2.
Grub loading, please wait...
Situazione
Codice 2.1: Grub output |
GRUB loading stage 1.5
GRUB loading, please wait...
|
Dopo questo messaggio, il sistema si blocca. Il problema scompare se si tenta
di avviare il sistema usando un floppy grub.
Soluzione
Secondo The_Bell,
si potrebbe modificare l'ordine di boot nel BIOS.
Imposta il BIOS in modo che non avvii dal floppy come prima opzione.
penetrode
ha scritto che questo problema potrebbe essere dovuto anche a una cattiva
impostazione delle CFLAGS. Sebbene l'attuale ebuild di grub filtri la CFLAG
-fstack-protector, non sarebbe male ricompilare GRUB con delle CFLAGS
pulite, se non si riesce a risolvere altrimenti.
Codice 2.2: Usare CFLAGS pulite per ricompilare GRUB |
# CFLAGS="-O2 -march=i686 -fomit-frame-pointer -pipe" emerge grub
|
3.
Grub Error 12
Situazione
Codice 3.1: Grub Output |
12 : Invalid device requested.
|
Questo errore si può avere se la sintassi della stringa che identifica il
dispositivo non è corretta, ma anche nel caso di un errore non definito
altrimenti.
Soluzione
Mentre installavi grub nel settore di boot usando i comandi interattivi, hai
eseguito nel prompt di grub le due linee qui sotto?
Codice 3.2: Comandi per l'installazione interattiva |
grub> root (hd0,0)
grub> setup (hd0)
|
(hd0,0) deve essere sostituito con la tua partizione di boot, e (hd0) con
l'hard disk che hai scelto. Ricordati che (hd0) installerà il bootloader nel
Master Boot Record del primo disco, il primary master.
4.
Grub Error 15
Situazione
Questo errore si può avere in due diverse fasi della configurazione di GRUB:
durante la configurazione iniziale (installando GRUB nel master boot record),
oppure dopo aver avviato il sistema, mentre si sta tentando di lanciare Linux
(o qualsiasi altra opzione).
Codice 4.1: Grub Output - Configurazione iniziale |
grub> root (hd0,0)
Filesystem type is xfs, partition type 0x83
grub> setup (hd0)
Checking if "/boot/grub/stage1" exists... no
Checking if "/grub/stage1" exists... no
Error 15: File not found
|
Codice 4.2: Grub Output - Avvio di una opzione |
Booting 'gentoo Linux'
root (hd0,0)
Filesystem type is ext2fs, partition type 0x83
kernel (hd0,0)/boot/kernel-2.4.20 root=/dev/sda3 vga=792
Error 15: File not found
Press any key to continue...
|
Soluzione - Configurazione iniziale
L'errore si ha quando il nome del file specificato non viene trovato, se
tutto il resto (come le info sul disco o sulla partizione) è OK.
Spesso, questo errore denota un'immagine del kernel mancante. Assicurati che
il file a cui si fa riferimento esista nella partizione di boot.
Per sapere il nome esatto del kernel, avvia dal CD di installazione e monta
la partizione radice e (se è presente) quella di boot. Fatto ciò, esegui il
chroot nel tuo sistema e verifica l'elenco dei file disponibili per vedere
quali immagini del kernel ci sono:
Codice 4.3: Verificare l'esistenza dell'immagine del kernel |
# cd /boot
# ls
|
Questo comando elencherà tutti i kernel presenti nella partizione di boot. Se
il tuo kernel non è presente, assicurati di averlo compilato (usando
genkernel o manualmente):
Codice 4.4: Ricompilare il kernel |
# cd /usr/src/linux/
# make menuconfig
# make
|
E di averlo copiato nella partizione di boot:
Codice 4.5: Copiare il kernel |
# cp /usr/src/linux/arch/i386/boot/bzImage /boot
|
Verifica che il nome del kernel sia esattamente uguale a quello menzionato
nel file grub.conf. Assicurati inoltre che la riga kernel
nel file grub.conf si riferisca alla giusta partizione
(esplicitamente o implicitamente).
Il problema può essere causato anche da un BIOS che ignori il disco su cui
risiedono il kernel o gli stage grub. Inoltre, la partizione su cui grub
salva i suoi stage non dovrebbe utilizzare una configurazione software RAID-5
(o un'altra tecnologia di striping).
Soluzione - Avviare un'opzione
Prima di tutto, verifica che le righe root e setup usate siano
corrette.
Se sei certo che siano valide, allora forse stai usando una versione
di GRUB buggata (0.93.20031222). Aggiorna l'albero del Portage o maschera
questa versione di grub:
Codice 4.6: Mascherare Grub |
# echo "=sys-boot/grub-0.93.20031222" >> /etc/portage/package.mask
# emerge grub -p
|
Potresti anche provare ad usare lo script grub-install, come è
raccomandato dagli autori di GRUB:
Codice 4.7: Usare grub-install |
# grub-install --root-directory=/boot /dev/sda
|
Se neanche questo risolve il problema, la partizione di boot potrebbe essere
corrotta. Controlla la presenza di eventuali errori:
Codice 4.8: Verificare la presenza di errori in una partizione |
# fsck -y /dev/sda1
|
5.
Grub Error 17
Situazione
Codice 5.1: Grub Output |
root (hd0,0)
filesystem type unknown partition type 0x7
Error 17 : Cannot mount selected partition
|
Soluzione
Si ha questo errore se la partizione richiesta esiste, ma GRUB non riesce a
riconoscere il tipo di filesystem.
Assicurati di controllare le impostazioni root(x,y) in grub.conf.
Inoltre, se stai cercando di avviare Windows, assicurati che in
grub.conf siano presenti le righe root (hdX,Y) (o
rootnoverify (hdX,Y)) e chainloader (hdX,Y)+1.
6.
Grub Error 18
Situazione
Codice 6.1: Grub Output |
kernel (hd1,4)/bzImage root=/dev/sdb7
Error 18: Selected cylinder exceeds max supported by BIOS
|
Soluzione
Questo errore si ha quando viene tentata una lettura ad un indirizzo linear
block oltre l'area tradotta dal BIOS. Questo in genere accade se il disco è
più grande di quanto il BIOS possa gestire (512MB per i dischi (E)IDE sulle
macchine più vecchie, o più grandi di 8GB in generale).
Cerca di aggiornare il BIOS e/o sposta la partizione di boot all'inizio del
disco (o comunque nell'intervallo supportato).
7.
GRUB GRUB GRUB GRUB GRUB ...
Situazione
Codice 7.1: Grub Output |
GRUB GRUB GRUB GRUB GRUB GRUB GRUB GRUB GRUB GRUB GRUB GRUB GRUB GRUB GRUB
GRUB GRUB GRUB GRUB GRUB GRUB GRUB GRUB GRUB GRUB GRUB GRUB GRUB GRUB GRUB
...
|
Soluzione
Secondo airhead
questo errore può essere causato dal fatto che il BIOS rilevi i tuoi dischi
automaticamente. Prova a impostare nel bios "User Type HDD".
Un'altra possibilità è che tu abbia avuto Grub installato sull'MBR e poi
abbia provato a reinstallarlo (ad esempio dopo aver sostituito l'hard disk),
ma usando dei comandi setup e root sbagliati.
8.
Probing Devices to Guess BIOS Drives. This May Take a Long Time.
Situazione
Mentre stai provando ad installare grub, questo si blocca dopo aver
visualizzato la seguente riga:
Codice 8.1: Grub Output |
# grub
Probing devices to guess BIOS drives. This may take a long time.
|
Soluzione
Una causa riportata è una configurazione strana dei dischi, come ad esempio
avere dischi ultra/non-ultra DMA su un unico cavo.
9.
Durante l'installazione, grub si blocca
Situazione
Durante l'installazione, grub si blocca:
Codice 9.1: Grub Output |
# grub
|
Soluzione
Se non hai un drive floppy, hai usato l'opzione --no-floppy?
Codice 9.2: Installare grub usando l'opzione --no-floppy |
# grub --no-floppy
|
10.
Uncompressing Linux... Ok, booting the kernel.
Situazione
Il sistema si blocca dopo aver visualizzato la seguente riga:
Codice 10.1: Linux Output |
Uncompressing Linux... Ok, booting the kernel.
|
Soluzione
Per parlare chiaramente, questo non è un errore di grub. Una possibile causa
è che ACPI non funzioni correttamente, essendo però abilitato nel kernel.
Prova a disabilitarlo nel bios o nel kernel.
11.
Grub mostra solo il suo prompt
Situazione
All'avvio del sistema, viene mostrato il prompt di grub anziché la lista di
opzioni definite nel file grub.conf.
Soluzione
Monta la partizione di boot e controlla se il file
grub/grub.conf esiste.
Codice 11.1: Montare e controllare |
# mount /dev/sda1 /mnt/gentoo/boot
# cat /mnt/gentoo/boot/grub/grub.conf
|
Assicurati anche che esista il link simbolico menu.lst:
Codice 11.2: Verificare il link simbolico |
# ls -l /mnt/gentoo/boot/grub/menu.lst
lrwxrwxrwx 1 root root 9 Mar 7 14:00 /mnt/gentoo/boot/grub/menu.lst -> grub.conf
|
Se non esiste, occorre ricrearlo:
Codice 11.3: Ricreare il link simbolico menu.lst |
# cd /mnt/gentoo/boot/grub
# ln -snf grub.conf menu.lst
|
In questo caso, bisogna poi reinstallare grub:
Codice 11.4: Reinstallare Grub |
# grub-install --root-directory=/boot /dev/sda
|
12.
Could Not Find Device For /boot/boot: Not Found Or Not a Block Device
Situazione
Eseguendo grub-install durante l'installazione di GRUB, si ottiene il
seguente errore:
Codice 12.1: Grub Output |
# grub-install --root-directory=/boot /dev/sda
Could not find device for /boot/boot: not found or not a block device
|
Soluzione
Controlla di non aver dimenticato quanto segue:
Codice 12.2: Aggiornare il file mtab |
# grep -v rootfs /proc/mounts > /etc/mtab
|
13.
Il sistema si riavvia dopo aver premuto Invio nel menù Grub
Situazione
Dopo aver premuto Invio nel menù di Grub durante l'avvio del sistema, il
sistema si riavvia.
Soluzione
Prova a disabilitare il supporto framebuffer nel kernel. Se non basta,
disattiva anche APM e ACPI.
14.
Dopo aver premuto Invio nel menù di Grub, lo schermo diventa nero
Situazione
Dopo aver premuto Invio nel menù di Grub durante l'avvio del sistema, lo
schermo diventa nero, ma il sistema risponde (ad esempio, la spia numlock si
può accendere e spegnere).
Soluzione
Disattiva il framebuffer (di solito rimuovendo vga=XYZ dal file
grub.conf) e controlla l'architettura del processore nella
configurazione del kernel.
15.
Immagine Grub mancante
Situazione
Avviando il sistema, non si vede lo splashscreen di Gentoo.
Soluzione
Prima di tutto, controlla che il file dello splashscreen a cui ci si
riferisce in grub.conf esista veramente. Se esiste, controlla
l'ebuild di grub. Forse la patch per la splash image è commentata nella
versione che stai usando.
16.
Impossibile avviare Windows da un secondo disco
Situazione
Dopo aver selezionato l'opzione Windows, il sistema si rifiuta di avviarsi
senza che ci sia un chiaro motivo.
Soluzione
cyrillic
ci ha informato che si possono "mappare" i dischi in un ordine diverso,
modificando l'opzione Windows in grub.conf in questo modo:
Codice 16.1: Mappare i dischi |
title Windows XP
map (hd0) (hd1)
map (hd1) (hd0)
chainloader (hd1,0)+1
|
17.
Grub dà un errore di "segmentation fault" durante l'installazione
Situazione
La situazione descritta qui sotto è rilevante solo per grub-0.95.x installato
nel settore di avvio.
Codice 17.1: Installare Grub |
grub> root (hd0,0)
grub> setup (hd0)
Segmentation fault
|
Soluzione
C'è un bug conosciuto riguardo a questo problema, corretto in grub 0.96. È
risaputo anche che grub 0.94-r1 e grub 0.94-r2 dovrebbero funzionare
correttamente. Se il problema non si risolve, puoi provare ad emergere
grub-static, che attualmente è stabile su amd64 e instabile su x86 (~x86).
Controlla il bug #79378 per maggior
informazioni.
I contenuti di questo documento sono rilasciati sotto la licenza Creative
Commons - Attribution / Share Alike.
|