View Full Version : GRUB Hard Disk Error
Spider Baby
25-09-2004, 07:11
Brutto risveglio stamattina.....
Ieri ho lanciato l'installazione via FTP di SuSE 9.1, e tutto sembrava procedere per il meglio.
Ho 3 HD sul computer:
su C: è installato windows2000, NTFS;
su D: ho installato Linux, lasciandogli creare una partizione tutta sua;
il primary slave è diviso in due partizioni, entrambe NTFS.
Poco fa sono andato al computer per vedere come era andata, e vedo che aveva effettuato un reboot e si era quindi bloccato alla schermata di selezione del boot da CD.
Ho tolto il CD e ho riavviato, ma qui è arrivata l'amara sorpresa: subito dopo i controlli HW è comparsa la scritta "GRUB Hard Disk Error ", e il computer si è bloccato.
Ho provato a riavviare, ma niente di diverso.
Allora ho provato a riavviare dal CD, da lì gli ho detto di avviarsi da HD ma a quel punto è comparsa una schermata nera con 3 righe in cui veniva laconicamente ripetuta la parola "GRUB" (no non sto soggiornando all'Overlook Hotel......).
Altro tentativo tentativo, e altra sorpresa: riavvio ancora da CD e scelgo il "Rescue". Si carica, ma mi chiede un "Rescue login". Durante l'installazione io non avevo scelto nessun login, nessun utente o password, non per distrazione ma perché non me l'aveva chiesto.
Con un po' di immaginazione provo a inserire "root" come login, ma a quel punto sembra chiedermi un comando di qualche tipo..... e io non saprei proprio che dirgli (Rescue:˜ #).
Ho anche provato a impostare da BIOS di avviare il sistema partendo da D: quindi dall'installazione di Linux, pensando che GRUB potesse avere qualche problema con il NTFS, ma anche così compare il messaggio "GRUB Hard Disk Error".
Neanche a dirlo, gli HD non interessati da Linux sono zeppi di dati che non vorrei perdere......
Non ho un altro comp su cui montare gli HD per vedere cosa è successo, ho solo un portatile da cui sto scrivendo.
Aiuto! :muro:
Spider Baby
25-09-2004, 12:01
la situazione è sempre grave
ora.... non so come, ma dopo aver trafficato nel bios il comp è andato avanti, non so neanche se ha dato l'errore grub, fatto sta che adesso ho un prompt
grub> _
e non so che cosa farci
se provo 'boot' dice che il kerner deve essere già caricato prima di fare il boot............
ThePapri
25-09-2004, 12:10
bene dal prompt
grub>
puoi avviare qualsiasi sistema operativo ... basta sapere i comandi ;-)
ATTENZIONE: tutto quello qui scritto funziona di sicuro su una Debian, su un'altra distro potrebbero esserci delle piccole diversità (es: path), ma la sostanza di base è la stessa
putroppo è qui attiva la tastiera americana ...
ora cerca dove è installato il tuo kernel ed impostalo per la partenza (non è un'impostazione permanente, ma solo temporanea per questa sessione)
Nota se hai solo un disco usa hd0 (primo disco presente nel pc), puoi usare il tasto tab per il completamento automatico e help o help <comando> per un help minimale
Nota2 tieni presente che hd0 indica il primo disco e hd0,0 indica primo disco prima partizione primaria (le partizioni estese partono da 5 anche se non ne hai 4 primarie)
caso 1: avevi creato la partizione /boot. Primo disco (hd0) e seconda partizione (,2) (se non è la seconda puoi andare a tentativi partendo da 0)
grub > kernel (hd0,2)/vmli
premi tab e ti dovrebbe completare il nome, se ti riporta un elenco di nomi scegliene uno
completando a mano la scritta
caso 2: avevi creato la solo partizione / e quindi la directory boot è sotto /
grub> kernel (hd0,2)/boot/vmli
premi tab e ti dovrebbe completare il nome, se ti riporta un elenco di nomi scegliene uno
completando a mano la scritta
premi invio
grub> boot
e magicamente parte GNU/Linux!!
**********
ora devi attivare grub sul disco
# update-grub
# vi /boot/grub/menu.lst
ATTENZIONE: modificare le righe senza decommentarle!!
cercare le righe con kopt e groot ed assicurarsi che kopt punti a / e groot a /boot
se c'è una partizione winzozz aggiungere le seguenti linee in fondo al file:
title MS-DOS + winzozz gui
root (hd0,0)
makeactive
chainloader +1
ThePapri
Spider Baby
25-09-2004, 17:23
ThePapri ti ringrazio per l'attenzione.
Problema Grub:
Vorrei eliminarlo del tutto, anche perché non mi è utile, posso cambiare il boot + facilmente da bios.
Ho inserito la riga " makeactive" per la scelta windows, ma non si apre il menu all'avvio. Non ho ben capito come attivarlo coi comandi:
# update-grub
# vi /boot/grub/menu.lst
Nella shell?
All'avvio questa è la scritta che mi compare prima del prompt:
"GNU GRUB version 0.94 (memoria...)
(Minimal BASH-like line editing is supported. For the first word, TAB lists... etc etc)"
Ritrovatomi con il prompt
grub>
ho ora provato a digitare
grub> kernel (hd1,1)/boot/vmlinuz
ma la risposta è:
Error 18: Selected cylinder exceeds maximum supported by BIOS.
Il disco ha sempre funzionato perfettamente, ed è cmq un 'misero' 14GB.
In ogni caso i dischi sono questi:
hda1 hd0,0 ntfs (windows)
hdb2 hd1,1 reiserfs (suse)
hdc1 hd2,0 ntfs (partizione 1)
hdc2 hd2,1 ntfs (partizione 2)
Immagino che ci sia anche un hd1,0 che sarà il boot.
Riesco a far partire Linux solamente in questo modo molto artificioso: riavvio con il cd di installazione di suse inserito, faccio partire l'installazione che carica da sola il kernel, a questo punto gli dico di avviare il sistema installato su HD.
Non riesco però a vedere più Windows.
----------------------------------------------------
Problema YaST:
se provo ad aprirlo, sia come utente sia come root, si apre il tab sulla barra, con la clessidra, ci pensa un po', poi si richiude da solo e non succede niente.
In alcune finestre del centro di controllo, selezionando degli elementi compare la scritta "YaST2 is starting up", ma dopo un paio di secondi scompare lasciando la finestra vuota.
Succede la stessa cosa anche con il SuSE help-center: si chiude subito senza neanche aprire la finestra.
----------------------------------------------------
Problema spegnimento:
chiudendo la sessione e scegliendo di spegnere il computer, questo resta invece acceso, con la finestra della shell aperta.
----------------------------------------------------
Problema di login root (parzialmente risolto):
quando parte linux mi entra automaticamente nell'utente predefinito (non root). Con questo non posso fare modifiche alle impostazioni.
Se tento di cambiare utente, lui mi dice che entrerò come un nuovo utente nello schermo 2, e mi presenta una finestra di login.
In questa è presente un pulsante "Amministrazione": cliccandolo mi chiede di inserire la password di root.
Se la inserisco la riconosce e mi apre di nuovo lo schermo, ma... sono ancora l'utente predefinito! Niente privilegi.....
Se invece termino la sessione ho una diversa finestra di login, senza pulsante, ma qui non succede niente a meno che io non selezioni "tipo di sessione / predefinito" e inserisca il login del solito utente.
Se uso il login della root (root/password) dopo qualche secondo mi si ripresenta la finestra di login.
Mi correggo: selezionando "tipo di sessione / personalizzato" e immettendo il login di root, si apre la root. Ok risolto almeno questo :)
Scusate tutti per il niubbismo eccessivo :boh:
SB
Originariamente inviato da ThePapri
title MS-DOS + winzozz gui
:sbonk:
Spider Baby
26-09-2004, 09:18
aggiornamento breve:
tornando all'installazione e facendo un aggiornamento di Grub, ho scelto di eliminarlo dal MBR di C: e di spostarlo sull'unità occupata da Linux.
Ora Windows parte di nuovo.
Mi aspettavo però che selezionando nel Bios il secondo disco come boot mi si aprisse Linux, invece esce soltanto il messaggio di "No operating system".
Ho provato a questo punto a far partire Linux nel vecchio modo, ovvero partendo dal CD di installazione, ma sembra che si blocchi tutto.
A questo punto, risolto il problema con C:, proverò a reinstallare da capo, con più attenzione :doh:
ThePapri
26-09-2004, 09:34
Originariamente inviato da Spider Baby
ThePapri ti ringrazio per l'attenzione.
Problema Grub:
Vorrei eliminarlo del tutto, anche perché non mi è utile, posso cambiare il boot + facilmente da bios.
non mi sembra che sia più semplice da bios, anche perché da bios non puoi indicare la partizione da cui fare il boot, al massimo se hai più dischi puoi indicare da quale disco fare il boot, ma è un'operazione abbastanza lunga ... Grub è molto meglio
Ho inserito la riga " makeactive" per la scelta windows, ma non si apre il menu all'avvio. Non ho ben capito come attivarlo coi comandi:
# update-grub
# vi /boot/grub/menu.lst
Nella shell?
no, questi sono i comandi per attivare grub e vanno dati da root solo una volta. L'editing del menu.lst devi farlo ogni volta che aggiungi un nuovo kernel o sistema operativo di altro tipo
All'avvio questa è la scritta che mi compare prima del prompt:
"GNU GRUB version 0.94 (memoria...)
(Minimal BASH-like line editing is supported. For the first word, TAB lists... etc etc)"
Ritrovatomi con il prompt
grub>
ho ora provato a digitare
grub> kernel (hd1,1)/boot/vmlinuz
ma la risposta è:
Error 18: Selected cylinder exceeds maximum supported by BIOS.
hai hai hai, il tuo bios non è in grado di fare il boot da un punto qualsiasi del disco. Questo vuol dire che è meglio che ti crei una partizione /boot all'inizio di uno dei tuoi dischi. In alternativa puoi vedere se esiste un update del tuo bios che risolve questo problema.
Il disco ha sempre funzionato perfettamente, ed è cmq un 'misero' 14GB.
In ogni caso i dischi sono questi:
hda1 hd0,0 ntfs (windows)
hdb2 hd1,1 reiserfs (suse)
hdc1 hd2,0 ntfs (partizione 1)
hdc2 hd2,1 ntfs (partizione 2)
Immagino che ci sia anche un hd1,0 che sarà il boot.
no, hd1,0 non è il boot, perché sopra hai scritto che il Linux è in (hd1,1)/boot/vmlinuz e quindi si trova nella seconda partizione del disco 2 (hdb).
Probabilmente in hd0,0 ci hai messo lo swap!!
fai così elimina suse e rifai le partizioni creando prima la partizione /boot di 50 Mb, lo swap di quanto vuoi e poi crei una partizione / del rimanente. Durante la fase di installazione gli dici di caricarti grub (che è meglio di lilo e molto, ma molto meglio del bios).
In questo modo di sicuro ti funzionerà la partenza del GNU/Linux che installi.
Se a questo punto non puoi ancora avviare winzozz devi editare menu.lst
# vi /boot/grub/menu.lst
ATTENZIONE: modificare le righe senza decommentarle!!
cercare le righe con kopt e groot ed assicurarsi che kopt punti a / e groot a /boot
se c'è una partizione winzozz aggiungere le seguenti linee in fondo al file:
title MS-DOS + winzozz gui
root (hd0,0)
makeactive
chainloader +1
Inizia a fare questo e poi apri un nuovo thread se hai altri problemi, io Yast non lo conosco
Problema spegnimento:
chiudendo la sessione e scegliendo di spegnere il computer, questo resta invece acceso, con la finestra della shell aperta.
questo dipende dal fatto che non hai indicato di usare un gestore nel boot loader; dipende da quale gestore ai scelto
in grub è sufficiente che inserisci acpi=on o apm=on (a seconda del gestore che hai scelto) nella riga in cui indichi dove si trova il kernel
es:
kernel /vmlinuz root=/dev/hda ro acpi=on
ThePapri
Spider Baby
28-09-2004, 15:28
Aggiornamento:
ho installato ancora da zero, creando partizioni tutte sul disco hdb (D: ) all'incirca così:
/boot 50MB
/swap 600MB
/ 9GB
/usr 3GB
installando il boot loader per Grub sul MBR di hdb.
In questo modo lasciando il bios così com'è parte windows senza problemi, su C:, ma impostando D: come disco di Boot non succede altro che comparire il prompt di cui parlavo prima, col quale non son riuscito a combinare nulla, pur tentando tutte le possibili combinazioni della riga di comando:
kernel (hd1,1)/boot/vmlinuz
Eliminato le partizioni e ricominciato da zero di nuovo, questa volta ho provato a usare Lilo, temendo che fosse proprio Grub il problema.
Tutto come prima, ma ora se avvio da D: (hdb) compaiono 10 righe che iniziano con "L" e continuano con "99" ripetuto continuamente.
Non può essere un problema del bios perché in precedenza avevo installato WinXP su E: e partiva perfettamente impostando l'avvio da E:.
Forse sbaglio qualcosa nelle impostazioni: la partizione /boot va bene formattata come ext3? Va attivata (comunque ho provato entrambi i modi)? Grub/Lilo lo devo posizionare nella MBR di hdb, o in una partizione specifica?
Continuerò a fare ulteriori tentativi.
ThePapri
28-09-2004, 20:12
Originariamente inviato da Spider Baby
Aggiornamento:
ho installato ancora da zero, creando partizioni tutte sul disco hdb (D: ) all'incirca così:
/boot 50MB
/swap 600MB
/ 9GB
/usr 3GB
hai 300Mb di RAM?
lo swap è molto meglio se è un multiplo della RAM (quindi RAM * 1 o RAM * 2 solitamente)
se sei all'inizio io unirei /usr e / dato che sono sullo stesso disco
installando il boot loader per Grub sul MBR di hdb.
In questo modo lasciando il bios così com'è parte windows senza problemi, su C:, ma impostando D: come disco di Boot non succede altro che comparire il prompt di cui parlavo prima, col quale non son riuscito a combinare nulla, pur tentando tutte le possibili combinazioni della riga di comando:
kernel (hd1,1)/boot/vmlinuz
così selezioni Linux (il kernel)
per farlo partire devi dare subito dopo il comando
boot
Eliminato le partizioni e ricominciato da zero di nuovo, questa volta ho provato a usare Lilo, temendo che fosse proprio Grub il problema.
Tutto come prima, ma ora se avvio da D: (hdb) compaiono 10 righe che iniziano con "L" e continuano con "99" ripetuto continuamente.
Non può essere un problema del bios perché in precedenza avevo installato WinXP su E: e partiva perfettamente impostando l'avvio da E:.
Forse sbaglio qualcosa nelle impostazioni: la partizione /boot va bene formattata come ext3? Va attivata (comunque ho provato entrambi i modi)? Grub/Lilo lo devo posizionare nella MBR di hdb, o in una partizione specifica?
Continuerò a fare ulteriori tentativi.
gli errori che hai avuto con lilo non li conosco, non saprei ...
per /boot va bene ext3
di solito si instalano sull'MBR dell'hd che è stato selezionato nel bios come disco da cui far partire il sistema operativo
ThePapri
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.