--> Analisi di Grub.conf o Menu.lst<--
-----------------------------
Precisazione:
  Voglio precisare immediatamente che il contenuto di grub.conf e di Menu.lst è identico, la differenza sta nel fatto che il primo richiama il secondo al momento del bootloader.

Premessa:
  In quest'articolo ho l'intenzione di trascrivere e analizzare solo il contenuto di grub.conf al fine di analizzarlo per comprendere ogni sua stringa e modificarlo nel caso in cui ce ne sia bisogno. Eventuali approfondimenti li farò in prossimi articoli. Al momento prenderò in considerazione soltanto l'utilizzo di un solo Hard Disk; nel caso in cui disponiate di più Hard Disk, la cosa si complica un pò, ma tratterò quest'argomento in un secondo articolo.

Questo articolo è utile a coloro che:
  1) Vogliono personalizzare il bootloader
  2) Vogliono aggiungere nuovi kernel al bootloader

Riporterò ora un il contenuto del file fittizio grub.conf:
-----------------------------
default = 0
timeout = 10
color light-gray/blue yellow/blue

title        Fedora Core
root        (hd0,6)
kernel        /boot/vmlinuz-2.6.10-5-386 root=/dev/hda7 ro quiet splash
initrd        /boot/initrd.img-2.6.10-5-386
boot

title        Microsoft Windows XP
rootnoverify    (hd0,0)
makeactive
chainloader    +1
-----------------------------

"dafault" è il comando che indica quale Sistema Operativo avviare nel caso l'utente, al momento del caricamento del bootloader, non tocchi niente. "timeout" è il tempo che il computer aspetta prima di avviare il sistema operativo scelto di default. In questo caso se l'utente non tocca niente entro 10 secondi, il computer avvierà Fedora Core (impostando "default = 0" si intende avviare il primo; "default = 1" farà avviare Windows...).
"color" indica con quali colori sarà presentato il menù, secondo il seguente schema: caretteri/sfondo rispettivamente per il testo normale e per il testo evidenziato.

"title" è il titolo dell'etichetta (label); "root" specifica in quale Hard Disk e in quale partizione si trova la root directory (/). In questo caso Fedora è nella partizione n°7 e Windows nella partizione n°1 (attenzione quindi ai numeri, grub assegna un numero alle partizioni pari a quelle assegnate da Linux meno 1).

La riga del "kernel /boot/vmlinux..." indica la path dove risiede l'immagine del kernel. Qui possono essere definite eventuali opzioni da passare al kernel (es: vga=ext). Di seguito viene indicato l'indirizzo dell'immagine dell'"initrd" necessario se il supporto di driver fondamentali per il caricamento del kernel (device SCSI, filesystem di / e /boot) è gestito tramite moduli.

"rootnoverify" dice a GRUB di avviare dalla partizione di Windows, ma di non tentare di montarla, e "chainloader +1" dice a GRUB di agganciarsi al bootloader di Windows che avvierà Windows. Il comando "makeactive" istruisce, sostanzialmente, sul fatto di leggere la prima traccia di tale partizione.

Il frammento di grub.conf che parte da: "title Microsoft Windows XP" e finisce con "chainloader +1" è necessaria solo nel caso si desideri il dual boot.

L'output nel bootloader risulterà:
/*******************************/
/* Fedora Core                 */
/* Microsoft Windows XP        */
/*******************************/
Impostato la riga di default quella di Fedora

Nel caso in cui vogliate inserire una seconda distribuzione e la volete posizionare dopo Fedora, ma prima di Windows, il grub.conf risulterà più o meno così:
-----------------------------
default = 0
timeout = 10
color light-gray/blue yellow/blue

title        Fedora Core
root        (hd0,6)
kernel        /boot/vmlinuz-2.6.10-5-386 root=/dev/hda7 ro quiet splash
initrd        /boot/initrd.img-2.6.10-5-386
boot

title        Mandrivia
root        (hd0,4)
kernel        (hd0,4)/boot/vmlinuz-2.6.15-5-386 root=/dev/hda5 ro quiet splash
initrd        (hd0,4)/boot/initrd.img-2.6.15-5-386
boot

title        Microsoft Windows XP
rootnoverify    (hd0,0)
makeactive
chainloader    +1
-----------------------------
Analizziamo la parte di codice dedicata alla partizione Mandrivia. Come potete notare, a differenza dell'indirizzo del kernel di Fedora, in Mandrivia bisogna aggiungere (hd0,4); questo perchè il Sistema Operativo risiede nella partizione logica n°5 e quindi bisogna indicare a Grub dove risiedono esattamente il kernel e l'immangine initrd di Mandrivia. Non è necessario indicarlo anche in Fedora perchè è stato questo sistema operativo ad installare Grub, il quale, di conseguenza, riconosce come default la partizione di Fedora (hd0,6).

L'output nel bootloader risulterà:
/*******************************/
/* Fedora Core                 */
/* Mandrivia                   */
/* Microsoft Windows XP        */
/*******************************/
Impostato la riga di default quella di Fedora

Approfondimento:
-----------------------------
Se nel blocco di ogni kernel inserite, prima del comando "boot", il comando "savedefault" e modificate il comando "default 0" in "default save", all'avvio grub (dopo il timeout) sceglierà il kernel che avete scelto nel precedente avvio.

Nel caso vogliate inserire delle Righe di descrizione tra un'etichetta e l'altra oppure volete aggiungere qualcosa è sufficiente scrivere:
-----------------------------
title        Puoi scrivere quello che vuoi
root
-----------------------------

Esempio:
-----------------------------
default = 0
timeout = 10
color light-gray/blue yellow/blue

title        Fedora Core
root        (hd0,6)
kernel        /boot/vmlinuz-2.6.10-5-386 root=/dev/hda7 ro quiet splash
initrd        /boot/initrd.img-2.6.10-5-386
boot

title        -- Altri Sistemi Operativi --
root

title  Microsoft Windows XP
rootnoverify (hd0,0)
makeactive
chainloader +1
-----------------------------
L'output nel bootloader risulterà:
/*******************************/
/* Fedora Core                 */
/* -- Altri Sistemi Operativi  */
/* Microsoft Windows XP        */
/*******************************/

Se avete problemi, critiche o domande riguardo quest'articolo scrivetemi!!!