[successivo] [precedente] [inizio] [fine] [indice generale] [indice ridotto] [translators] [docinfo] [indice analitico] [volume] [parte]
GRUB è un ottimo sistema di avvio, che normalmente viene diffuso con funzionalità limitate all'accesso ai dischi locali (capitolo 36). Tuttavia, a partire dai sorgenti è possibile generare componenti speciali per l'avvio di un sistema attraverso la rete. Sotto questo aspetto, GRUB si può integrare felicemente con LTSP.
Sono possibili due strade per avviare un sistema attraverso la rete con GRUB: si può creare un dischetto di avvio, in grado di usare il protocollo DHCP per configurarsi automaticamente e prelevare il kernel da avviare; si può usare come programma caricato attraverso PXE o Etherboot, allo scopo di fornire un menù di avvio, prima di passare al caricamento del kernel.
Questo capitolo si rifà a esempi che appaiono in altri capitoli su LTSP. A ogni modo, per poter comprendere il funzionamento di GRUB secondo quanto descritto in questo capitolo, occorre conoscere già il funzionamento di LTSP.
Come accennato nella premessa, per ottenere le funzionalità di GRUB relative alla rete, occorre ricompilare i sorgenti, che si possono ottenere da <ftp://alpha.gnu.org/gnu/grub/>. Il pacchetto dei sorgenti va estratto da qualche parte, anche senza privilegi particolari, quindi va configurato e compilato.
$
tar xzvf grub-n.n.tar.gz
[Invio]
$
cd grub-n.n
[Invio]
$
./configure
[Invio]
$
make
[Invio]
Per ottenere la gestione della rete, occorre dare delle opzioni al comando di configurazione. Lo script seguente serve a ottenere la maggior parte delle funzionalità di rete disponibili nella versione 0.97 di GRUB:
|
Dopo la compilazione, non è necessario procedere all'installazione nel sistema, perché è sufficiente prelevare i file che servono. La tabella successiva riepiloga i file che possono essere utili.
L'avvio di un terminale senza disco, attraverso Etherboot o PXE, può essere mediato da GRUB, in modo da poter offrire un menù di avvio prima del caricamento del kernel. In pratica, attraverso PXE o Etherboot si avvia un file di GRUB attraverso la rete; questo file ha funzionalità comparabili a quello di un file stage2
tipico di GRUB che legge il file di configurazione (di solito menu.lst
) e si comporta di conseguenza.
Viene proposto un esempio che si basa sulle convenzioni di LTSP. Per prima cosa, presso l'elaboratore che offre il servizio TFTP, viene creata la directory /tftpboot/grub/
, all'interno della quale vengono collocati i file nbloader
, pxeloader
e menu.lst
. I file usati da LTSP per il caricamento del sistema si trovano nella directory /tftpboot/lts/
; in particolare si intende utilizzare quanto si trova in /tftpboot/lts/n.n.n-ltsp-3/
.
In base a queste premesse, il file /tftpboot/grub/menu.lst
viene realizzato nel modo seguente:
|
La configurazione del servente DHCP va modificata in modo da caricare uno dei file di GRUB (nbloader
o pxeloader
), specificando anche il file di configurazione da usare (menu.lst
). Segue un esempio del file /etc/dhcp3/dhcpd.conf
, del servente DHCP di ISC:
|
In questo caso, si fa riferimento a un avvio secondo il metodo PXE; eventualmente volendo usare il metodo originale di Etherboot, basta modificare le ultime righe nel modo seguente:
|
GRUB, utilizzato da dischetto, può avviare un terminale senza bisogno di Etherboot o di PXE, con il vantaggio di poter realizzare un dischetto uguale per terminali aventi interfacce di rete differenti.
Dopo aver compilato GRUB con la gestione di tutte le interfacce di rete di proprio interesse, servono i file stage1
, stage2
e menu.lst
, da collocare nella directory /grub/
di un dischetto (di solito un dischetto con un file system Dos-FAT).
Seguendo gli esempi noti di LTSP, il file menu.lst
potrebbe essere realizzato nel modo seguente. Rispetto a quanto mostrato a proposito dell'avvio di GRUB tramite la rete, si può osservare l'istruzione bootp, con la quale si richiede di interrogare il protocollo DHCP per ottenere gli indirizzi IPv4 necessari al collegamento:
|
Successivamente occorre avviare l'eseguibile grub per sistemare l'avvio nel dischetto:
#
grub
[Invio]
grub>
root (fd0)
[Invio]
grub>
setup (fd0)
[Invio]
grub>
quit
[Invio]
Chris Fallin, Network-booting Your Operating System
GRUB
nanoGRUB
Appunti di informatica libera 2006.07.01 --- Copyright © 2000-2006 Daniele Giacomini -- <daniele (ad) swlibero·org>
Dovrebbe essere possibile fare riferimento a questa pagina anche con il nome avvio_di_terminali_ltsp_con_grub.htm
[successivo] [precedente] [inizio] [fine] [indice generale] [indice ridotto] [translators] [docinfo] [indice analitico]