Aggiornamento Laboratorio Multimediale 3 ad Ubuntu 11.10

Per il Linux Day 2011 si è deciso di aggiornare all’ultima versione di Ubuntu.
Per motivi organizzativi non è possibile installare la versione finale, poiché esce dopo che è possibile fare il lavoro.

Preparazione pc0 (Macchina base)

Innanzi tutto va ripreparata una macchina, che poi sarà copiata su tutti gli altri PC.
Il nostro consiglio è di usare come macchina base il PC n° 30, poiché ha le partizione più piccole.

Installazione Sistema Base

L’installazione di Ubuntu è molto semplice, basta seguire i passaggi guidati. Le nostre opzioni sono state:

  • Lingua: Italiano
  • Partizioni Ext4 per / Ext3 per /boot
  • Utente unico: admin
  • GRUB 2.0

Alcune Configurazioni di Base

  • Configurazione di Grub (vedi anche GrubCustomizer)
    • Rimozione Recovery Mode e memtest

In /etc/default/grub

 GRUB_DISABLE_RECOVERY="true"
  • Impostazione password
# grub-mkpasswd-pbkdf2 (copiare l'ouput da grub. ecc)

Inserire in /etc/grub.d/00_header

 cat << EOF
 set superusers="user1"
 password_pbkdf2 user1 $OUTPUT //sostituire $OUTPUT con il risultato del comando sopra
 EOF
  • Impostare i file .bashrc in /etc/skel e in /etc/bash.bashrc
  • Sostituzione UUID con nomenclatura Linux (/dev/sdaN) in /etc/fstab e in grub

In /etc/default/grub

 GRUB_DISABLE_LINUX_UUID=true
  • Chiavi DSA/RSA per PC docente
  • Eliminazione chiavi DSA/RSA di .ssh
  • Installazione di vim
  • Installazione di gpm (servizio per il mouse in console)
 apt-get install vim gpm
  • Aggiunta repository per sun-java6 e installazione
 sudo add-apt-repository ppa:ferramroberto/java  && sudo apt-get update &&
 sudo apt-get install sun-java6-jre sun-java6-jdk sun-java6-plugin sun-java6-fonts

Pulizia dei programmi inutili

Con l’installazione del sistema base molti programmi inutili vengono caricati; perciò è necessario toglierli e rendere il sistema più leggero.
Noi abbiamo tolto:

  • Tutti i giochi
  • Programmi chat e social network
  • Programmi masterizzazione CD (in quanto non ci sono masterizzatori nel laboratorio)
  • Visualizzatori di desktop remoto
  • Client Terminal Server
 # apt-get purge empathy* gwibber* brasero* vinagre tsclient gbrainy gnome-mahjongg aisleriot quadrapassel gnomine gnome-sudoku

Installazione Programmi

  • Installazione plugin Flash Player, Firebug, Web Developer e AdBlock Plus
 # apt-get install firefox-firebug firefox-webdeveloper flashplugin-installer
  • Installazione demone SSH
 # apt-get install ssh
  • Installazione NMap
 # apt-get install nmap
  • Grafica
    • The Gimp
    • Inkscape
    • Scribus NG
 # apt-get install gimp inkscape scribus-ng
  • Programmi didattici
    • Geogebra
    • Dr. Geo
    • Stellarium
 # apt-get install geogebra drgeo stellarium
  • Programmazione
    • NetBeans (:!: va installato dal sito)
    • Geany
    • Compilatori C/C++ e interprete PHP
    • RapidSVN, client subversion e Filezilla
 # apt-get install geany build-essential php5-cli subversion rapidsvn filezilla
  • Codec Audio e Video
    • Repository Medibuntu
 wget http://www.medibuntu.org/sources.list.d/`lsb_release -cs`.list --output-document=/etc/apt/sources.list.d/medibuntu.list
 apt-get -q update
 apt-get update && sudo apt-get --yes -q --allow-unauthenticated install medibuntu-keyring && sudo apt-get update
  • Installazione codec
 # apt-get install gstreamer0.10-ffmpeg gstreamer0.10-pitfdll gstreamer0.10-plugins-bad gstreamer0.10-plugins-bad-multiverse  gstreamer0.10-plugins-ugly gstreamer0.10-plugins-ugly-multiverse libavcodec-extra-52 libmp4v2-0 ttf-mscorefonts-installer unrar moonlight-plugin-core moonlight-plugin-mozilla libdvdnav4 libdvdread4 libdvdcss2 libxine1-ffmpeg ffmpeg p7zip-full unace-nonfree lha lxsplit w32codecs
  • Ottimizzare Nautilus
    • Aggiungere i modelli: estrarre questo in /etc/skel/Templates
    • Varie
  # apt-get install nautilus-gksu nautilus-open-terminal nautilus-image-converter nautilus-script-audio-convert ooo-thumbnailer gnome-xcf-thumbnailer

Operazioni Copia pc0

Pulizia pc0

Prima della copia è necessario che il pc0 sia pulito dai file che sono propri di quel pc specifico. Essi sono:

 # vim /etc/udev/rules.d/70-persistent-net.rules

Eliminare tutte le righe che riguardano le interfacce di rete.

  • Pulire le cache di APT
 # apt-get clean
  • Eliminare le identità di ssh in /etc/ssh/id_*

Aprire poi il file /etc/nsswitch.conf e modificare come seguente:

passwd:         compat winbind
group:          compat winbind
shadow:         compat winbind

Aggiungere poi al file /etc/pam.d/common-session:

session		required	pam_mkhomedir.so skel=/etc/skel/

Configurazione Autenticazione e Sicurezza

Dopo il tentativo riuscito bene di autenticare i client su un server LDAP, abbiamo deciso di autenticare il laboratorio sul server Windows, in modo da non dover sincronizzare tutti gli utenti.
Installiamo quindi SAMBA & WINBIND:

 # apt-get install samba winbind
  • Configurazione SAMBA as Domain Member: editare come segue il file /etc/samba/smb.conf
 # [global]
 # general options
 workgroup = TRON
 netbios name = %h
 server string = %h
 # winbindd configuration
 # default winbind separator is \, which is good if you
 # use mod_ntlm since that is the character it uses.
 # users only need to know the one syntax
 # idmap uid and idmap gid are aliases for
 # winbind uid and winbid gid, respectively
 winbind separator = /
 idmap uid = 10000-20000
 idmap gid = 10000-20000
 winbind enum users = yes
 winbind enum groups = yes
 template homedir = /home/%U
 template shell = /bin/bash
 # Active directory joining
 # "ads server" is only necessary if your kdc
 # can't be located using /etc/krb5.conf 
 #ads server = tron1.tron.intra
 security = ads
 # encrypt passwords = yes is now default in Samba3 
 encrypt passwords = true
 realm = tron.intra
 # this handles the "ads server = " directive as well 
 password server = tron1.tron.intra
 winbind use default domain = yes
  • Mount /home su tw-int via NFS: editare come segue /etc/fstab

FIXME manca

  • Configurazione sudo

FIXME manca

  • Configurazione LightDM (servizio login)

Aggiungere al file /etc/lightdm/lightdm.conf le seguenti righe:

allow-guest=false
greeter-hide-users=true

Eseguire poi:

sudo restart lightdm

Creazione Immagine del pc0

Una volta settata la macchina base è necessario crearne l’immagine (cioè la copia di tutte le partizioni) e copiarla nel server, in modo che sia poi facilmente reperibile dagli altri computer della rete scolastica.
Per la creazione dell’immagine del pc0 ci siamo serviti di un ottimo software opensource: CloneZilla, un programma con interfaccia testuale semplice da usare anche in modalità esperto. Lo potete scaricare qui

Facciamo partire la versione livecd di CloneZilla (consiglio: su “altri modi d’uso” è possibile copiare il contenuto della livecd nella RAM del computer, in questo modo si potrà togliere il cd e avviare il programma contemporaneamente su più pc).

–manca–

Preparazione Partizioni sugli altri pc

E’ arrivato il momento di preparare gli altri pc su cui vogliamo copiare il sistema.
Per prima cosa bisogna creare le partizioni: lo schema deve essere identico a quello del pc0

  • /dev/sda1 ⇒ ntfs (windows) Avvio / Primaria
  • /dev/sda5 ⇒ ntfs (ghost) Logica
  • /dev/sda6 ⇒ ntfs (data) Logica
  • /dev/sda7 ⇒ ext3 (198MB) poi montata come boot
  • /dev/sda8 ⇒ linux-swap (2155MB) poi montata come swap
  • /dev/sda9 ⇒ ext4 (33180MB) poi montata come root

Questa operazione è stata effettuata con una distribuzione linux livecd: Parted Magic (scaricabile qui). Essa comprende un piccolo ambiente grafico e il programma di partizionamento GParted. Inoltre ha una particolarità: come CloneZilla, una volta avviata è possibile rimuovere il cd per avviarlo su un altro pc continuando a lavorare usando l’opzione con il salvataggio dei dati della livecd nella RAM.

Utilizzo di CloneZilla

Per la copia delle partizioni del pc0 di siamo serviti di un ottimo programma opensource: CloneZilla, un programma con interfaccia testuale semplice da usare anche in modalità esperto.

Una volta settata la macchina base è necessario crearne l’immagine e copiarla nel server, in modo che sia poi facilmente reperibile dagli altri computer della rete scolastica.
Facciamo partire la versione livecd di CloneZilla (consiglio: su “altri modi d’uso” è possibile copiare il contenuto della livecd nella RAM del computer, in questo modo si potrà togliere il cd e avviare il programma contemporaneamente su più pc).

NB: ricordarsi di eseguire il seguente comando per attivare le opzioni della tastiera italiana; è sufficiente premere Ctrl+Alt+F*, digitare e dare Invio

sudo loadkeys it

Per prima cosa abbiamo fatto un’immagine compressa in .gz del pc0, su una condivisione nel nostro server interno tw-int (/home/clonezilla/). Così facendo essa sarà accessibile da tutta la rete e potrà essere copiata su tutti gli altri pc; sarà utilizzata anche come copia per il ripristino di pc danneggiati.

Nella seconda fase abbiamo avviato in RAM clonezilla su tre pc al massimo e abbiamo installato Ubuntu sulle altre macchine in 10 min ciascuna. Per quanto riguarda l’utilizzo di clonezilla, ecco le impostazioni da usare:

  1. OtherMode → RAM
  2. Non modificare mappatura tastiera
  3. Digitare Ctrl+Alt+F* e dalla riga di comando digitare: sudo loadkeys it
  4. Tornare poi con ‘Ctrl+Alt+F1’ nella schermata prinicipale e scegliere: device-image
  5. samba
  6. dhcp
  7. nomeserver: tw-int
  8. dominio: TRON
  9. account: twadmin
  10. directory: /clonezilla
  11. expert
  12. restoreparts
  13. selezionare partizioni desiderate (nel nostro caso sda7 e sda9)
  14. selezionare -g auto e -c
  15. non modificare tabella partizioni

Configurazione dei singoli computer

Una volta eseguite le copie, i PC vanno avviati uno alla volta (per evitare conflitti di IP) e vanno modificati i file /etc/hosts e /etc/hostname inserendo il giusto nome host (la pratica consiste nel cambiare il numero del PC, sostituendolo con quello della macchina relativa) e il file /etc/network/interfaces inserendo il giusto IP (bisogna modificare solo l’ultima cifra, questa aumenta di una unità per ogni computer partendo dal numero 50, che identifica il PC dell’insegnate, il PC n 01, sarà quindi 10.0.13.51, quello n 30 invece 10.0.13.80). Inoltre va modificato /etc/fstab affinché monti la /home del pc corretto

Fatto questo, possiamo riavviare il computer ed aggiungerlo al dominio, con il comando

 # net ads join -Uutente

È necessario inserire la password dell’utente amministratore di dominio, chiedere ai tecnici.
Infine riavviare.

Si ricorda che prima di eseguire il comando “net”, bisogna assicurarsi che il client sia configurato per fare il join dal server samba. Per fare ciò bisogna riconfigurare il client ssh dando il comando:

 # dpkg-reconfigure openssh-server
 
Tronweb on Facebook @tronweb on Twitter Recent changes RSS feed Creative Commons License Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki