LTSP: configurazione per uso scolastico

Transcript

LTSP: configurazione per uso scolastico
LTSP: configurazione per uso scolastico
Liceo Majorana Orvieto
marzo 2009
1
Premessa
Linux è il kernel (nucleo o cuore) di un sistema operativo creato agli inizi degli anni
’90 come clone del kernel di Unix.
Con il termine GNU/Linux si indicano i sistemi operativi basati sul kernel Linux
corredato dei software di sistema prodotti negli anni dal progetto GNU.
GNU/Linux è quindi un sistema operativo completo.
GNU/Linux è nato su Internet come frutto di collaborazione su vasta scala seguendo un modello di sviluppo possibile solo nell’ambito del software libero. Una delle
caratteristiche che ne consegue e la estrema modularità: per esempio l’interfaccia grafica viene realizzata utilizzando una architettura client - server che ne permette un
uso molto flessibile. Sia il server grafico che le applicazioni grafiche sono “programmi” che possono essere installati o eseguiti a scelta dell’utente e non sono vitali per il
funzionamento del sistema operativo.
Assemblare il kernel, le librerie, il software di sistema e gli applicativi è un’operazione piuttosto complessa: pertanto gli utenti di GNU/Linux abitualmente ricorrono
alla installazione di una delle numerose distribuzioni disponibili ormai dagli anni ’90.
Le distribuizioni GNU/Linux possono essere generalmente ottenute come software
libero il cui download da Internet è permesso, incoraggiato e gratuito.
Linux e il software del progetto GNU sono l’esempio per eccellenza di software
libero tutelato dalla licenza GPL.
2
Distribuzioni Linux
Presso il Liceo Majorana vengono utilizzate prevalentemente distribuizioni linux Debian e Ubuntu oltre alla distribuzione IPCop che è progettata esclusivamente per realizzare sistemi firewall.
La distribuzione Debian è caratterizzata da grande stabilità e robustezza; include
attualmente oltre 20000 pacchetti software; è molto curata dal punto di vista della
sicurezza.
La distribuzione Ubuntu è derivata dalla Debian ed è costruita con particolare attenzione al supporto per hardware recente, al supporto multi lingua e alla facilità di
amministrazione e manutenzione tramite tool grafici che sono ritenuti più amichevoli
dei corrispondenti a linea di comando.
Attualmente sia in Debian che in Ubuntu è disponibile il pacchetto per l’installazione automatica del sistema LTSP.
1
Presso il Liceo Majorana è stato realizzato un server LTSP sulla distribuzione Debian “Squeeze” e un altro sulla distribuzione Ubuntu su una macchina della scuola
primaria di Sferracavallo.
3
LTSP
Il sistema LTSP permette di utilizzare computer vecchi, non più adatti a far girare i
moderni sistemi operativi che richiedono abbondanti risorse di calcolo (CPU potenti) e
di memoria (un sacco di RAM), come client grafici di una macchina relativamente potente sulla quale si possono concentrare gli sforzi finanziari e quelli di amministrazione
e aggiornamento.
La modularità di linux, e in particolare della sua interfaccia grafica, permette di
avere in funzione il server grafico (Xserver) su un computer e l’applicazione grafica
(per esempio firefox o openoffice) su un altro computer.
3.1
boot
Un computer all’accensione esegue la procedura di boot (o bootstrap).
Nel BIOS può essere configurata la sequenza dei dispositivi (per esempio floppy,
CDROM, hard-disk) dai quali il computer deve tentare di fare il boot. Normalmente il
boot viene fatto dall’hard-disk nel quale risiede un bootloader e il sistema operativo.
Il bootloader risiede (normalmente) nel primo settore dell’hard-disk e mantiene
informazioni relative alla collocazione del sistema operativo che dovrà essere caricato.
Installando una distribuzione GNU/Linux viene usualmente installato anche un
bootloader (per esempio Grub oppure Lilo) il quale può essere configurato in modo
che, all’avvio del computer, venga mostrata una finestra per la scelta di uno tra due o
più sistemi operativi disponibili.
Quando viene installato un sistema MS-Windows succede invece che il bootloader
viene installato, eventualmente sovrascrivendo quello già presente, senza che venga offerta la possibilità di una configurazione e quindi precludendo la possibilità di scegliere,
tra quelli installati, quale sistema operativo avviare.
Qualora nel BIOS il floppy sia il primo tra i dispositivi dai quali tentare il boot
è possibile, inserendo un dischetto nel drive, avviare un sistema operativo diverso da
quello/i che risiede/ono nell’hard-disk e registrato/i nel bootloader.
3.2
etherboot
Esiste la possibilità di registrare in un floppy un minuscolo sistema operativo che ha l’unica
funzione di caricare tramite la scheda di rete (scheda ethernet) un sistema operativo
completo.
La sequenza delle operazioni è piuttosto complicata ma il risultato è che viene
interrogata la rete perché possa essere configurata la scheda ethernet (ottenendo un
indirizzo IP e gli altri parametri da un server dhcp) e possa essere caricato il sistema
operativo definitivo.
In questo modo l’hard-disk non viene affatto utilizzato e potrebbe essere rimosso.
Normalmente gli hard-disk dei vecchi computer disponibili nelle scuole non trovano applicazioni interessanti e quindi può essere conveniente allestire un intero laboratorio in modo che ogni macchina possa avviare (faticosamente) uno dei sistemi
operativi presenti sul proprio hard-disk (tipico caso dei sistemi dual boot con windows
2
e linux) oppure possa (agevolmente) caricare dall’hard-disk solo il sistema etherboot
da un piccolo file (circa 50kB) per poi completare l’avvio da rete tramite LTSP.
Computer più recenti possono essere dotati di schede di rete che, opportunamente
configurate nel BIOS, permettono il boot da rete senza bisogno di floppy o file caricati
tramite bootloader.
3.3
server LTSP
Affinché un laboratorio LTSP possa funzionare deve essere disponibile, acceso e raggiungibile nella LAN, un computer sul quale sia installata una distribuzione GNU/Linux
completa e un server dhcp e il sistema LTSP.
Quando il server LTSP riceve richieste dalle macchine della rete fornisce i parametri per la configurazione delle schede di rete e successivamente fornisce un intero sistema operativo che, mantenuto in RAM dalla macchina client, permette di far funzionare
localmente il server grafico (X-window).
Infine per ogni computer client collegato al server LTSP viene avviato un primo
programma grafico la cui finestra viene visualizzata sul monitor del client: si chiama
display manager e si tratta del programma che crea la finestra per l’inserimento delle
credenziali di accesso affinché l’utente possa effettuare il login.
Tutti gli utenti registrati sul server LTSP possono accedere (fare il login) sui computer client: sul server LTSP possono essere registrate anche centinaia o migliaia di
utenti a seconda delle necessità e della capacità del disco.
Le home directory di tutti gli utenti vengono immagazzinate (salvo particolari configurazioni) sul disco del server LTSP e quindi ogni utente ritrova i propri file e le
proprie configurazioni (profilo) ogni volta e da qualunque computer client decida di
accedere al sistema.
In una scuola può essere opportuno creare sul server LTSP una coppia userIDpassword (cioè un account) per ogni utente della rete (docenti, alunni, personale non
docente) oppure per ogni computer della rete: la prima soluzione richiede un certo
sforzo di amministrazione ma garantisce di mantenere separati i file e profili di tutti gli
utenti; la seconda soluzione permette di semplificare l’amministrazione.
Per una scuola primaria può essere conveniente una soluzione mista: account personali per i docenti e account di macchina per gli alunni.
E’ opportuno segnalare che:
un difetto dei sistemi LTSP consiste nel fatto che se il computer server si
rompe o si spenge, accidentalmente o per black-out, tutta la rete smette di
funzionare e eventuali file aperti in RAM e non salvati vengono persi.
3.4
le applicazioni
Per evitare confusione, è opportuno sottolineare che una conseguenza della struttura
client-server della grafica di Linux, e quindi del sistema LTSP, consiste nel fatto che
il server grafico X-window viene eseguito su ogni computer client mentre
le applicazioni (cioè i client grafici) vengono eseguite sul computer server
LTSP.
Quindi con il boot LTSP ogni client carica dalla rete un sistema operativo in grado
di far funzionare il server X-window (e questo impone che la scheda grafica locale sia
supportata) ma i programmi, a cominciare dal display manager (per es. GDM) e poi il
3
desktop manager (per es. GNOME) e poi le applicazioni (per es. Gimp, Abiword ecc.)
vengono eseguiti in remoto sul server LTSP.
Abbiamo verificato che, grazie alla gestione efficiente della memoria RAM e del
disco da parte di Linux, un computer con CPU recente e ragionevolmente veloce (per
es. 1800MHz) e una RAM da 1GB può funzionare da server LTSP per una rete con 15
client sui quali altrettanti utenti eseguono applicativi pesanti: openoffice, firefox, gimp.
L’amministratore del server LTSP può concedere privilegi agli utenti del sistema in
modo che possano montare1 dispositivi locali come CD-ROM o memorie flash su porta
USB. Inoltre il sistema LTSP permette di esportare e riprodurre sui computer client i
segnali audio prodotti dalle applicazioni che girano in remoto.
4
XDMCP
E’ possibile eseguire applicazioni remote utilizzando un server grafico locale anche
senza utilizzare il sistema LTSP.
Se nel disco del computer locale è stato installato un sistema linux con interfaccia
grafica e con un display manager (per es. GDM) per il login grafico allora è possibile
selezionare tra le opzioni (con il mouse o digitando F10) un collegamento su protocollo XDMCP: questa operazione avvia una scansione della rete alla ricerca di computer
linux il cui display manager sia configurato per accettare richieste dalla rete; selezionando uno dei computer disponibili sarà possibile fare un login remoto e, quindi,
eseguire tutte le applicazioni in modo analogo a quanto si fa con LTSP.
Con questo meccanismo, tuttavia, non è possibile2 ottenere lo “streaming” dei
segnali audio dalle applicazioni remote verso i computer client e il “montaggio” dei
dispositivi locali.
5
Xserver in ambiente MS-Windows
Poiché attualmente la dotazione software delle scuole consiste prevalentemente di sistemi operativi della famiglia Microsoft Windows è opportuno notare che esiste anche
la possibilità di installare opportuni Xserver3 su questo tipo di sistemi operativi: quindi
è possibile aprire una finestra con una sessione di login su un computer linux remoto e
eseguire, in remoto, applicazioni linux catturandone l’output grafico nel sistema locale
windows.
1 non è un’oscenità: significa effettuare l’operazione di mount ovvero il collegamento di una risorsa al
filesystem.
2 o per lo meno non è immediato.
3 purtroppo solo in rari casi disponibili come software libero.
4