Guida a GRUB 2: differenze tra le versioni

Vai alla navigazione Vai alla ricerca
mNessun oggetto della modifica
Riga 35: Riga 35:
Pertanto si può osservare una separazione da quello che è il bootloader proprio (/boot/grub) e quelle che sono le utility necessarie alla sua configurazione (/etc/grub.d e script di configurazione). Inoltre con /etc/grub.d il menù ha assunto una forma modulare, disponendo di uno script di configurazione per ogni voce del menù.
Pertanto si può osservare una separazione da quello che è il bootloader proprio (/boot/grub) e quelle che sono le utility necessarie alla sua configurazione (/etc/grub.d e script di configurazione). Inoltre con /etc/grub.d il menù ha assunto una forma modulare, disponendo di uno script di configurazione per ogni voce del menù.


Si sottolinea che la directory /boot/grub è modificata, o creata ex novo, tramite il comando <tt>grub-install</tt>, lo stesso comando che provvede inoltre all'installazione di GRUB sul punto di boot.
Si sottolinea che la directory /boot/grub è modificata, o creata ex novo, tramite il comando <code>grub-install</code>, lo stesso comando che provvede inoltre all'installazione di GRUB sul punto di boot.


==/etc/grub.d/==
==/etc/grub.d/==
In questa directory ci sono i file con cui viene costruita la configurazione di GRUB2.
In questa directory ci sono i file con cui viene costruita la configurazione di GRUB2.
Infatti la configurazione vera e propria si trova nel file <code>/boot/grub/grub.cfg</code>, e viene scritta tramite un comando apposito della shell (<tt>grub-mkconfig</tt>), che prende il contenuto dei file che si trovano in <code>/etc/grub.d</code> e lo scrive in grub.cfg: per verificare, usare il comando <code>$ less /boot/grub/grub.cfg</code>.
Infatti la configurazione vera e propria si trova nel file <code>/boot/grub/grub.cfg</code>, e viene scritta tramite un comando apposito della shell (<code>grub-mkconfig</code>), che prende il contenuto dei file che si trovano in <code>/etc/grub.d</code> e lo scrive in grub.cfg: per verificare, usare il comando <code>$ less /boot/grub/grub.cfg</code>.
I file vengono aggiunti a <code>grub.cfg</code> in ordine alfabetico (ciò spiega il nome con un numero iniziale), e vengono aggiunti solo se sono eseguibili (per renderli tali, si usa il comando <code># chmod +x nomefile</code>).
I file vengono aggiunti a <code>grub.cfg</code> in ordine alfabetico (ciò spiega il nome con un numero iniziale), e vengono aggiunti solo se sono eseguibili (per renderli tali, si usa il comando <code># chmod +x nomefile</code>).
I nomi dei file sono abbastanza esplicativi. Probabilmente i più interessanti per gli utenti sono <code>05_debian_theme</code> e <code>40_custom</code>, come si vede qui di seguito.
I nomi dei file sono abbastanza esplicativi. Probabilmente i più interessanti per gli utenti sono <code>05_debian_theme</code> e <code>40_custom</code>, come si vede qui di seguito.
Riga 180: Riga 180:
Ora che abbiamo una idea di cosa sia e come funzioni GRUB2, in questa sezione analizzeremo l'interazione con i principali comandi shell disponibili per interfacciarsi con GRUB2.
Ora che abbiamo una idea di cosa sia e come funzioni GRUB2, in questa sezione analizzeremo l'interazione con i principali comandi shell disponibili per interfacciarsi con GRUB2.
==Lista comandi principali per settare GRUB2==
==Lista comandi principali per settare GRUB2==
I seguenti comandi sono funzionali al settaggio ed installazione di GRUB2. I comandi da dare culmineranno con <tt>grub-install</tt> che esegue l'effettiva modifica del punto di boot (Master Boot Record).
I seguenti comandi sono funzionali al settaggio ed installazione di GRUB2. I comandi da dare culmineranno con <code>grub-install</code> che esegue l'effettiva modifica del punto di boot (Master Boot Record).


* grub-probe: per indicare dove cercare i kernel, quali moduli utilizzare, cosa attualmente è presente.
* grub-probe: per indicare dove cercare i kernel, quali moduli utilizzare, cosa attualmente è presente.
Riga 227: Riga 227:
Ecco un riassunto dei principali comandi da sapere per risolvere gli eventuali problemi. Eseguendo i comandi nell'ordine riportato dovrebbe essere possibile avviare il proprio sistema operativo.
Ecco un riassunto dei principali comandi da sapere per risolvere gli eventuali problemi. Eseguendo i comandi nell'ordine riportato dovrebbe essere possibile avviare il proprio sistema operativo.
* help: mostra tutti i comandi disponibili;
* help: mostra tutti i comandi disponibili;
* ls: come in bash (LiSt) mostra i file presenti. Il comando <tt>ls /</tt> mostra cosa grub utilizza quale /boot. Se correttamente indicata dovrebbe esserci almeno un kernel presente...
* ls: come in bash (LiSt) mostra i file presenti. Il comando <code>ls /</code> mostra cosa grub utilizza quale /boot. Se correttamente indicata dovrebbe esserci almeno un kernel presente...
* cat (/boot/)grub/grub.cfg: legge il file grub.cfg, utile per comprendere l'errore avvenuto in fase di boot;
* cat (/boot/)grub/grub.cfg: legge il file grub.cfg, utile per comprendere l'errore avvenuto in fase di boot;
* set root=/dev/sda2: identifica la cartella di root, il parametro può essere dato assieme al comando linux come segue;
* set root=/dev/sda2: identifica la cartella di root, il parametro può essere dato assieme al comando linux come segue;
Riga 273: Riga 273:
* Reinstallare GRUB dall'OS ripristinando il menù.
* Reinstallare GRUB dall'OS ripristinando il menù.


===Si ferma a <tt>grub></tt>===
===Si ferma a <code>grub></code>===
Sintomi:
Sintomi:
* Visualizzo il solo grub prompt
* Visualizzo il solo grub prompt