Guida a Grub: differenze tra le versioni

Nessun cambiamento nella dimensione ,  6 set 2005
m
→‎Perché Grub: link glossario
m (→‎Perché Grub: link glossario)
m (→‎Perché Grub: link glossario)
Riga 1: Riga 1:
{{Debianized}}
== Introduzione ==
== Introduzione ==


Questa � una guida generica (non specifica per Debian) su '''Grub''' che
Questa � una guida generica su grub che
comprende argomenti quali l'installazione e la configurazione da zero
comprende argomenti quali l'installazione e la configurazione da zero
di grub, trattati in modo semplice (si spera) in modo da non spaventare
di grub, trattati in modo semplice (si spera) in modo da non spaventare
i principianti. La guida � rivolta quindi a tutti coloro i quali per
i principianti. La guida � rivolta quindi a tutti coloro i quali per
necessit� o diletto vogliano imparare ad usare questo
necessit� o diletto vogliano imparare ad usare questo
versatile [[boot loader]].
versatile bootloader.


== Perch� Grub ==
== Perch� Grub ==
Riga 24: Riga 22:
sicuri di non sbagliare il percorsi o i nomi dei file. In questo modo � facile fare velocemente molte prove con kernel o
sicuri di non sbagliare il percorsi o i nomi dei file. In questo modo � facile fare velocemente molte prove con kernel o
parametri di boot diversi, al volo, senza dover modificare alcun file.
parametri di boot diversi, al volo, senza dover modificare alcun file.
Per confronto, con lilo (altro [[boot loader]] diffuso), per modificare un
Per confronto, con lilo (altro bootloader diffuso), per modificare un
parametro di boot o fare partire un nuovo kernel (anche solo per prova)
parametro di boot o fare partire un nuovo kernel (anche solo per prova)
� necessario avviare il sitema, modificare
� necessario avviare il sitema, modificare
<tt>lilo.conf</tt>, eseguire il comado lilo e riavviare. Con '''Grub''' basta invece scrivere le modifiche al boot: se c'� un errore ed il kernel non si
lilo.conf, eseguire il comado lilo e riavviare. Con '''Grub''' basta invece scrivere le modifiche al boot e se c'� un errore ed il kernel non si
carica basta resettare il sistema e provare di nuovo. Trovati i
carica basta resettare il sistema e provare di nuovo. Trovati i
parametri giusti si possono salvare in '''<tt>/boot/grub/menu.lst</tt>''' in modo che non sia pi� necessario inserirli a mano.
parametri giusti si possono salvare in '''<tt>/boot/grub/menu.lst</tt>''' in modo che non sia pi� necessario inserirli a mano.
Riga 33: Riga 31:
== Installazione di Grub ==
== Installazione di Grub ==


Normalmente '''Grub''' � gi� installato in Debian. Se per� si �
Nomalmente '''Grub''' � gi� installato in Debian. Se per� si �
installato, per ultimo, un S.O. (come MS-Windows) che ignora la presenza di altri
installato un S.O. (come MS-Windows) che ignora la presenza di altri
sistemi sul disco e vuole monopolizzare il nostro pc, ci si trova nella
sistemi sul disco e vuole monopolizzare il nostro pc, ci si trova nella
necessit� di installare nuovamente '''Grub''' per riappropriarci della libert� di scegliere. Pu� anche succedere di aver provato un altro boot loader e di voler ritornare a '''Grub''': anche in questo caso basta seguire quanto segue.
necessit� di installare nuovamente '''Grub''' per riappropriarci della libert� di scegliere. Pu� anche succedere di aver provato un altro boot loader e di voler ritornare a '''Grub''': anche in questo caso basta seguire quanto segue.


Per usare '''Grub''' � necessario installarlo nel [[MBR]] (in realt� � anche possibile [[Guida_a_Grub#Installare_Grub_su_floppy|installarlo solo in un floppy]]) con il seguente comando:
Per usare '''Grub''' � necessario installarlo nel "Master Boot Record - Il primo settore dell'hard disk" (MBR) (in realt� � anche possibile installarlo solo in un floppy) con il seguente comando:


<pre>
<pre>
# grub-install --no-floppy /dev/hda
# grub-install --root-directory=/boot /dev/hda
</pre>
</pre>


in questo modo ogni altro [[boot loader]] verr� sovrascritto e all'avvio apparir� grub che permetter� di avviare ogni sistema presente su hard disk. Non � necessario avere tanti [[boot loader]] anche se si installano tante distribuzioni,
ma attenzione: ogni altro boot loader verr� eliminato. Non �
necessario avere tanti boot loader anche se si installano tante distribuzioni,
ne basta uno che le fa partire tutte.
ne basta uno che le fa partire tutte.
 
Il "primo pezzo di grub" (detto
Se si � installato windows, gli altri S.O. non saranno pi� avviabili. Come si fa allora a eseguire il precedente comando per ripristinare grub? Basta usare un livecd per avviare il sistema, non � neanche necessario che ci sia grub in tale cd. Dopo l'avvio, monteremo la partizione di root del sistema linux installato su hard disk:
stage1) risiede nel MBR (Master Boot Record - Il primo settore dell'hard disk), il "secondo pezzo di grub" (stage2) ed i file di configurazione risiedono nella '''partizione di root di grub''' che � <tt>/boot</tt> in questo caso (da non confondere con la '''partizione di root del sistema /'''). Il menu iniziale del '''Grub''' � configurato nel file <tt>/boot/grub/menu.lst</tt>, basta modificarlo ed all'avvio '''Grub''' legger� la nuova configurazione.
<pre>
# mkdir /mnt/root
# mount /dev/hda3 /mnt/root
</pre>
 
dove si � fatta l'ipotesi che sia <tt>/dev/hda3</tt> la partizione di root. Ora con <tt>chroot</tt> si pu� cambiare al volo la partizione di root del nostro livecd:
 
<pre>
# chroot /mnt/root
</pre>
 
Adesso abbiamo sotto di noi la root del sistema installato su disco. Montiamo anche la partizione di boot, se questa � posta in una partizione separata. A questo punto possiamo eseguire <tt>grub-install</tt> come visto prima per ripristinare grub. Se si vuole si pu� anche generare automaticamente un menu di avvio con il [[Guida_a_Grub#Usare_update-grub|comando <tt>update-grub</tt>]].
 
Vediamo ora di capire un poco meglio quali sono i vari componenti di grub.
 
Il "primo pezzo di grub" (detto stage1) risiede nel [[MBR]], il "secondo pezzo di grub" (stage2) ed i file di configurazione risiedono nella '''partizione di root di grub''': questa sar� la partizione montata in <tt>/boot</tt> se si ha una partizione separata per <tt>/boot</tt>, altrimenti sar� la '''partizione di root del sistema''' (montata in /). La ''cartella'' in cui risiede lo stage2 e tutti i file di configurazione di grub � in ogni caso <tt>/boot/grub/</tt>.
 
Il menu iniziale del '''Grub''' � configurato nel file <tt>/boot/grub/menu.lst</tt>, basta modificarlo ed all'avvio '''Grub''' legger� la nuova configurazione. Il [[Guida_a_Grub#Usare_update-grub|comando <tt>update-grub</tt>]] genera automaticamente questo appunto questo file, anche se con alcune limitazioni (per maggiori informazioni vedere la sezione [[Guida_a_Grub#Usare_update-grub|<tt>'''update-grub'''</tt>]]).
 
Dopo l'installazione di grub, lo stage1 rester� sempre immutato e punter� allo stage2. Lo stage2, caricher� i file di configurazione che potranno essere modificati a piacimento senza mai dover modificare il settore di avvio ([[MBR]]).


== Far partire il sistema principale ==
== Far partire il sistema principale ==
Riga 128: Riga 107:
a seconda di dove si trova l'immagine (si trova sempre nella stessa partizione/directory del suo kernel).
a seconda di dove si trova l'immagine (si trova sempre nella stessa partizione/directory del suo kernel).


{{Warningbox|Un kernel partir� solo con
http://www.ubuntulinux.org/wiki/IconWarning.png '''Attenzione:''' Un kernel partir� solo con
la sua immagine initrd, se provate ad usare immagini intrd di altri
la sua immagine initrd, se provate ad usare immagini intrd di altri
kernel il sistema non partir� dando un ''Kernel Panic''. Analogamente se cercate di fare partire un kernel che necessita di initrd, senza initrd il sistema andr� ancora in ''Kernel Panic''.}}
kernel il sistema non partir� dando un ''Kernel Panic''. Analogamente se cercate di fare partire un kernel che necessita di initrd, senza initrd il sistema andr� ancora in ''Kernel Panic''.


== Configurare il Men� di grub ==
== Configurare il Men� di grub ==
1 760

contributi