Guida a GRUB 2
Attenzione: questo articolo è ancora incompleto e in fase di scrittura da parte del suo autore.
Sentitevi liberi di contribuire, proponendo modifiche alla guida tramite l'apposita pagina di discussione, in modo da non interferire con il lavoro portato avanti sulla voce. Per altre informazioni si rimanda al template. |
Versioni Compatibili ERRORE: valore non valido ( Debian Lenny 5.0 e superiore )! Vedi qui. |
Introduzione
ATTENZIONE La presente guida è solo una bozza e deve essere ancora revisionata. Attenzione a impartire gli ordini a GRUB, un errato input potrebbe rendere il sistema non più caricabile. |
Con questa guida si intende analizzare la versione di Grub 1.x nota anche come GRUB2. Per la versione precedente, rinominata ora Grub Legacy, fare riferimento all'altra guida. Per un rapido scorcio sulle differenze tra i due ed i possibili comandi utilizzabili da shell rimando qui
Grub è uno strumento molto potente che dovrebbe essere sempre presente nella scatola degli attrezzi di ogni amante del Free Software. Con Grub è possibile avviare qualsiasi Sistema Operativo ed anche altri bootloader.
Principale differenze tra GRUB Legacy e GRUB 2
- Il file menu.lst non controlla più il menù.
- grub.cfg gestisce il menù.
- Il file grub.cfg è generato autonomamente dagli script di GRUB 2.
- Il sistema di numerazione delle partizioni è leggermente diverso.
- Cambia leggermente la sintassi del file menu.lst (GRUB 1) rispetto a grub.cfg (GRUB 2) e non è direttamente importabile in quest'ultimo.
Per saperne di più su GRUB 1, seguire il link. Per GRUB 2 continuate a leggere!
Configurazione
I file principali
I file per la vostra configurazione dovrebbero trovarsi nei seguenti tre percorsi:
- /etc/default/grub: contiene configurazioni generali, autogenerate da grub-set-default, che generalmente non richiedono cambiamenti (secondi al boot, dimensione schermata...).
- /etc/grub.d/: è la cartella che contiene degli script di shell i quali generano il menù di grub.
- /boot/grub/: qui il bootloader cerca i file di configurazione (grub.conf). N.B.: questi sono generati dagli script contenuti in /etc/grub, modificare quindi questi ultimi se non si vuole che le modifiche vengano sovrascritte.
Osservazioni
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 è modifica, o creata ex novo, tramite il comando grub-install, lo stesso comando che provvede inoltre all'installazione di GRUB sul punto di boot.
Altri file rilevanti
In questa sezione si riportano alcuni file che, seppure non essenziali alla configurazione di GRUB, possono essere d'aiuto nella sua configurazione o nella risoluzione di eventuali problematiche.
- /boot/grub/device.map: qui è riportata la corrispondenza tra i nomi degli Hard Disk secondo Debian (/dev/sdX... /dev/hdX...) rispetto alla nomenclatura di GRUB.
I comandi per la gestione di GRUB
Ora che abbiamo una idea di cosa sia e come funzioni GRUB2 passiamo all'analisi dei comandi da invocare per il settaggio. I comandi da dare culmineranno con grub-install 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-mkconfig: genera il file di configurazione grub.cfg
grub-mkimage: crea immagine binaria di GRUB bootabile.
grub-setup: scrive sul HD GRUB
grub-install: