Boot da rete per i terminali

Da Faber Libertatis.

Indice della pagina

Boot da rete via PXE

LTSP permette ai terminali X di ricevere dal server le istruzioni per effettuare il boot attraverso la connessione di rete.

Alcune schede di rete integrate nella scheda madre permettono di effettuare il boot da rete perché possiedono la funzionalità PXE (Preboot eXecution Environment). In tal caso nel menu del BIOS è possibile impostare LAN come primo boot. Un terminale X dotato di questa caratteristica potrà fare a meno del disco rigido (thin client diskless).

E' la situazione ottimale, ma purtoppo nella generazione dei Pentium 2 e Pentium 3 (anni 1998-2001) sono pochi i PC recuperati che possiedono questa opzione. Di solito i PC assemblati e/o orientati al mercato domestico ne sono sprovvisti, è più facile trovarla in macchine di marca (Dell, HP, Compaq, ecc.) orientate all'uso d'ufficio.

Alcune schede di rete PCI hanno un alloggiamento in cui si potrebbe inserire una eeprom dotata di un appropriato firmware PXE, ma si tratta di una strada non facilmente percorribile.

Boot da rete via floppy

NB E' un metodo che va bene per i test iniziali, ma non per l'utilizzo giornaliero perché i floppy si deteriorano rapidamente.

Vediamo il caso in cui la scheda di rete sia una Realtek 8139 che non viene riconosciuta da Linux DSL vers. 3.2

Creare il floppy di installazione

Dal sito http://etherboot.anadex.de/ scaricare l'immagine del floppy con il comando wget.

$ wget http://etherboot.anadex.de/eb_on_hd.ima

Copiare l'immagine nel floppy con il comando dd if (input file)... of (output file).. .

$ sudo dd if=eb_on_hd.ima of=/dev/fd0

Trasferire la boot rom dal floppy all'HD

Montare la periferica floppy con il comando mount.

$ sudo mount /mnt/floppy

Copiare il file di boot dal floppy all'HD nella directory /boot con il comando cp.

$ sudo cp /mnt/floppy/rtl8139.lil /boot

Aprire l'editor di testo Beaver presente in Linux DSL vers. 3.2 per modificare il file di configurazione di Grub.

$ sudo beaver /boot/grub/menu.lst

Aggiungere due righe prima della riga title DSL (le righe aggiunte sono in grassetto).

title LTSP
kernel /boot/rtl8139.lil
title DSL


Boot da rete via hard-disk del terminale

Vediamo il caso in cui sul disco fisso del terminale X sia stata installata la distribuzione DSL 3.2 con Grub come boot loader. Avremo pertanto una partizione /dev/hda1.

Con il comando:

$ lspci

scopriamo il bus ID della scheda di rete. Per esempio tra le tante righe si trova:

0000:01:04.0 Ethernet controller: 3Com Corporation ecc.

Il bus ID della scheda di rete è 01:04.0

Dando il comando:

$ lspci -n -s 01:04.0

si ottiene per esempio:

0000:01:04.0 0200: 10b7:9200

Cerchiamo l'ID 0x10b7, 0x9200 nel file http://rom-o-matic.net/5.4.3/etherboot-5.4.3/src/bin/NIC

si ottiene la riga

3c905c-tpo 0x10b7,0x9200 3Com905C-TXM

Nella pagina: http://rom-o-matic.net/5.4.3/ seleziono nella casella 1. Choose NIC/ROM type il valore:

3c90x:3c905c-tpo -- [0x10b7, 0x9200]

Nella casella 2. Choose ROM output format scegliere il formato .zlilo poi premere il bottone "Get ROM!" e salvare il file che, in questo caso, si chiamerà eb-5.4.3-3c90x.zlilo nella directory /boot.

Aprire con un editor il file di configurazione di Grub /boot/grub/menu.lst.

Aggiungere prima degli altri vari "title" una sezione del tipo:

title LTSP
kernel /boot/eb-... .zlilo

Riavviare il PC incrociando le dita ;-)