2.4. Terminologia
Una delle cose pi� importanti da capire prima di usare GRUB � il modo in cui il programma fa riferimento a dispositivi come i dischi fissi o le partizioni. Questa informazione � fondamentale se desiderate configurare GRUB per l'avvio di pi� sistemi operativi.
2.4.1. Nomi dei dispositivi
Quando vi riferite ad un dispositivo particolare con GRUB, fatelo usando il seguente formato (notare che le parentesi e la virgola sono molto importanti):
(<type-of-device><bios-device-number>,<partition-number>)
<type-of-device> specifica il tipo di dispositivo dal quale GRUB st� eseguendo l'avvio. Le due opzioni pi� comuni sono hd per un disco fisso o fd per un dischetto da 3.5. � disponibile un tipo di dispositivo meno usato chiamato nd per un disco di rete. Le istruzioni su come configurare GRUB in modo da eseguire l'avvio attraverso la rete, sono disponibili su https://www.gnu.org/software/grub/manual/.
<bios-device-number> � il numero del dispositivo BIOS. Il disco fisso IDE primario viene numerato con 0 e il disco fisso IDE secondario, viene numerato 1. La sintassi � simile a quella usata per i dispositivi dal kernel. Per esempio, a in hda per il kernel � analogo a 0 in hd0 per GRUB, b in hdb � analogo a 1 in hd1, e cos� via.
Il <numero-partizione> indica il numero di una partizione specifica su di un dispositivo. Come per il <bios-numero-dispositivo>, la numerazione delle partizioni inizia da 0. Tuttavia, le partizioni BSD sono invece rappresentate da lettere, con acorrispondente a 0, b corrispondente a 1, e cos� via.
| Suggerimento |
---|
| Il sistema di numerazione di GRUB parte da 0 e non da 1. Questo � uno degli errori pi� comuni commessi dai nuovi utenti. |
Per darvi un esempio, se un sistema possiede pi� di un disco fisso, GRUB si riferisce al primo disco fisso come (hd0) e il secondo come (hd1). Lo stesso avviene per le partizioni, GRUB infatti si riferisce alla prima partizione sul disco fisso come (hd0,0), e la terza partizione sul secondo disco fisso come (hd1,2).
Per assegnare un nome a dispositivi e partizioni, GRUB utilizza le regole seguenti:
Tutti i dischi fissi, non importa se sono IDE o SCSI, iniziano con hd. Le lettere fd.sono usate per specificare i dischetti 3.5.
Per specificare un dispositivo intero, senza tener conto delle sue partizioni, occorre semplicemente tralasciare la virgola e il numero di partizione. Questo aspetto � importante quando GRUB deve configurare l'MBR per un disco in particolare. Per esempio (hd0) specifica l'MBR sul primo dispositivo e (hd3) indica il quarto.
Se un sistema presenta dispositivi drive multipli, � importante alloraconoscere il loro ordine all'interno del BIOS. Tale compito non risulta essere molto complesso se il sistema presenta solo unit� IDE o SCSI, se invece sono unit� miste, � importante accedere prima il tipo di unit� che presenta la partizione di avvio.
2.4.2. Nomi dei file ed elenchi dei blocchi
Quando digitate i comandi per GRUB i quali si riferiscono ad un file, come un elenco del menu, � necessario includere il file subito dopo aver specificato il dispositivo e la partizione.
Qui di seguito viene riportata la struttura di tale comando:
(<device-type><device-number>,<partition-number>)</path/to/file>
In questo esempio, sostituire <device-type> con hd, fd, o nd. Sostituire <device-number> con il numero intero per il dispositivo. Sostituire </path/to/file> con un percorso assoluto sulla parte superiore del dispositivo.
Potete inoltre indicare a GRUB i file che non compaiono nel filesystem, come per esempio un loader a catena (chain loader) contenuto nei primissimi blocchi di una partizione. Per caricare questi file, occorre fornire un elenco dei blocchi, che indichi a GRUB, blocco per blocco, la posizione del file nella partizione. Poich� un file pu� essere composto da molti insiemi di blocchi differenti, il suddetto elenco utilizza una sintassi speciale. Il blocco contenente il file, viene specificato da un numero di offset di blocchi, seguito dal numero di blocchi riferiti da quel punto specifico di offset. Gli offset dei blocchi sono elencati in un elenco e separati da virgole.
Considerate il seguente elenco di blocchi:
Questo esempio specifica un file che inizia sul primo blocco sulla partizione e utilizza i blocchi da 0 a 49, 99 a 124, e 199.
Quando si usa GRUB � utile sapere come scrivere gli elenchi dei blocchi in modo da caricare i sistemi operativi che utilizzano il caricamento a catena. Potete omettere il numero di blocchi se iniziate dal blocco 0. Per esempio, il file di caricamento a catena nella prima partizione del primo disco fisso avr� il seguente nome:
Potete inoltre utilizzare il comando chainloader con la stessa indicazione nella linea di comando di GRUB dopo aver impostato come root il dispositivo e la partizione corretti:
2.4.3. Il file System root e GRUB
Alcuni utenti si confondono nell'utilizzare il termine filesystem root con GRUB. � importante ricordare che il filesystem root di GRUB non ha nulla a che fare con il filesystem root di Linux.
Il file system root di GRUB � il livello superiore del dispositivo specificato. Per esempio, il file immagine (hd0,0)/grub/splash.xpm.gz � posizionato all'interno della directory /grub/ sul livello superiore (o root) della partizione (hd0,0) (la quale � la partizione /boot/ per il sistema).
Successivamente, potete eseguire il comando kernel indicando come opzione la posizione del file del kernel. Una volta avviato il kernel di Linux, esso imposta il file system root conosciuto dagli utenti di Linux. Il file system root originale di GRUB ed i suoi mount vengono rimossi, il loro unico scopo � quello di caricare il file del kernel.
Per maggiori informazioni, consultate le note relative ai comandi root e kernel nella Sezione 2.6.