Se a voi come a me capita di dover gestire piccole aziende e uffici, vi sarete trovati a considerare le diverse soluzioni disponibili per avere un server dati sostenibile sia dal punto di vista del costo iniziale che della manutenzione.
Il costo di una licenza Microsoft Server può da solo esaurire il budget di una piccola azienda, ed anche le più economiche licenze Small Business si portano dietro dei limiti (un singolo point of failure, la difficoltà ad integrare il server Small Business in ambienti preesistenti, l’impossibilità di rimuovere active directory, la rigiditò della configurazione che può portare a violazioni delle condizioni di licenza con shutdown periodici) che le rendono poco accettabili.
Le soluzioni linux si presentano come credibili sia per la stabilità del sistema operativo, sia per le pretese ridotte in termini di budget (costo nullo della licenza) e di hardware.
Quella che segue è una cronaca, in diversi passi, al passaggio da un sistema operativo all’altro. Non essendo scritta da un esperto Linux, conterrà certamente delle ingenuità; chi le trova me le segnali, per favore. D’altra parte la mia esperienza con Ubuntu è alla fine quella di un sistema operativo stabile, con una documentazione eccellente, e che certamente ha alcune idiosincrasie, ma nel complesso è efficiente e leggero (il vostro hardware sembrerà ringiovanito).
Ambiente operativo
Pensiamo ad un ufficio di venti – trenta postazioni. Le esigenze di sicurezza sono piuttosto ridotte, e d’altra parte gran parte dei sistemi operativi sono versioni Home Windows, per cui l’integrazione in un ambiente Active Directory non è né desiderata né fattibile. In rete sono presenti due file server, il primo Microsoft Windows 2003, mentre per il secondo, di fronte alla scelta di acquistare una nuova licenza server Microsoft, abbiamo preferito risparmiare e rivolgerci alla soluzione Linux Ubuntu. Il file server ospita diverse cartelle date in condivisione a gruppi di utenti diversi, che debbono poter accedere e leggere e scrivere (non contemporaneamente) gli stessi documenti.
Installazione del sistema operativo: Workstation o server?
La differenza sostanziale sta in ciò che si trova già installato. Ubuntu Server non installa un’interfaccia grafica, tutto si svolge a linea di comando. Questo può dare difficoltà ai meno esperti, anche se continuo a credere che un’interfaccia grafica possa essere una potente arma puntata sul piede di chiunque non sappia esattamente cosa sta facendo (anche Cisco offre molte possibilità di configurazione via GUI, per esempio, ma starei alla larga da un sistemista che non conosce IOS da linea di comando). Dal punto di vista del kernel le cose non cambiano: dalla versione 12.00 in poi il kernel è lo stesso sia per la versione workstation che per quella server (naturalmente esitono sia la versione a 32 che a 64 bit).
Anche il supporto, che per le versioni Workstation era limitato a tre anni, si estende con la versione 12.04 a 5 anni (LTS, Long Term Support). Alla fine la facilità di installazione e l’utilità del software già pronto mi hanno portato a scegliere la versione workstation.
Documentazione.
Linux, e Ubuntu, sono documetati in maniera eccellente, almeno per chi conosce un po’ di inglese tecnico. La community del sito ufficiale di Ubuntu si trova qua.
La comunità italiana di Ubuntu si trova a questo link. Per Linux ricordo l’opera monumentale Appunti di Informatica Libera di Daniele Giacomini, una splendida guida a Linux (in italiano, yes).
Installazione di Ubuntu.
L’installazione, limitandosi ad accettare i default, è sostanzialmente semplice, né abbiamo trovato difficoltà con l’hardware (in questo caso un piccolo Proliant HP). In rete è possibile trovare quali server sono certificati per Linux. Tutte le questioni riguardanti l’installazione sono descritte e discusse ottimamente in italiano su questo wiki. per cui daremo per scontato che ci troviamo davanti ad un box ubuntu felicemente funzionante ed in attesa di essere configurato. Per maggiore certezza, due consigli:
– facciamo pratica su una macchina virtuale prima di lavorare sull’HW reale (c’è un post su questo stesso sito su come fare)
– proviamo ad avviare Ubuntu su HW fisico in modalità live, senza installare su disco. In questo modo prima di modificare la configurazione dell’HD potremo vedere se tutti i dispositivi, in particolare scheda di rete e video, possono lavorare felicemente con Ubuntu.
In ultimo una raccomandazione: avere un server DHCP disponibile in rete aiuta. Durante la fase di installazione il server potrà negoziare un indirizzo DHCP e scaricare gli aggiornamenti in automatico.
Desktop environment
Quale faccia vogliamo che abbia il nostro server? Ubuntu si presenta con Gnome, un ambiente desktop che consente di amministrare (bene) con una ragionevolissima interfaccia grafica. Come detto sopra comunque un bel terminale è utile in tante occasioni. Detto questo, iniziamo a far diventare il nostro Ubuntu il più “windows like” possibile.
Installare software con Ubuntu
Superuser
Tutte le modifiche al sistema operativo o le installazioni e configurazioni di software, utenti, etc. vengono effettuate con diritti di amministratore. Per accedere ai diritti amministrativi usiamo il comando sudo che precederà ogni comando di configurazione. Ubuntu non consente, per default, di loggarsi con diritti amministrativi, e come utenti normali possiamo soltanto modificare i dati all’interno della nostra cartella utente. Questo non è un limite, come vediamo subito.
Installazione del software e aggiornamenti.
Come accade per Windows Server, anche Ubuntu ha il suo sistema di gestione del software e degli aggiornamenti. Il comando con cui facciamo tutto questo è apt-get.
Per aggiornare il sistema operativo apriremo una sessione di terminale e digiteremo
sudo apt-get update
mentre il comando
sudo apt-get autoremove
rimuove package installati ma non più necessari al funzionamento del sistema operativo.
Installare editor
vim è un potente editor tipo “vi”. Richiede un po’ di apprendimento. Per installarlo:
apt-get install vim
Per imparare ad usarlo, questo è un ottimo tutorial:
vimtutor
gedit è un editor di testo più facile da usare, (anche se confesso di preferire vim, anche per il controllo dei cursori simile a quello dell’IOS Cisco; beh è Cisco che tradisce origini *nix)
apt-get install gedit
Configurare un accesso remoto
xrdp è il software per avere accesso remoto, con una connessione remote desktop (venendo da microsoft più facile da usare di vnc). Porta 3389 e tutto come si deve, per cui possiamo usarlo per accedere al server ubuntu da mstsc. E’ sufficiente eseguire
sudo apt-get install xrdp
Gestione dei dischi
sudo palimpsest
Gestione di file e cartelle
Un utente può di default modificare soltanto ciò che è contenuto nella propria cartella user. Anche Microsoft segue ultimamente questa politica, sia pure con fluttuazioni e variazioni tra le diverse versioni di sistema operativo. In ambiente Linux questo è invece vero e costantemente applicato; se vogliamo apportare modifiche a folder al di fuori della cartella utente dobbiamo avere diritti di amministratore (anteporremo sudo ad ogni comando).
Di seguito una lista dei comandi più utili da riga di comando:
per cambiare cartella
cd [path]
dove [path] è il percorso.
cd /
porta a livello di root, l’origine del filesystem.
Per avere un’idea del significato delle cartelle di ubuntu, a questo link si trova il necessari:
http://www.space4tutorial.com/2008/09/17/le-directory-di-linux-la-scelta-di-ubuntu/
creare directory:
mkdir [foldername]
rimuovere directory
rmdir [foldername]
creare un file (crea un file vuoto):
touch [filename]
modificare un fle di testo al di fuori della propria home:
sudo gedit
o
sudo vim
Esaminare il contenuto di una directory:
ls [path]
Gestire da interfaccia grafica directories e files:
sudo nautilus
ogni comando è ampiamente documentato. E’ sufficiente digitare
man [comando]
per avere le informazioni necessarie.
Per ora è tutto. Prossimamente, il minimo necessario per :
creare utenti e gruppi (con script per la creazione)
la gestione dei diritti di accesso ai file
configurare una condivisione di rete
gestire l’accesso in scrittura con gruppi di utenti e lo strano caso dei file acceduti da Mac su condivisioni Linux (come modificare le direttive samba).
A presto!