Gentoo Logo

Gentoo - Guida LTSP

Indice:

1.  Introduzione

Che cosa è LTSP?

LTSP è l'abbreviazione di "Linux Terminal Server Project". Installato su un server può fornire molte workstation (chiamate anche thin-client) dello stesso ambiente. Tutte le applicazioni vengono eseguite sul server e grazie a questo possono essere usati vecchi PC e trasformati in Xterminal. Questo riduce costi e mantenimento specialmente in realtà dove c'è la necessità di avere un ambiente di lavoro uniforme su ogni computer, per esempio in scuole o aziende.

2.  Installazione

Preliminari

Tutti gli esempi in questo documento prevedono che il proprio server abbia un IP 192.168.0.254, che il proprio dominio sia yourdomain.com e che la propria rete sia 192.168.0.0/24.

Installazione

Prima di tutto, bisogna avere un sistema Gentoo funzionante. Leggere i manuali di installazione Gentoo per la propria archittettura su Documentazione Gentoo.

Cominciare con un semplice passo, installando il pacchetto ltsp:

Codice 2.1: Emerge LTSP

# emerge ltsp

Questo installerà i seguenti pacchetti come dipendenze:

  • XFree: Sono chiamati XTerminal
  • DHCP: DHCP è il protocollo per la configurazione automatica di computer che usano TCP/IP, è utilizzato da ltsp per la distribuzione di IP alle workstation.
  • NFS: NFS è un protocollo che permette l'accesso al disco rigido attraverso la rete, è utilizzato da ltsp per caricare un sistema di base per le workstation.
  • TFTP: TFTP è un semplice protocollo di trasferimento, è utilizzato da ltsp per trasferire il kernel alle workstation.
  • XINETD: Xinetd è un potente rifacimento di inetd, con funzionalità avanzate, utilizzato da ltsp per far partire tftp.

Nota: Se le flag USE kde/gnome sono impostate, verrà installato anche un sistema completo kde/gnome.

3.  Configurazione

Dopo che il processo di emerge sarà completato tutti i servizi dovranno essere configurati:

Logger di sistema

Per analizzare in modo semplice i problemi, il logger di sistema deve essere configurato per accettare connessioni remote. Per avere istruzioni in merito leggere la documentazione del proprio logger per. Ad esempio, se si utilizza sysklogd basta modificare il file /etc/conf.d/sysklogd ed aggiungere "-r" alla linea SYSLOGD:

Codice 3.1: /etc/conf.d/sysklogd

SYSLOGD="-m 0 -r"
KLOGD="-c 3 -2"

NFS

Il prossimo passo è la modifica del file /etc/exports, in modo da permettere alle workstation di caricare il filesystem root. Per ottenere questo bisogna aggiungere queste due righe alla fine:

Codice 3.2: /etc/exports

/opt/ltsp-4.1/i386            192.168.0.0/255.255.255.0(ro,no_root_squash,async)
/var/opt/ltsp/swapfiles       192.168.0.0/255.255.255.0(rw,no_root_squash,async)

Nota: Modificare il network/netmask inserendo i dati della vostra rete.

A questo punto avviare NFS.

Codice 3.3: Avviare nfs

# rc-update add nfs default
# /etc/init.d/nfs start

xinetd/tftp

TFTP richiede un po' di configurazione per funzionare bene. Prima di tutto modificare il file /etc/conf.d/in.tftpd per impostare le opzioni e il percorso del demone tftp:

Codice 3.4: /etc/conf.d/in.tftpd

INTFTPD_PATH="/tftpboot"
INTFTPD_OPTS="-s ${INTFTPD_PATH}"

La flag -s specifica che TFTP verrà caricato in chroot mode (raccomandato). Questo significa che non ci sarà bisogno di includere il percorso /tftpboot per esempio nella configurazione di DHCP.

Poi configurare xinetd per far partire TFTP e abilitare le connessioni da remoto. Come impostazione predefinita TFPT non sarà caricato da xinetd, per cui modificare /etc/xinetd.d/tftp e sostituire disable=yes con disable=no. Se il file non esiste crearlo con i contenuti sotto indicati.

Codice 3.5: /etc/xinetd.d/tftp

service tftp
{
        disable = no
        socket_type = dgram
        protocol = udp
        wait = yes
        user = root
        server = /usr/sbin/in.tftpd
        server_args = -s /tftpboot
}

Modificare /etc/xinetd.conf e commentare la linea only_from = localhost anteponendoci un #. Infine avviare xinetd.

Codice 3.6: Avviare xinetd

# rc-update add xinetd default
# /etc/init.d/xinetd start

Risoluzione dei nomi

Per fare in modo che le workstation trovino tutte le risorse, una corretta risoluzione dei nomi deve essere disponibile. Ci sono alcuni modi per ottenere ciò. Uno è di configurare un server DNS per la rete locale, un altro (e molto più semplice) è di avere lo stesso file /etc/hosts su tutti i sistemi. Utilizzare quest'ultimo metodo.

Tutte le workstation devono essere inserite in /etc/hosts. Guardare questo esempio:

Codice 3.7: /etc/hosts

127.0.0.1        localhost
192.168.0.254    server      server.yourdomain.com
192.168.0.1      ws001       ws001.yourdomain.com

Configurazione DHCP

Questo è il passo più complicato in cui bisogna creare un file di configurazione valido (/etc/dhcp/dhcpd.conf) per DHCP. Questo è un esempio:

Codice 3.8: dhcpd.conf

(Qualche opzione generale)
default-lease-time            21600;
max-lease-time                21600;
use-host-decl-names           on;
ddns-update-style             ad-hoc;

(Opzioni di Bootp)
allow booting;
allow bootp;

(Opzioni di rete)
option subnet-mask            255.255.255.0;
option broadcast-address      192.168.0.255;
option routers                192.168.0.254;
option domain-name-servers    192.168.0.254;
option log-servers            192.168.0.254;
option domain-name            "yourdomain.com";

(Opzioni di path di LTSP)
option root-path              "192.168.0.254:/opt/ltsp-4.1/i386";
filename                      "/lts/vmlinuz-2.4.26-ltsp-2";
Indirizzo del server tftp da cui scaricare il file ltsp)
next-server                   192.168.0.254;

(Se le vostre workstation hanno una scheda ISA NIC decommentate)
(le seguenti linee e adattate il driver e l'IO)
#option option-128 code 128 = string;
#option option-129 code 129 = text;
#option option-128 e4:45:74:68:00:00;
#option option-129 "NIC=ne IO=0x300";

shared-network WORKSTATIONS {
  subnet 192.168.0.0 netmask 255.255.255.0 {
    (Distribuisce IP dinamici alle workstation)
    range dynamic-bootp 192.168.0.1 192.168.0.16;
    (Specifica la configurazione per le workstation con PXE)
    #host ws001 {
    #  hardware ethernet     00:E0:06:E8:00:84;
    #  fixed-address         192.168.0.1;
    #}
  }
}

Se le vostre workstation supportano PXE, bisognerebbe elencarle tutte come è stato fatto con host ws001 (non dimenticare di decommentarla). Non dare loro un indirizzo nel range dinamico, altrimenti potrebbe succedere che più workstation abbiano lo stesso indirizzo IP (il che è un problema). Ricordarsi di rimpiazzare ogni commento "//" con "##", se si fa copia-incolla del precedente esempio, altrimenti dhcp fallirà all'avvio.

Per maggiore documentazione su questo punto leggere il "manuale ufficiale dhcp": http://www.dhcp-handbook.com/

Avviare DHCP com'è stato fatto con NFS e xinetd:

Codice 3.9: Avviare dhcp

# rc-update add dhcp default
# /etc/init.d/dhcp start

Nota: Il DHCPD ha bisogno del CONFIG_PACKET e CONFIG_FILTER attivati nel kernel per funzionare.

Configurazione LTSP

Ci sono molte opzioni per configurare le proprie workstation, visitare http://ltsp.mirrors.tds.net/pub/ltsp/docs/ltsp-4.1-en.html#AEN1190 per una completa descrizione di /opt/ltsp/i386/etc/lts.conf.

Come suggerimento per iniziare, si può voler copiare /opt/ltsp/i386/etc/lts.conf.example su /opt/ltsp/i386/etc/lts.conf e modificarlo da lì. Si può quindi provare a cambiare l'opzione SCREEN_01 per leggere SCREEN_01 = startx. Per usare un mouse USB su un client remoto, aggiungere le seguenti linee e cambiare il valore di X_MOUSE_* come segue:

Codice 3.10: /opt/ltsp/i386/etc/lts.conf

MODULE_01          = usb-uhci
MODULE_02          = mousedev
MODULE_03          = usbmouse
X_MOUSE_PROTOCOL   = "IMPS/2"
X_MOUSE_DEVICE     = "/dev/input/mice"

Display Manager

Ora bisogna modificare la configurazione del proprio display manager per accettare anche connessioni remote.

Per prima cosa modificare il file /etc/X11/xdm/Xaccess, decommentando la seguente riga:

Codice 3.11: /etc/X11/xdm/Xaccess

#*      #qualsiasi host può ottenere la finestra di login

Modificate quindi la configurazione del display manager utilizzato:

XDM: In /etc/X11/xdm/xdm-config decommentare DisplayManager.requestPort: 0

KDM: In /usr/kde/3.1/share/config/kdm/kdmrc cercare la sezione [Xdmcp] e cambiare Enable = false in Enable = true.

GDM: In /etc/X11/gdm/gdm.conf cercare la sezione [xdmcp] e cambiare Enable = false in Enable = True.

Ora si può far partire il display manager:

Codice 3.12: Avviare xdm

# rc-update add xdm default
# /etc/init.d/xdm start

Avvertenza: Al momento ci sono dei problemi con XDM e GDM. L'autore usa KDM per risolvere questi problemi.

Ricordarsi che se il proprio display manager è già in esecuzione, riavviando l'X server via CTRL-ALT-BACKSPACE non verrà riavviato il display manager.

Creare un floppy d'avvio

Se le proprie workstation non supportano il boot via PXE, allora si può creare un floppy d'avvio che può essere utilizzato per avviare le workstation e connetterle al terminal server. Andare al l'indirizzo http://www.rom-o-matic.net/, selezionare l'ultima versione, selezionare il proprio NIC, premere Get ROM e scrivere l'immagine sul floppy:

Codice 3.13: Scrivere l'immagine del floppy

# cat nicfile.zdsk > /dev/fd0

4.  Risoluzione dei problemi

Ci sono un po' di cose che possono essere fonte di problemi, ma ci sono anche altre risorse che possono aiutare a risolverli:

5.  Domande frequenti

D: La mia workstation ha una CPU Pentium II, ma il mio server è compilato con march=athlon-xp, può funzionare lo stesso?

R: Questo non è un problema, perchè tutte le applicazioni vengono caricate sul server.

D: Quale CPU e quanta RAM dovrebbe avere il server?

R: C'è un buon documento con alcuni suggerimenti a http://wiki.ltsp.org/twiki/bin/view/Ltsp/ServerSizing.

D: Hai maggiori informazioni riguardo il supporto PXE?

R: Sì, date un'occhiata a http://wiki.ltsp.org/twiki/bin/view/Ltsp/PXE.

D: E’ possibile utilizzare software con Accelerazione 3D sulle workstation?

R: Se state utilizzando schede NVidia date un'occhiata qui http://wiki.ltsp.org/twiki/bin/view/Ltsp/NvidiaLtsp411.

D: In alcune applicazioni il font si vede male, cosa succede?

R: Bisogna configurare l'XFontServer, aggiungete USE_XFS=Y al vostro lts.conf, modificate /etc/X11/fs/config e commentate no-listen: tcp, modificate XFS_PORT="-1" con XFS_PORT="7100" in /etc/conf.d/xfs e fate partire xfs: /etc/init.d/xfs start. Ora assicuratevi che /etc/X11/XF86Config (o /etc/X11/xorg.conf) contenga FontPath "unix/:7100" nella sezione Files.

D: Posso utilizzare la scheda audio della mia workstation?

R: E’ presente un pacchetto ltsp-sound in Gentoo, per maggiori informazioni leggete il file incluso README.

6.  Glossario

LTSP "LTSP fornisce un semplice modo per utilizzare workstation a basso costo come terminali a caratteri o grafici su un server GNU/Linux."

PXE "Abbreviazione per Pre-Boot Execution Environment. Si pronuncia 'pixie', PXE è uno dei componenti delle spefiche di Intel WfM. Questo permette alle workstation di fare il boot da un server su una rete con maggiore priorità del boot del sistema operativo sul disco rigido locale. Una workstation PXE-enabled connette il suo NIC alla LAN attraverso un jumper, e rimane connesso alla rete fino a che non viene tolta energia."



Stampa

Aggiornato il 29 settembre 2008

Oggetto: Questa guida mostra come configurare un server LTSP con Gentoo.

Heinrich Wendel
Autore

Josiah Ritchie
Autore

Sven Vermeulen
Redazione

Bernardo Damele
Traduzione

Luca Mercuri
Traduzione

Davide Cendron
Traduzione

Donate to support our development efforts.

Copyright 2001-2012 Gentoo Foundation, Inc. Questions, Comments? Contact us.