Installare e configurare Debian edu (Skolelinux)

Da Guide@Debianizzati.Org.
Vai alla navigazione Vai alla ricerca

In questa guida verranno descritte note sull'installazione e la configurazione iniziale di un server Debian edu 7.1, per un laboratorio di informatica scolastico (Triennio ITI Informatica: sviluppo di applicazioni in C/C++/Java/PHP/MySQL), composto da 24 thin client e un unico server.

Prerequisiti

La tipologia di installazione più comune di una Debian Edu 7.1 è quella "combined server", che installa, su un'unica macchina, due profili server:

  1. Server LTSP, che consente il netboot di thin client e fat client
  2. Server "main", che fornisce il desktop per i client e i servizi di rete necessari: LDAP, web, DNS, SQL ecc.

Questa soluzione richiede che sul server siano installate due interfacce di rete:

  • eth0: collegata alla backbone della rete aziendale/scolastica (subnet WAN)
  • eth1: collegata alla sottorete dei client netboot (subnet LAN client LTSP)

La configurazione predefinita delle due interfacce è la seguente:

Int. Rete Netmask Nome IP Gateway DHCP Range DNS
eth0 10.0.0.0 255.0.0.0 intern 10.0.0.1 10.0.16.20...10.0.31.254 10.0.2.2
eth1 192.168.0.0 255.255.255.0 subnet00.intern 192.168.0.254 192.168.0.21...192.168.0.254 10.0.2.2


L'IP della macchina server è : 10.0.2.2 (nome: tjener.intern)
Debian edu, quindi, esce già con una configurazione di rete, che non si può, almeno facilmente, modificare. Essa è, infatti, "LDAP-centrica" ovvero gran parte della configurazione dei servizi di rete è messa sotto LDAP, non semplice da modificare rispetto ai comuni file di testo.
Nel caso la rete della propria azienda non sia una classe A occorrerrà interporre un router fra questa e il server, come il router/AP: TP-LINK TL-WR841N dal costo di 20 Euro.

Configurazione del router TP-LINK TL-WR841N

La configurazione di seguito è descritta è applicabile anche ad altri modelli router wired/wireless TP-Link, ma anche, in generale, di altre marche (lo schema di configurazione è sostanzialmente uguale per ogni router). Come gran parte dei router "domestici", la configurazione riguarda due "versanti" WAN/LAN:

  • WAN, collegato alla rete aziendale; offre anche l'instradamento verso internet mediante un gateway
  • LAN, collegato alla interfaccia eth0 del server

La configurazione è accessibile tramite il pannello web: http://192.168.0.1 e inserendo le credenziali di default: admin/admin
Successivamente alla nuovoa configurazione, il pannello web sarà raggiungibile a http://10.0.0.1. Inoltre occorrerrà disabilitare il server DHCP del router, in quanto l'unico servizio DHCP sul versante LAN dovrà essere quello erogato dal server per il netboot.

  • I dati della rete "WAN" devono essere relativi alla configurazione della propria rete aziedale (quelli riportati sono indicativi)
  • I dati della rete "LAN" sono invece mandatori, in quanto legati alla configurazione di rete di Debian edu-


Configurazione WAN

Per il modem in questione, essa è accessibile al menù dell'interfaccia web: “Network → WAN”


WAN Connection Type: Static IP (oppure DHCP)

IP Address 192.168.1.20
Subnet Mask 255.255.255.0
Default gateway 192.169.1.254
Primary DNS 192.168.1.254
Secondary DNS 8.8.8.8


Configurazione LAN

Si accede tramite il menù: “Network → WAN”

IP Address 10.0.0.1
Subnet Mask 255.0.0.0



NOTE

  1. L'IP 10.0.0.1 costituirà quindi il nuovo IP del router per la configurazione web.
  2. Il DHCP server del router deve essere disabilitato: per connessioni wired/wireless dal router assegnare quindi un IP statico libero della subnet 10.0.0.0/8 (eccetto il range: 10.0.16.20...10.0.31.254 che è riservato al DHCP), con gateway: 10.0.0.1, netmask: 255.0.0.0 e DNS: 8.8.8.8

Installazione

Creazione del supporto

L'installazione può essere fatta mediante CD/DVD o chiavetta USB. Il sito http://ftp.skolelinux.org/ consente di scaricare diverse immagini ISO, per creare CD, DVD e USB autoavvianti. Fra queste si segnalano due in particolare:


  • CD: debian-edu-7.1+edu0-CD.iso (655MB): l'installazione viene avviata da un CD, quindi vengono scaricati i pacchetti necessari dalla rete (richiede molte ore)
  • USB: debian-edu-7.1+edu0-USB.iso (5,4GB): l'installazione viene avviata da una chiavetta USB che contiene gran parte dei pacchetti richiesti. E' comunque necessario il collegamento alla rete in quanto viene scaricato qualche aggiornamento o pacchetto richiesto (richiede meno tempo della net-install)


Per la creazione del boot USB:

Linux

Identificare il device name della chiavetta USB (es. /dev/sdb). Portarsi nella cartella dove è stata scaricata la ISO e lanciare da shell:

   sudo cat debian-edu-7.1+edu0-USB.iso >/dev/sdb; sync

Windows

L'unico software capace di creare una chiavetta USB per l'installazione Debian è PowerISO (gratuito/nag screen). Si consiglia la vecchia versione 4.9 che non installa adware. Lanciato il programma, dal menù "Strumenti > Create Bootable USB driver" sarà possibile creare la propria USB avviabile con l'installer Debian edu.


Fase di installazione

  • Al boot di installazione, selezionare con i tasti freccia “64 bit install”, quindi premere il tasto Tab e modificare il seguente parametro: desktop=xfce.

Si sconsiglia l'expert-install a meno di non sapere dettagliatamente cosa fare passo dopo passo (diversamente ci si può ritrovare dopo ore di lavoro con un'installazione incompleta)

  • Non usare per il primo utente userID = password (a volte l'utente non viene creato, sembra un bug)
  • Rispondere SI' alla domanda: “Sicuri di usare il partizionamento guidato?”
  • Rispondere NO alla domanda: “Si desidera partecipare all'indagine sui pacchetti?”


Durante l'installazione è possibile attivare due console virtuali:

  • Alt+F4: console syslog (stato download pacchetti, estrazione, configurazione ecc.)
  • Alt+F1: ritorna all'installer



N.B. I comandi elencati di seguito vanno eseguiti dall'utente iniziale, quello creato durante l'installazione (oppure da qualsiasi altro utente autorizzato al sudo).

Post-installazione

Di seguito la sequenza di passi che si è seguita per la fase di post-install.

Sincronizzare la lista dei pacchetti disponibili

Fra versione installata e versione corrente ci potrebbero essere delle differenze fra lista locale dei pacchetti e lista attuale dei pacchetti (presente sul server degli aggiornamenti). Questi comandi si sono resi necessari per un'installazione da USB al fine di evitare errori e warning nell'uso di apt e dpkg:

  wget http://http.debian.net/debian/dists/wheezy/main/binary-amd64/Packages.gz 
  gunzip Packages.gz 
  sudo dpkg --update-avail Packages 
  mv Packages /opt/ltsp/i386/tmp 
  sudo ltsp-chroot dpkg --update-avail /tmp/Packages 
  sudo ltsp-chroot rm /tmp/Packages

Aggiornare etckeeper

Assicurarsi che sia installata la versione più recente: la 0.63 genera warning/errori nel commit automatico di apt.

  wget http://http.debian.net/debian/pool/main/e/etckeeper/etckeeper_1.12_all.deb 
  sudo dpkg -i etckeeper*.deb
  rm etckeeper*.deb

Aggiornare os del server

  sudo apt-get update
  sudo apt-get -y upgrade

Aggiornare os dei fat client

  sudo ltsp-chroot -m apt-get update 
  sudo ltsp-chroot -m apt-get -y upgrade 
  sudo ltsp-update-kernels

Installare killer,gksu, git

Cron ogni ora lancia lo script killer, il quale individua processi server di utenti che non sono collegati al sistema e li killa. gksu/gksudo sono gli equivalenti gtk di su/sudo. gitk è una GUI per git

  sudo apt-get install killer gksu gitk

Installare localizzazioni/stili

Installare la lingua italiana e stile gtk per la gui di open-office e chromium:

  sudo ltsp-chroot -m apt-get install libreoffice-gtk libreoffice-l10n-it chromium-l10n 
  sudo apt-get install libreoffice-gtk libreoffice-l10n-it chromium-l10n 

Installare strumenti e ambienti di sviluppo

Installazione di g++, geany (ottimo e leggero IDE)

  sudo ltsp-chroot -m  apt-get install g++ eclipse eclipse-cdt geany
  sudo apt-get install g++ apt-get install eclipse eclipse-cdt geany

Installare LAMP

Occorre installare solo MySQL server e client (PHP e già installato e Apache già preconfigurato per lo sviluppo PHP/mysqli):

  sudo apt-get install mysql-server mysql-client  
  sudo ltsp-chroot -m apt-get install mysql-client

Installare Java

 sudo ltsp-chroot -m apt-get install default-jdk default-jre openjdk-6-jre openjdk-6-jdk icedtea-plugin
 sudo apt-get install default-jdk default-jre openjdk-6-jre openjdk-6-jdk icedtea-plugin

Impostare xfce di default anche per le sessioni locali

L'installazione da DVD/USB installa anche gnome (pur avendo richiesto xfce); mentre la netinstall scarica e installa solo xfce. Per consentire di usare xfce in modalità predefinita (e non Gnome) anche in sessione locale:

 sudo update-alternatives --config x-session-manager

quindi selezionare il numero associato a: /usr/bin/xfce4-session

Creare la struttura di directory per il web degli utenti

Con la creazione di un nuovo utente verranno anche create le directory per lo spazio web personale:

  sudo mkdir /etc/skel/public_html
  sudo mkdir /etc/skel/public_html/cgi-bin 

Installare un nuovo pacchetto sui fat client

  sudo ltsp-chroot -m apt-get install nomepacchetto

Installare un nuovo pacchetto sul server (e quindi anche per i thin client)

  sudo apt-get install nomepacchetto


... ... ...