Sei sulla pagina 1di 191

MAGO DI LINUX IN 24 ORE

ENRICO BOTTARI

• Entrare nel favoloso mondo


"open source" facilmente

• Conoscere le applicazioni principali


di Linux Mandrake

• Per tutti: principianti e utenti evoluti


© 2003 J. Group

Direzione e redazione
J. Group S.r.l
Via Rosellini, 12 - 20124 Milano
Tel. 02/89078.800 – Fax 02/89078.833

Autore
Enrico Bottari

Direttore Responsabile
Massimiliano Anticoli

Revisione
Domenico Pavone

Progetto grafico, impaginazione


Joint srl, Milano

L’editore è a disposizione degli avanti diritto, con i quali non gli è stato possibile
comunicare, per eventuali involontarie omissioni o inesattezze nella citazione delle
fonti dei brani e delle illustrazioni riprodotte nel presente volume. Tutti i diritti sono
riservati. Nessuna parte di questo libro può essere riprodotta, memorizzata in siste-
mi d’archivio, o trasmessa in qualsiasi forma o mezzo, elettronico, meccanico, foto-
copia, registrazione o altri, senza la preventiva autorizzazione scritta dell’editore. Gli
autori e l’editore di questo volume si sono fatti carico della preparazione del libro e
dei programmi in esso eventualmente contenuti. Gli autori e l’editore non si
assumono alcuna responsabilità, esplicita o implicita, riguardante questi programmi
o il contento del testo. Gli autori e l’editore non potranno in alcun caso essere
ritenuti responsabili per incidenti o conseguenti danni che derivino o siano causati
dall’uso dei programmi o dal loro funzionamento. Nomi e marchi citati nel testo
sono generalmente depositati o registrati dalle rispettive case produttrici.

PC Book n. 2 - Registrazione al Tribunale di Milano n. 329 del 19/05/03


Stampa: Legoprint Spa (Trento)
Distribuzione: So.Di.P. – Via Bettola, 18 – 20092 Cinisello Balsamo (MI)
Sommario

Capitolo 1
Storia e caratteristiche generali . . . . . . . . . . . . . . . . . . . . . . pag 9
Capitolo 2
Pronti … via . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . pag 21
Capitolo 3
Mandrake e le sue applicazioni . . . . . . . . . . . . . . . pag 57

Capitolo 4
La multimedialità . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . pag 91

Capitolo 5
Internet e il Web . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . pag 101

Capitolo 6
Dietro le quinte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . pag 125

Capitolo 7
Concetti avanzati . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . pag 157

3
Alla mia famiglia con amore

4
Prefazione

LINUX QUESTO SCONOSCIUTO


La diffusione di Linux nel mondo tende a crescere di mese in mese, trattandosi di un siste-
ma operativo che ha un’affidabilità realmente sorprendente e che garantisce un “uptime”
che vanta pochi concorrenti sul mercato. In tutto il mondo, migliaia di aziende utilizzano
Linux su computer che lavorano 24 ore su 24 per tenere in piedi, ad esempio, portali di
pubblica utilità o con finalità commerciali. A questo aspetto si aggiunga, poi, il fatto che
Linux è praticamente gratuito e che esiste una miriade di documentazione su Internet in

Per “uptime” s’intende l’intervallo temporale che intercorre tra due successivi riavvii della
macchina dovuti a crash di sistema. È un termine che si utilizza tipicamente per le mac-
chine server, che vengono sempre mantenute accese (“up and running”).

tutte le lingue, compreso l’Italiano, che ne permette un rapido apprendimento e una


gestione semplificata delle problematiche che si possono via via verificare. Un altro punto
a favore delle distribuzioni Linux sono le applicazioni che vengono fornite gratis con il siste-
ma operativo. Ad esempio fanno parte integrante di Mandrake una miriade quasi esage-
rata di applicazioni tra cui spiccano KOffice e OpenOffice, che includono programmi per il
word processing, per la gestione delle immagini, realizzazione presentazioni, creazione di
fogli elettronici ed altro ancora. La proverbiale difficoltà di utilizzo e la cosiddetta ermeticità
del linguaggio di base di tipo UNIX non è ormai più una giustificazione sufficiente per non
adottare Linux a livello aziendale e domestico. In effetti alcune distribuzioni, Mandrake e
Red Hat in particolare, sono talmente semplici da installare e da utilizzare che anche i più
convinti sostenitori del mondo Windows, dopo avere dato un’occhiata “all’altra sponda”,
potrebbero ricredersi velocemente. Esistono, peraltro, interessanti statistiche che eviden-
ziano l’utilizzo nel mondo di Linux e che danno una chiara visione di quanto sia ormai dif-
fuso a tutti i livelli. Linux Counter (http://counter.li.org/estimates.php) ha stimato il numero di
utenti Linux in 18.000.000 mentre a titolo di curiosità Google, nel Gennaio 2002, ha con-
tato circa 50.500.000 pagine contenenti la parola linux contro i 43.000.000 di pagine
con la parola Windows. Infine sempre a Gennaio 2002 sono stati censiti 480 Linux User
Groups (LUG), di cui 16 in Italia.

Ringraziamenti
Dedico questo angolino a chi crede in me e a chi ama come me la continua esplo-
razione nel mondo dell’informatica. Un bacio ovviamente alla mia bellissima famiglia
che è cresciuta l’anno scorso di un’interessante e pestifera unità.

5
Introduzione

OBIETTIVI
Questo libro è stato studiato per illustrare le caratteristiche di Linux Mandrake evi-
denziandone pregi e difetti, ma anche trucchi ed accorgimenti che possono rendere
la vita piú semplice durante il colloquio con il pinguino. L’obiettivo implicito, peraltro
malcelato, è quello di convincere il lettore della bontà di questo sistema operativo e
dell’opportunità di dargli una chance prima di prendere una strada decisamente “win-
dowsiana”. Per quanto si faccia esplicito riferimento a Mandrake 9.0 il lettore si ren-
derà conto che la maggior parte di quanto qui riportato è applicabile ad altre versio-
ni di Mandrake ed anche ad altre distribuzioni di Linux, in particolare alla Red Hat da
cui discende Mandrake.

Come utilizzare questo libro


Non esistono consigli particolari per rendere piú piacevole la lettura di questo libro,
salvo quello di dare preventivamente un’occhiata all’indice per capire quale capitolo
e/o paragrafo fanno più al caso nostro. Coloro che sono a digiuno di Linux dovrebbe-
ro ovviamente procedere step by step dall’inizio alla fine.
Gli ultimi due capitoli (a dire il vero anche il paragrafo dedicato ad Apache del quin-
to capitolo), infine, sono particolarmente impegnativi e possono tranquillamente
essere evitati se non s’intende entrare troppo nel dettaglio di Linux.

Convenzioni adottate
In questo testo useremo alcune convenzioni tipografiche comuni alla maggioranza
dei libri del settore. Per indicare l’attivazione di un dato comando da un certo menu,
anziché ricorrere a dizioni del tipo “scegliere l’opzione Apri... dal menu File” use-
remo “scegliere FILE Apri...” o “attivare il comando FILE Apri...”, affidando al
carattere di tipo maiuscoletto l’individuazione di un dato menu dalla barra menu. Nel
caso di comandi in cascata, evidenzieremo l’opzione di terzo livello con il carattere
corsivo; per esempio scriveremo FORMATO Foglio Rinomina al posto della frase
equivalente “scegliere l’opzione Foglio dal menu Formato e, successivamente, il
comando Rinomina”. Nel caso si presentasse la necessità di documentare un’ulte-
riore voce di menu questa sarà evidenziata con il carattere incassato. Ad esempio
Tutti i programmi Accessori Giochi.

7
CAPITOLO 1

9
Capitolo 1

STORIA E CARATTERISTICHE GENERALI


1.1 Un pinguino viene alla luce

Non occorre risalire alla notte dei tempi per trovare le origini di Linux. Nell’estate del 1991
uno studente universitario finlandese, tal Linus Benedict Torvalds, decise d’iniziare lo svi-
luppo di un sistema operativo simile a UNIX. Il suo obiettivo era di non utilizzare Dos o Win-
dows, di avere un sistema operativo che non gli costasse cifre esagerate e che gli garantis-
se affidabilità e scalabilità. Facciamo un rapido passo indietro. Il diretto antecedente di Linux
è, dunque, UNIX che nasce in casa AT&T nel 1969, grazie al contributo di nomi storici quali
Thompson, Kernighan e Ritchie. Questi personaggi, che fecero parte anche del team di
sviluppo del linguaggio C, partirono da un sistema operativo preesistente MULTICS (MUL-
Tiplexed Information and Computing System), il cui sviluppo si era arrestato a causa della
sua eccessiva complessità. Il primo nome fu UNICS (Uniplexed Information and Compu-
ting System), trasformato poi in UNIX. Appena “sfornato” ebbe subito un successo senza
precedenti e questo soprattutto perché costava poco ed erano disponibili parte dei sorgenti
che permetteva ad aziende ed università di personalizzare il codice a proprio uso e con-
sumo. Ai giorni nostri esistono vari dialetti UNIX: BSD UNIX nato nell’Università di Berke-
ley in California nel 1977; il famosissimo System V creato nei Bell Labs dell’AT&T e presen-
te ora su tutte le macchine di Sun Microsystems ed infine l’altrettanto famoso POSIX adot-
tato dalla HP. È a questo dialetto che si rifà Linux. Nell’ottobre del 1991, dunque, il genio di
Helsinki rilascia la versione 0.02 di un OS per Intel 80386 chiamato guarda caso Linux,
nome derivato direttamente dal suo nome di battesimo. Per questo motivo la pronuncia
non è lainux bensì linux. Il suo famoso e per certi veri indimenticabile annuncio (… it has
finally reached the stage where it’s even usable … it is just version 0.02, but I’ve succes-
sfully run bash/gcc/gnu-make/gnu-sed/compress etc under it …) è tuttora reperibile su
Internet. Per gli amanti dei cimeli storici l’indirizzo è quello che segue:
http://groups.google.com/groups?selm=1991Oct5.054106.4647%40klaava.Helsinki.FI

L’annuncio della nascita di Linux.

10
Storia e caratteristiche generali

Pochi mesi dopo, nel gennaio del 1992, viene lanciata una versione non molto sta-
bile, la 0.12, che tuttavia supporta più hardware della precedente. Da questo momen-
to in poi il progetto di Torvalds attira un numero via via crescente di utilizzatori e di per-
sone interessate allo sviluppo del kernel, il cuore di Linux. Le prime distribuzioni nasco-
no nell’aprile del 1992, si tratta di MCC Linux e SLS. Nel 1994, in seguito alla creazione
della release 1.0, vengono sfornate altre distribuzioni, le più famose Red Hat, Debian e
SUSE. Questo è anche l’anno in cui Linux diventa ufficialmente un software aperto
abbracciando in pieno la General Public License (GPL) del movimento GNU Open
Source, che ha proprio come obiettivo quello di fornire software di pubblico dominio,
senza costi aggiuntivi. Nel 1994 nascono anche i Linux User Group diffusi in Italia
(http://www.linux.it/LUG/).
Mentre nel 1995 nasceva la distribuzione Caldera Linux, il 1996 è un anno importante per-
ché viene rilasciata la versione 2.0, compaiono le prime versioni in lingue differenti dall’In-
glese e soprattutto perché nasce TUX, il pinguino simbolo di Linux. Esiste addirittura un sito
dedicato a questo simpatico personaggio dove si possono trovare immagini, animazioni,
giochi ed altro ancora su TUX. Ecco gli estremi del sito: http://www.babytux.org

TUX diventa una vera mania per gli amanti di Linux.

Nel 1997 il papà di Linux lascia la Finlandia e si trasferisce negli USA per lavorare alla
Transmeta, una società abbastanza misteriosa che produce microprocessori. Da que-
sto momento in poi Linux diventa sempre più indipendente dal suo creatore, che tut-
11
Capitolo 1

tavia continua a lavorare alla sua creatura. La MandrakeSoft mette in pista la distri-
buzione Mandrake nel 1998. Il 1999 è l’anno della nascita del kernel 2.2, mentre nel
2001 viene sfornata la release 2.4.0. Oggi siamo arivati al versione 2.4.21 del kernel
di Linux, grazie all’attività di Alan Cox, una persona peraltro molto stimata da Linus
Torvalds, che si occupa dell’evoluzione del kernel.

1.2 La filosofia di Linux

Linux è un software libero che fa parte, quindi, di quel gruppo di applicazioni e siste-
mi operativi messi a disposizione degli utenti finali in maniera del tutto free. Lo scopo
di ciò non consiste semplicemente nella libertà di copia ma soprattutto nella possibi-
lità di utilizzare, analizzare, modificare ed eventualmente distribuire software partendo
dall’ultimo sorgente liberamente reperibile su Internet. Si tratta di una libertà diretta-
mente collegata all’onestà intellettuale: non esistono vincoli di copyright ma chi accede
ai sorgenti di programmi Open Source dovrebbe avere la competenza che gli consenta
d’implementare e di arricchire quanto altri hanno fatto senza avere un diretto torna-
conto economico. Sono concetti nobili che portano necessariamente a pensare in ter-
mini più eterocentrati, guardando al bene comune piuttosto che al nostro, se vogliamo
misero, orticello. Agli antipodi di questo concetto ci sono i cosiddetti pirati del software,
ossia coloro che incuranti dei danni arrecati dai loro atti copiano a tutto spiano il softwa-
re non freeware. Atti di questo tipo non fanno altro che danneggiare l’indotto del mondo
IT e ridurre, se pur indirettamente, gli spazi occupazionali che l’informatica rende dispo-
nibili sul mercato. La Mandrake Linux 8.2 ProSuite Edition è stata la prima distribuzione
Linux a essere certificata Linux Standard Base (LSB 1.2). Anche la Mandrake 9.0 sod-
disfa le specifiche LSB 1.2 e il prossimo Mandrake Linux Corporate Server basato su
Mandrake 9.0 sarà certificato LSB 1.2. MandrakeSoft sostiene il Linux Standard Base
che rappresenta un passo essenziale nell’assicurare la compatibilità tra diverse distribu-
zioni Linux. Assicura anche che Mandrake Linux sarà compatibile con un grande nume-
ro di applicazioni enterprise come Database, CRM e programmi di contabilità.

Il sito della MandrakeSoft.

12
Storia e caratteristiche generali

Dal momento che sono stati rimossi Netscape e le ultime aplicazioni proprietarie
rimaste, Mandrake Linux 9.0 è un prodotto “100% software libero”. Questo significa
che tutti hanno diritto ad accedere ai sorgenti, modificare, e ridistribuire il software.
Questo significa anche che Mandrake Linux 9.0 può essere utilizzato su tutte le mac-
chine che volete.

1.3 Quale distribuzione?

Spesso chi non conosce Linux si confonde tra il concetto di versione e quello di distri-
buzione. Per versione s’intende quella del kernel del sistema operativo, il cosiddetto
motore software che fa funzionare tutto quanto, mentre per distribuzione s’intende l’in-
terfaccia grafica applicata ad un determinato kernel più le applicazioni software che ven-
gono fornite. Ad ognuna di queste distribuzione corrisponde un nome particolare, SUSE,
Red Hat, eccetera e caratteristiche differenti fornite agli utenti finali. Una delle domande
che ci si pone quando si vuole installare Linux è senza dubbio quale distribuzione instal-
lare sul proprio PC. Partiamo subito da un assunto: se si paragonano (ad esempio con un
benchmark) due diverse distribuzioni di Linux che utilizzano la stessa versione del kernel
non si possono che avere gli stessi risultati in termini di prestazioni. La prima grande dif-
ferenziazione che si può fare è tra distribuzioni commerciali e non. Intendendo per le
prime quelle che vengono vendute su CD-ROM a prezzi molto contenuti (pochi euro) e
che vengono seguite in termini di aggiornamenti e supporto tecnico dai rispettivi produt-
tori, mentre per le seconde quelle che non hanno fini di lucro e che, tuttavia, vengono
ugualmente aggiornate nel corso del tempo. In generale sono, comunque, tutte scarica-
bili da Internet e anche quando ciò non è possibile si possono acquistare per pochi euro
su Internet o tramite riviste. Le distribuzioni più conosciute sono le seguenti:
• Red Hat Linux, che attualmente è forse la versione di Linux più diffusa
e utilizzata nel mondo
• Mandrake Linux, derivata dalla precedente e a cui faremo specifico riferimento
in questo libro
• Caldera OpenLinux
• LinuxPro
• Madrake
• Debian, l’unica ormai non commerciale
• Slackware
• WinLinux
• SUSE.

La differenza principale è, dunque, nel software di supporto al sistema operativo e nel


diverso front end di tipo X-Window che viene allegato. Alcune versioni, inoltre, forni-
scono word processor (come Word Perfect), fogli elettronici, programmi per la grafi-
ca ed altro ancora. Una dritta? Se accedete al sito http://www.linuxiso.net/ potete
13
Capitolo 1

ordinare pagando solo il costo di spedizione e dei CD, più o meno 9 Euro, pratica-
mente qualsiasi distribuzione presente sul mercato.

Un sito utile per procurarsi Linux.

Un consiglio? Mandrake e Red Hat sono senz’altro le distribuzioni più amichevoli e dotate
di applicazioni, in particolare le ultime messe sul mercato sono veramente friendly e facili
da utilizzare. Proprio in questi giorni mi è capitato di acquistare un rivista dedicata a Red
Hat dove era presente la distribuzione 8.5 per appena 8 euro! V’immaginate che, prima o
poi, possa accadere una cosa del genere a qualche software commercializzato da Micro-
soft? Beh, forse in un’altra vita!

1.4 Che cos’è e a chi serve MANDRAKE Linux

Mandrake è ovviamente una distribuzione di Linux. Anzi in questo momento e la più com-
pleta ed appetibile per tutti coloro che vogliono installare un client “chiavi in mano”.
Mandrake Linux fu creato nel 1998 dalla MandrakeSoft con l’obiettivo di rendere Linux più
semplice. L’idea era quella di fornire all’utente un solido sistema basandosi sull’esperienza
già consolidata di Red Hat e semplificandone l’uso in seguito all’aggiunta del desktop gra-
fico più potente ed amichevole che esista nel mondo Linux: il KDE. Un altro obiettivo per-
seguito da MandrakeSoft è quello di evitare che il nuovo utente debba surfare a più ripre-
se su Internet per cercare prodotti aggiuntivi. Ecco perché si parla di chiavi in mano: le
applicazioni installate dovrebbero, infatti, consentire di effettuare quasi tutte le operazioni di
cui hanno bisogno i normali utilizzatori di PC, dalla scrittura di documenti, alla creazione di
fogli elettronici, alla gestione di progetti e d’immagini grafiche. La distribuzione in commer-
cio al momento della scrittura di questo libro è Mandrake Linux 9.0, che nella release
PowerPack contiene in 7 CD, oltre al sistema operativo, più di 2300 applicazioni inclu-
sa una suite Office di programmi. Il costo? Intorno a 72 Euro, incluso il supporto di Man-
drakeSoft vale a dire infinitamente meno di quanto si possa pagare per il più limitato dei
pacchetti Office di Microsoft. Esistono anche altre due release, una meno costosa e una
più cara: la prima è la Standard distribuita che costa intorno a 33 Euro e la ProSuite,
mirata all’ambiente Server, che costa intorno a 180 Euro.

14
Storia e caratteristiche generali

Date un’occhiata al sito ufficiale della MandrakeSoft http://www.mandrakelinux.com/it/


per avere ulteriori delucidazioni.

• Concetto di sistema operativo


Molto spesso si parla di sistema operativo dandone per scontato il significato; in realtà
la comprensione di questo concetto ha una certa rilevanza. Di seguito ne viene data
una definizione semplificata. Un sistema operativo è quello strato software che for-
nisce la necessaria interfaccia tra il computer e i programmi applicativi, realizzando
tutti quei compiti che i programmi applicativi gli richiedono in maniera del tutto tra-
sparente per gli utenti dell’elaboratore. In definitiva un sistema operativo svolge i
seguenti compiti fondamentali:
• Mette in relazione l’uomo con il computer.
• Permette l’archiviazione dei dati.
• Si occupa della gestione dei processi (caricamento, esecuzione e chiusura di un pro-
gramma).
• Garantisce la sicurezza dei dati memorizzati.

L’interprete dei comandi è una sorta di traduttore che opera su comandi ricevu-
ti in input esaminandone le diverse frasi secondo il loro ordine d’immissione. Per cia-
scuna frase individua le operazioni richieste e ne chiede l’immediata esecuzione al
sistema operativo, segnalando errori di sintassi o incongruenze nei dati. L’esempio più
noto è forse il command.com del MS-DOS.

Il S.O. mette in relazione l’uomo con il computer e le sue periferiche.

15
Capitolo 1

Senza entrare in ulteriori dettagli tecnici Linux ha anche le caratteristiche appena evi-
denziate. I comandi vengono lanciati e passati al vaglio dell’interprete tramite l’inter-
faccia grafica e, quindi, tipicamente cliccando su icone, oppure direttamente digitan-
doli sulla console o su una finestra terminale.

D’ora in poi quando parleremo di “sistema operativo” ci riferiremo sempre


a Linux Mandrake.

1.5 KDE vs Gnome

La forza di Linux e di Mandrake in particolare è la possibilità di utilizzare interfacce


grafiche differenti. Sono, infatti, disponibili svariati ambienti grafici tutti estremamente
interessanti, dove spiccano, però, KDE e Gnome. KDE, acronimo di K Desktop Envi-
ronment, è un’interfaccia molto apprezzata e questo perché è molto versatile, è facil-
mente personalizzabile e fornisce un file manager di primo ordine (Konqueror).

L’interfaccia KDE di Linux.

Gnome, ossia lo storico gnomo con piedi da quattro dita, ha caratteristiche simili a KDE,
anche se sta perdendo colpi di fronte al K Desktop Environment. Ad esempio Konque-
ror viene solitamente preferito a Gnome Nautilus, pur avendo le stesse funzionalità.
Tra l’altro dovete sapere che in questi anni si è scatenata una vera e propria guerra tra il
team di sviluppo di KDE e quello di Gnome. In particolare circa due anni fa, la guerra tra
KDE e Gnome era arrivata al culmine: i sostenitori di Gnome criticavano KDE per la
Licenza Qt (Qt è un toolkit grafico prodotto da TrollTech utilizzato come base per la pro-
grammazione di KDE) che non era una vera licenza libera, e i sostenitori di KDE critica-
vano Gnome perché, a quel tempo, non aveva ancora rilasciato niente di veramente
“significativo”.

16
Storia e caratteristiche generali

L’interfaccia Gnome di Linux.

Nel marzo 1999, TrollTech creò la QPL (Q Public License) che, fu riconosciuto, sod-
disfaceva i criteri dell’Open Source se non il “puro” software libero, agli occhi della
Free Software Foundation. Gli sviluppatori di Gnome lavorarono duramente e rila-
sciarono un ambiente desktop che è ora un ambiente molto completo e facile da uti-
lizzare per molti utenti. KDE e Gnome hanno, per un certo periodo, perfino parlato
di cooperare, specialmente riguardo a protocolli comuni di comunicazione tra i due
ambienti; noi tutti speravamo che presto avremmo avuto la possibilità del “drag and
drop” di un oggetto Gnome nel file-manager KDE. Il dibattito si è riacceso recentemente
in particolare a causa dell’annuncio fatto al LinuxWorld Expo che Gnome, Sun, Compaq,
Red Hat, Turbo Linux ed altri avrebbero supportato Gnome come desktop standard per
Linux. Ciò diede il via ad una quantità di articoli che presentavano gli argomenti a favore e
contro provenienti dalla comunità Linux e perfino dalla stampa tradizionale di informatica.
Fu effettivamente piuttosto “divertente” perché molta energia fu profusa ma sfortunata-
mente non si risolse nulla. Fu soltanto una buona opportunità per rilanciare il dibattito su
questo tema, che presenta vantaggi (la stampa tradizionale parla di Linux) e molti svantaggi
(i sostenitori di Gnome e KDE non si parleranno per un po’). Probabilmente il dibattito non
si concluderà mai, essendo normale che alcuni utenti preferiscano un’interfaccia grafica
piuttosto che un’altra. Questo, tra l’altro, è perfettamente compatibile con lo spirito del
software libero: ognuno avendo a disposizione free software è giusto che debba anche
avere la possibilità di scegliersi lo standard che preferisce senza imposizioni di sorta. Nella
battaglia KDE vs Gnome la speranza non è vinca il migliore, ma che continuino a coesi-
stere entrambi migliorandosi nel tempo!

1.6 Differenze e punti di contatto con Windows

La differenza principale è legata all’Open Source: il progetto Linux per esplicito volere del
suo iniziatore e pionere impone che si possa parlare di Linux solo se il software è realmente
17
Capitolo 1

libero e se è possibile accedere ai programmi sorgenti per dare il proprio libero contribu-
to. Il mondo Windows è un’altra cosa e non potrebbe essere altrimenti: Microsoft non è
un’azienda rivolta alla beneficenza, ma è stata costituita a fine di lucro e che lucro! Bill
Gates è diventato in breve tempo uno degli uomini più ricchi della terra e i progetti della
casa di Redmond sembrano non trovare ostacoli nel corso della loro attuazione. I sorgen-
ti sono rigorosamente custoditi nelle casseforti di Microsoft e se anche se ne entrasse in
possesso, sarebbe impossibile riutilizzarli a fini commerciali senza essere perseguiti e sicu-
ramente condannati per plagio e quant’altro. I punti di contatto non sono moltissimi, ma ci
sono. Entrambi sono sistemi operativi nati per PC client e poi per server di rete, entrambi
sono dotati di interfacce grafiche amichevoli, entrambi sono dotati di programmi di default
che vengono forniti con l’OS. Certo i detrattori di Windows, nonché amanti di Linux, accu-
sano Microsoft di mettere sul mercato solo software “good enough”, abbastanza buono, e
che l’uptime di Windows è inaccettabile. Per non parlare dei prezzi elevati, della scarsità di
applicazioni fornite con l’OS e dell’inesistente supporto fornito. La maggiore critica degli
amanti di Windows è basata sulla complessità di Linux e sulla difficoltà di essere compati-
bile con tutto l’hardware in circolazione.

1.7 Caratteristiche di base e hardware necessario

Le caratteristiche di base di Mandrake 9.0 sono le seguenti:


• Kernel: 2.4.19
• Desktop: KDE 3.0, Gnome 2.0
• Apache: 1.3.23
• Perl: 5.6.1
• Browser: Mozilla 1.0, Galeon 1.1.5, Konquerror
• Xfree86: 4.2.1
• Suite office: Koffice 1.2, OpenOffice 1.0.1, Gnome Office 0.6
• Mysql: 3.23.52
• Formato pacchetti: RPM

L’hardware: supportato da Mandrake Linux 9.0 è il seguente:


Processore: tutti i processori Pentium di INTEL e i processori AMD e multiprocessori.
Memoria RAM: 64 Mb (128 consigliati).
Disco fisso: 500 Mb minimi, 1 Gb consigliati.
CDROM, DVD, CDRW: tutti SCSI, IDE, PCMCIA e alcune periferiche su porta parallela.
Supporti removibili: ZIP, porta parallela, USB, SCSI, PCMCIA, 100 Mb e 250 Mb.
Tutti i dischi SCSI in base alle schede supportate.
SCSI: Adaptec 2904, 2930xxx, 2940xxx, 19160, 29160, LSI Logic 53C8xx,
53C1010, Tekram DC-3xx.

18
Storia e caratteristiche generali

Schede grafiche: ATI, 3DFX, SIS 6326-305-620-630-530, S3, Nvidia, Matrox


(tutte), INTEL i740, i810, i815, TRIDENT: la maggior parte, supporti multiple display.
Accelerazione hardware 3D per: Matrox G200, G400, VOODOO III/IV/Banshee, ATI
Rage 128/Pro, 7500, 8500, GeForce2/3/4.
La maggior parte delle schede TV.
Schede di rete: ISA, PCI e USB; RNIS e DSL.
Schede audio: tutte le schede compatibili SoundBlaster, SB Live, 128, XWave, Cry-
stall, i810, i815, Yamaha, YNF744.
Connessione Internet: Assistente di connessione internet con supporto dei modem
classici, ISDN, ADSL e cavo.

1.8 Office1, 2 e 3 per Linux

Avrete ormai capito che una delle caratteristiche fondamentali di Linux è di consen-
tire più di un’alternativa ai propri utenti. Ecco perché le versioni di Office per Man-
drake Linux sono più di una, in particolare ogni installazione comprende OpenOffice,
KOffice e Gnome Office. Senza considerare StarOffice della SUN Microsystems che
qui non consideriamo, in quanto a pagamento e non inclusa nel sistema operativo.

1. OpenOffice include molte applicazioni di utilità generale: Impress, Calc, Math,


Writer e Draw. OpenOffice è disponibile in molte lingue. Questa suite può leggere e
scrivere la maggior parte dei documenti di Microsoft Office come i file di Word,
Excel e PowerPoint.

2. KOffice, per quanto forse più limitata delle precedenti, include interessanti program-
mi di produttività come KWrite ed è stata appositamente progettata per il desktop KDE.

3. Infine Gnome Office è la suite nata appositamente per il desktop Gnome dove è par-
ticolarmente interessante soprattutto Mr Project, il programma di Project Management.

19
20
CAPITOLO 2

21
Capitolo 2

PRONTI … VIA
2.1 La fase d’installazione

La fase d’installazione di Mandrake Linux è molto semplice e totalmente guidata.


Questo permette di mettere a tacere una delle critiche cui era soggetto Linux nel
passato, cioè l’intrinseca difficoltà d’installazione che rendeva necessario l’intervento
di un esperto per superare alcuni passi particolarmente tecnici, come il partiziona-
mento del disco e il riconoscimento delle periferiche e delle varie schede.
Premesso che il setup di Mandrake ha caratteristiche plug&play (autoriconoscimen-
to delle periferiche), non fa certamente male premunirsi con alcune informazioni
prima d’iniziare l’installazione:

1. Conoscere l’hardware a disposizione. Solitamente durante l’installazione il proprio


hardware viene rilevato automaticamente, ma possono esserci rari casi in cui que-
sto non accade. In genere se si usa un PC standard con una nuova distribuzione
non ci sono problemi nel riconoscimento di componenti e periferiche.
2. Sapere quali e quanti hard disk sono presenti sul sistema, eventualmente come
sono partizionati e quali non contengono dati importanti e possono, perciò, esse-
re cancellati. Nel caso in cui Windows sia presente su un hard disk e si vuole man-
tenerlo si ricordi che è possibile ridimensionare la partizione che lo contiene
durante l’installazione di Linux, ma prima è necessario deframmentarla. Questo
perché le informazioni non vengono scritte in tracce contigue sul disco, ma in
maniera casuale. Il defrag di Windows consente di allineare tutte queste infor-
mazioni l’una vicina all’altra nella parte iniziale dell’hard disk e va, quindi, eseguito
prima di lanciare il set-up di Mandrake.
3. Il tipo di computer su cui viene fatta l’installazione (server, desktop, laptop).
4. Configurazione di rete, se prevista (indirizzo IP, subnetmask, nome macchina, server
DNS).
5. Configurazioni base del sistema (layout di tastiera, nomi utenti e password, timezo-
ne).
6. I servizi che dovrà offrire (deve diventare un server? Di che tipo?).

Nel caso in cui si decida d’installare Linux in “coabitazione” con Windows è consigliato
salvare dati e informazioni prima di procedere.

• Avviare il set-up
Prima di lanciare il programma d’installazione, che per la cronaca si chiama DrakX, con-
nettete ed accendete tutti i dispositivi esterni, quali modem, scanner, stampante. Questo
consentirà la loro automatica individuazione. Volendo installare direttamente da CD verifi-

22
pronti ... via

care se il PC è abilitato a fare il boot da CD, altrimenti è opportuno abilitarlo nella scher-
mata del Bios (di solito vi si accede premendo un tasto particolare all’avvio, come Canc o
F2). Se avete problemi a partire da CD è anche possibile creare un floppy disk di avvio
all’interno di Windows come segue (ovviamente il PC deve essere abilitato nel Bios a cer-
care il floppy durante la sequenza di boot, ma di solito questo è il default per tutti i PC):
• Bisogna usare il programma grafico chiamato rawwrite, che si trova nella direc-
tory dosutils del CD.
• Selezionate cdrom.img dalla directory images del CD di avvio e il drive floppy in cui
inserirete il dischetto (a:).
• Quindi, se ancora non lo avete fatto, inserite un disco floppy vuoto nel dispositivo
che avete scelto, e cliccate su Write. Una volta terminata la copia, cliccate su Exit:
ora avete un disco di avvio per installare la distribuzione Mandrake Linux.

La schermata grafica di rawwrite.

Per creare un floppy di avvio da un sistema Linux (un’altra versione, un’altra distribu-
zione, da un amico che ha Linux, ecc…):
• Montate il CD-ROM. Supponiamo che il punto di mount sia /mnt/cdrom.
• Entrate nel sistema come root.
• Inserite un disco floppy vuoto nel lettore e digitate:
dd if=/mnt/cdrom/images/cdrom.img of=/dev/fd0

Prestare attenzione che se il floppy non è a: ma b: il comando sotto Linux diventa: dd


if=/mnt/cdrom/images/cdrom.img of=/dev/fd1

• Il set-up passo dopo passo


Bene ora possiamo iniziare. Inserite il CD e, se necessario, anche il floppy di avvio e poi
riavviate la macchina. La prima finestra è grafica e in Inglese e richiede la pressione del
tasto Invio per procedere. Se si attendono alcuni secondi, comunque, il set-up parte da
solo in modalità Linux visualizzando il caricamento dei primi processi in memoria in una
23
Capitolo 2

schermata formato testo.

La schermata di avvio del set-up di Mandrake.

DrakX gestisce automaticamente il set-up e visualizza sulla parte sinistra dello schermo lo
status dell’installazione passo dopo passo. In particolare se una certa fase è rossa significa
che quel componente non è ancora stato installato, se è arancione indica che è in corso
l’installazione ed, infine, se è verde evidenzia che quella fase dell’installazione è stata ese-
guita con successo.

Una schermata tipica di DrakX.

Nella parte inferiore di ogni schermata è sempre presente un guida in linea,


interrogabile tramite F1.

Ora Mandrake Linux è caricato in memoria e viene richiesta la selezione della lingua
che da quel momento in poi si vuole adottare per il set-up e come default per il siste-
ma operativo, una volta installato. Le schermate d’ora in poi sono solo grafiche.

24
pronti ... via

Per passare da una lingua all’altra successivamente utilizzare il comando /usr/sbin/loca-


ledrake: come root per cambiare la lingua utilizzata in tutto il sistema, o come utente
normale per cambiare solamente la lingua usata da quell’utente

Dopo le informazioni relative alla licenza viene richiesta la modalità di setup che si
vuole utilizzare: raccomandata, che è quella standard o esperto, che consente di
personalizzare dettagliatamente l’installazione. Si deve anche scegliere uno dei
seguenti pulsanti: Installa, Aggiorna o Solo aggiornamento pacchetti, per defi-
nire se si tratta di una prima installazione, di un aggiornamento (in questo caso non ci
dovrebbero essere problemi a partire dalla versioni 8.1 del sistema operativo) o di
lasciare invariata la configurazione di base installando solo alcuni pacchetti aggiuntivi.
A questo punto è necessario indicare qual è la partizione destinata a Linux, i punti di
mount e dimensionamenti vari. Siamo in una fase delicata che ha sempre determi-
nato incertezza nei meno esperti. Calma e sangue freddo, con il set-up di Mandrake
non ci sono assolutamente problemi. Ecco come procedere. Nel caso in cui si tratti di
un aggiornamento del sistema operativo e vogliamo confermare la struttura preesi-
stente il set-up è più semplice, basta indicare in quale partizione installare Linux. Ecco
le due opzioni consigliate, che non ci permettono di definire dimensioni e punti di
mount personalizzati, ma che minimizzano la possibilità di errori:
1. Usa spazio disponibile. Qui siamo nel caso in cui tutto un disco (o più dischi)
viene destinato a Linux Mandrake. Il partizionamento procede automaticamente
senza ulteriori richieste.
2. Usa lo spazio libero della partizione Windows. Qui siamo nel caso in cui c’è
una partizione Windows sul disco. Se si vuole mantenere Windows con i suoi dati
è possibile ridimensionare la sua partizione, a patto che sia stata in precedenza
deframmentata. In questo caso (il programma che si utilizza si chiama DiskDrake)
bisogna scegliere la partizione, fare clic sul pulsante Ridimensiona e poi su Allo-
ca automaticamente. L’alternativa è la cancellazione di Windows e di tutti i suoi
dati (pulsante Cancella) per destinare tutto lo spazio al nuovo sistema operativo,
procedendo poi all’allocazione automatica dello spazio.

Configurazione della partizione per Linux.


25
Capitolo 2

Dopo il passo precedente il set-up procede alla creazione dei file system (nel linguaggio
del mondo UNIX un file system è una directory di base sulla quale poi vengono create altre
directory) e a formattare le partizioni. A questo punto è venuto il momento più interessan-
te, quello dell’installazione del software, che è facilmente individuabile nei quattro gruppi
principali:

1. Workstation. Se si tratta di un PC domestico o, comunque, che non ha funzio-


nalità da server questo è il gruppo di riferimento. Sicuramente non vanno trala-
sciati: Postazione di lavoro con programmi Office, Computer multimediale, Com-
puter con accesso ad Internet e Programmi da linea di comando.
2. Sviluppo. Se siete appassionati di programmazione includete i pacchetti che
fanno parte di questo gruppo.
3. Server. Se ritenete che il vostro computer debba avere funzionalità da server, qui
ci sono componenti importanti e cioè Web/FTP, Posta/Groupware/Newsgroup,
Database, Firewall/Router, DNS/NIS e Server di rete.
4. Ambiente grafico. Infine non dimenticate questa opzione che imposta come
default le due interfacce grafiche principali (KDE e GNOME), ma che vi permette
di selezionare anche altri desktop grafici.

Il set-up richiede sempre la conferma dell’installazione dei software di tipo server e que-
sto perché Mandrake avvia automaticamente il servizio alla partenza del PC. Questi
software, per quanto certificati e considerati sicuri, potrebbero costituire potenziali brec-
ce nel sistema se un hacker scopre un bug nel sistema operativo.

Da questo momento in poi DrakX procede all’effettiva installazione del sistema ope-
rativo. Successivamente viene richiesta la digitazione della password dell’utente root.
È un momento molto importante perché root è l’amministratore del sistema e può
fare qualsiasi cosa. La scelta deve essere oculata e basata possibilmente su un insie-
me di caratteri alfanumerici. L’aggiunta di un utente serve a definire un utente non
amministrativo che non può fare danni irreparabili al sistema operativo. Mandrake
Linux è un sistema operativo multiutente, ma accedere sistematicamente come root
non è corretto in quanto, come accennato, non siamo “protetti” da eventuali errori o
cancellazioni accidentali. Tra l’altro da console è sempre possibile diventare root digi-
tando su –
Dopo la richiesta di configurazione della rete viene fatto il riepilogo dei parametri
relativi alla macchina. Si tratta essenzialmente di:
• Mouse: controllate la configurazione attuale del mouse, e cliccate sul pulsante per
cambiarla, se necessario.
• Tastiera: controllate l’attuale impostazione della tastiera, e cliccate sul pulsante
per cambiarla, se necessario.
• DrakX, inizialmente Fuso orario: il fuso orario è dedotto dalla lingua che avete
scelto ed è basato su GMT (Greenwich Mean Time). Ma anche in questo caso,
26
pronti ... via

come per la tastiera, potreste non trovarvi nella nazione cui corrisponde la lingua
che avete scelto; in tal caso sarà necessario cliccare su questo pulsante per con-
figurare il fuso orario in base a quello dell’area geografica in cui vivete.
• Stampante: cliccando sul pulsante Nessuna stampante verrà lanciato l’assistente
di configurazione della stampante.
• Scheda audio: se sul vostro sistema è stata individuata una scheda audio, verrà
mostrata qui. Al momento dell’installazione non è possibile apportare alcuna
modifica.
• Scheda TV: se sul vostro sistema è stata individuata una scheda TV, verrà mostra-
ta qui. Se disponete di una scheda TV che non è stata individuata, cliccate sul pul-
sante per cercare di configurarla a mano.
• Scheda ISDN: se sul vostro sistema è stata individuata una scheda ISDN, verrà
mostrata qui. Potete cliccare sul pulsante relativo per cambiarne i parametri.

Dopo la conferma per la partenza dei servizi server si procede all’installazione del boo-
tloader per caricare Linux all’avvio del PC. Vi consigliamo di accettare le impostazioni di
default, compresa l’installazione di LILO. La creazione di un disco di boot, che è assolu-
tamente necessaria se non s’installa LILO, è sempre caldamente consigliata. Vengono, poi,
fatti alcuni test per configurare correttamente il server X, che è quello che gestisce le varie
interfacce KDE, GNOME, eccetera. Viene mostrata una lista di risoluzioni con richiesta di
conferma. La penultima operazione riguarda la verifica se esistono su Internet degli aggior-
namenti di sistema da installare. L’ultima è il riavvio di Mandrake.

La prima volta che si avvia Mandrake Linux compare l’assistente che aiuta a configura-
re le principali opzioni del desktop dove è possibile scegliere il desktop e configurare la
connessione per Internet

2.2 LILO

LILO sta per LInux Loader, è il bootloader più diffuso per Linux e permette il boot sia
di Linux che di altri sistemi operativi. Al momento dell’avvio del computer LILO, infatti,
visualizza una lista dei sistemi operativi installati, permettendo di sceglierne uno. Tutte le
impostazioni di LILO sono definite nel file /etc/lilo.conf che contiene una parte globale e
una o più parti relative alle diverse immagini del kernel o sistemi operativi che si vogliono
poter caricare. Il comando /sbin/lilo installa sul MBR (Master Boot Record, che è il settore
di avvio presente sul disco) o sul settore di boot di una partizione LILO secondo le indica-
zioni date in /etc/lilo.conf. Non vi preoccupate se DrakX installa in automatico LILO senza
dare alcuna alternativa, perché è sempre possibile eliminarlo, dopo avere creato un
dischetto di avvio di Mandrake Linux (cfr. più avanti paragrafo 2.8). DrakFloppy è l’utility che
ci serve per fare questa operazione e che si attiva dal Mandrake Control Center, il potente
pannello di controllo di Mandrake Linux.

27
Capitolo 2

Per cancellare LILO basta partire con un dischetto DOS che contiene l’utility fdisk e digi-
tare al prompt fdisk /mbr. ATTENZIONE ora Linux è “nascosto” e per avviarlo è neces-
sario un dischetto Linux di avvio.

Il file lilo.conf.

Ricordate che se avete Windows, una volta modificato MBR e installato LILO, non avverrà
più la partenza immediata di Windows, ma verrà visualizzato un menu a scelta multipla. Se
dunque non siete convinti di quello che fate evitate la modifica di MBR e LILO. Ovviamen-
te nulla è irreparabile, ma bisogna perdere un po’ di tempo per ripristinare il precedente
status.

2.3 Avviare Linux

Dopo il primo avvio di Linux compare il programma che consente di effettuare alcu-
ne personalizzazioni del sistema operativo. L’assistente della prima volta prima di tutto
richiede di scegliere l’ambiente grafico predefinito che può essere KDE, Gnome o
qualsiasi altro. Una volta fatta questa scelta possiamo in seguito cambiarla sceglien-
do un altro ambiente nel menu a discesa Tipo di sessione che si trova nella fine-
stra di accesso a Mandrake Linux. La scelta che viene fatta qui influenza l’aspetto che
avranno i file, le finestre e altri oggetti sullo schermo, ma è importante sottolineare
che non avrà alcun effetto sulle funzionalità vere e proprie. Sarete, quindi, in grado di
svolgere le stesse operazioni e usare gli stessi programmi qualunque sia l’ambiente
grafico che scegliete, usare l’uno o l’altro è solo una questione di gusti personali.

L’ambiente grafico predefinito è KDE , ma non abbiate timore di provare le altre possi-
bilità, una volta che avete acquisito familiarità con il sistema. È proprio questo uno dei
grossi vantaggi di Linux e sarebbe un peccato non sfruttarlo!

28
pronti ... via

Il desktop IceWM è forse il più simile a quello di Windows.

L’assistente della prima volta richiede, poi, d’inserire alcuni dati personali, e nel passaggio
successivo di inserire le informazioni necessarie per configurare i programmi di posta elet-
tronica e newsgroup; per compilare i vari campi utilizzare i dati ricevuti dall’Internet provi-
der. Infine, se è disponibile una connessione a Internet, avrete la possibilità di creare un
vostro account MandrakeProfile, che vi consentirà di accedere immediatamente a tutti
i servizi online gratuiti che la MandrakeSoft mette a disposizione dei propri utenti, come
l’assistenza tecnica tramite MandrakeExpert e gli avvisi, gli aggiornamenti personalizzati e
altro da MandrakeOnline. Si consiglia di visitare il sito web MandrakeOnline
(http://www.mandrakeonline.net/) per ulteriori dettagli.

MandrakeOnline.

• Familiarizzare con alcuni termini


La parola sessione indica tutte le attività che hanno luogo a partire dal momento in
cui un utente accede al sistema, fino all’istante in cui egli decide di non volerlo più
usare. L’atto di iniziare una sessione è anche detto login. Fare il login significa in pra-
tica comunicare la propria identità al computer; può essere paragonato a un agente della
29
Capitolo 2

sicurezza che verifica la vostra identità prima di lasciarvi passare. Una volta fatto il login, il
sistema esegue una serie di azioni per permettervi di accedere alle risorse del computer.
Allo stesso modo, la chiusura di una sessione è anche detto logout. Fare il logout signifi-
ca comunicare al sistema che non avete più bisogno di lui; la nostra sessione personale
sarà quindi chiusa, e le risorse che stavamo usando saranno rese disponibili per l’uso da
parte di altri utenti.

La finestra di login per accedere a Mandrake.

Per poter fare il login bisogna conoscere il nome utente e la password che sono
state assegnate al momento della creazione del nostro account. Se avete installa-
to da soli il sistema, allora sarete sicuramente in possesso di queste informazioni.
All’interno della finestra, oltre ad alcune icone che rappresentano gli account degli
utenti esistenti sul sistema, si possono vedere diversi elementi; noi ci concentrere-
mo sui due campi di immissione testo etichettati Nome utente e Password. Può
essere utile sapere, tuttavia, che il pulsante Spegni apre una finestra che permet-
te di spegnere o riavviare il computer, nel caso ve ne sia bisogno. Per fare il login,
cliccare innanzitutto con il tasto sinistro del mouse sull’icona che rappresenta il
nostro account, oppure scrivere semplicemente il nome nel campo Nome utente,
quindi cliccare sul campo Password (o premere il tasto Tab) e digitare la password
dell’account. Infine premere Invio o premere il pulsante Vai! Per accedere al
sistema operativo.

2.4 Gestione della sicurezza

Il sistema di sicurezza di Linux è senza dubbio uno dei più sicuri che ci sono in circo-
lazione, perché eredita le caratteristiche del mondo UNIX, che notoriamente è quasi
immune dalla maggior parte dei virus in circolazione, anche se non dagli attacchi
degli hacker. L’obiettivo di questo libro non è quello di fare una pubblicità dissennata
a Mandrake Linux e, quindi, non lo difenderemo a spada tratta sempre e comunque,

30
pronti ... via

ecco perché siamo costretti a mettere in guardia i lettori nei confronti degli hacker
che, se esperti, sono spesso in grado di violare le difese e di sfruttare le risorse del
PC in maniera illecita. Ciò non toglie che i “buchi” nel sistema di sicurezza di Linux
sono limitati e la maggior parte dei pirati informatici si rivolgono sempre più di fre-
quente al mondo Windows per portare a termine i loro atti illeciti.
Se si desidera garantire l’integrità dei dati nel computer, è necessario non solo pro-
teggere i singoli file e le singole cartelle ma anche adottare le precauzioni più appro-
priate per proteggere fisicamente il computer stesso.
Altre forme di protezione includono il blocco del computer ogni volta che ci si allon-
tana dalla postazione di lavoro e l’impostazione di uno screen saver protetto da pas-
sword. Premendo Ctrl+Alt+Canc e facendo clic su Blocca computer, inoltre, è possi-
bile impedire accessi non autorizzati. Soltanto il proprietario e i membri del gruppo
Administrators di un computer saranno in grado di sbloccarlo. Per farlo, premere
Ctrl+Alt+Canc, digitare la password e quindi fare clic su OK. È inoltre possibile impo-
stare uno screen saver che si attiva automaticamente ogni volta che il computer è
inattivo per un intervallo di tempo superiore a quello specificato, con conseguente
blocco del computer.

• Impostare password anti hacker


La definizione di una nuova password è considerata di solito come un momento antipati-
co e seccante. Questo perché si è costretti a trovare una serie di caratteri che siano allo
stesso tempo facilmente memorizzabili e non così semplici da individuare da parte di terzi.
In altre parole tanto più ci si applica a trovare un algoritmo efficace e tanto minori sono le
possibilità che qualche hacker violi le nostre difese. A questo proposito esistono alcune
regole che aiutano a definire algoritmi molto difficili da individuare. La password per esse-
re sufficientemente sicura deve:
• Includere almeno sette caratteri. A causa delle particolari modalità di crittografia utiliz-
zate per le password, le password più sicure sono quelle contenenti sette o 14 caratte-
ri.
• Contenere caratteri appartenenti ad ognuno dei tre gruppi seguenti: lettere (A, a, B, b,
C, ecc…), numeri (0, 1, 2, 3, ecc…) e simboli ( |, !, %, #, ecc…).
• Contenere almeno un simbolo tra la seconda e la sesta posizione.
• Essere sostanzialmente diversa dalle password precedentemente utilizzate.
• Non contenere il proprio nome o nome utente.
• Non essere un termine o un nome di tipo comune.
Se vengono rispettate le regole appena esposte si può parlare di password avan-
zata.

Le password possono essere il punto più vulnerabile nello schema di protezione del
computer. Se in passato erano necessarie settimane per decifrare una password di rete,
ora è questione di poche ore.

31
Capitolo 2

Esistono hacker specializzati nell’individuazione di password che utilizzano computer sem-


pre più avanzati e potenti e programmi molto sofisticati. In particolare i prodotti software di
decifrazione delle password utilizzano uno dei tre approcci seguenti:
• Tentativi di indovinare le password in maniera intelligente. Vengono fatti tentativi basati
sul nome e cognome dell’utente, sui dati anagrafici e familiari se conosciuti e su tutto
ciò che caratterizza il mondo del proprietario dell’account.
• Attacchi vocabolario. In questo caso l’hacker utilizza veri e propri vocabolari per decifra-
re la password.
• Il metodo automatico con cui viene provata ogni possibile combinazione di caratteri. Se
si dispone di tempo sufficiente, il metodo automatico è in grado di decifrare qualsiasi
password. Per violare una password avanzata possono essere tuttavia necessari diversi
mesi.
Infine ecco alcune comuni precauzioni da adottare per anticipare attacchi non auto-
rizzati.
• Non annotare mai la password.
• Non comunicare mai la password ad altri.
• Non utilizzare mai la propria password di accesso alla rete per altri scopi.
• Utilizzare password diverse per l’accesso alla rete e per l’account root nel proprio com-
puter.
• Cambiare la password con una frequenza compresa tra i 60 e i 90 giorni o
comunque adeguata ai requisiti del proprio specifico ambiente.
• Modificare immediatamente la password se si sospetta che sia stata compromes-
sa.

È inoltre consigliabile prestare attenzione ai contesti in cui si salva la password. In alcu-


ne finestre di dialogo, ad esempio quelle per l’accesso remoto e altre connessioni telefo-
niche, è presente un’opzione che consente di salvare o ricordare la password. Non sele-
zionare mai tale opzione.

• Incrementare la sicurezza di Mandrake


Esiste un’interfaccia grafica chiamata draksec che serve a cambiare il livello di sicurezza
del sistema operativo. Si può accedere a draksec o da una sessione root di termi-
nale digitando proprio draksec oppure eseguendo il Mandrake Control Center
e facendo clic sull’icona Livello di sicurezza all’interno della sezione Sicurezza.
Le impostazioni che qui si trovano sono tali da permetterci di scegliere il livello di
sicurezza tramite una lista a discesa e indicare il livello più adeguato per noi (il
default è standard).
A questo proposito leggere nella guida quali sono le caratteristiche di ciascuna
impostazione. È anche possibile indicare nel campo Security Administrator l’indi-
rizzo email della persona che riceverà la segnalazione dei problemi di sicurezza. In
questo caso abilitare l’opzione Security Alerts per inviare automaticamente una

32
pronti ... via

mail al security administrator nel caso di problemi rilevati dall’utility MSEC che è
sempre in esecuzione. È, infine, possibile accedere ad un’ulteriore schermata per per-
sonalizzazioni più avanzate, dedicate, però, ai soli utenti esperti.

La schermata per incrementare la sicurezza.

• Un firewall per proteggersi


Sempre nella sezione sicurezza del Mandrake Control Center è possibile attivare
Tinyfirewall per proteggere il nostro PC durante le connessioni su Internet. È sicu-
ramente una buona idea utilizzarlo subito dopo aver installato il sistema e prima di
connettersi a Internet, in questo modo il rischio che la macchina venga compromes-
sa da qualche malintenzionato si riduce notevolmente.

La funzione di un firewall è quella di filtrare i tentativi di connessione fatti dall’esterno, e


di bloccare quelli non autorizzati.

Un firewall (o bastione) è una combinazione hardware e/o software che implementa


un sistema di protezione utilizzato in genere per impedire accessi non autorizzati dal-
l’esterno in una rete interna o Intranet. Un firewall impedisce la comunicazione diret-
ta tra rete e computer esterni instradando le comunicazioni attraverso un server
proxy esterno alla rete. Il server proxy determina se è opportuno lasciar passare un
file attraverso la rete. Un firewall viene anche denominato gateway a protezione avan-
zata. Tinyfirewall è ovviamente basato su una protezione software, ma nella maggior
parte delle aziende esistono ormai da anni computer che hanno come unica funzio-
ne quella di difendere le LAN interne.

33
Capitolo 2

Accesso al Tinyfirewall di Mandrake Linux.

Per impostare il livello di protezione del firewall di Mandrake si deve semplicemente clic-
care sulle caselle corrispondenti ai servizi che si vogliono rendere disponibili al mondo
esterno. Ogni servizio corrisponde ad una “porta” di accesso al sistema attraverso la quale
è possibile trasferire determinati dati verso il computer stesso. Più porte sono aperte e più
aumentano le probabilità di subire attacchi da parte di hacker. Il pulsante AVANZATE per-
mette di definire manualmente il numero di porta da aprire o da chiudere. Nel caso non
sia stato installato in precedenza fare clic sull’icona Firewall della categoria Sicurezza del
Mandrake Control Center e seguire le istruzioni visualizzate a video. Tenere sotto mano i
CD d’installazione perché verranno richiesti per procedere.

• La sicurezza su Internet
Il sito di MandrakeSoft sulla sicurezza per eccellenza è http://www.mandrakesecu-
re.net/, che si occupa delle vulnerabilità dei pacchetti, ma contiene soprattutto esau-
rienti articoli su una vasta gamma di argomenti, come l’uso di GnuPG , di SSH , e
altro. Un sito molto ben organizzato che contiene approfondimenti sui diversi tipi di
attacchi e fornisce informazioni sulla vulnerabilità di una notevole quantità di prodot-
ti, incluso Mandrake Linux è http://www.securityfocus.com/ Esiste anche un sito, inte-
ramente dedicato a Linux, che contiene notizie, avvisi, newsletter e molte altre risor-
se, come documentazione, forum, strumenti utili, ecc. http://www.linuxsecurity.com/
Infine http://docs.linux.com/enhance/ è un sito veramente eccellente, aggiornato
regolarmente con numerosi articoli sugli attuali problemi di sicurezza. Nella pagina
principale di Linux.com (http://www.linux.com/) trovate anche articoli riguardanti il
desktop, l’audio, ecc.

34
pronti ... via

2.5 Profili utente multipli

Mandrake Linux è un sistema operativo multiutente, in quanto consente a più uten-


ti di accedere al sistema e di mantenere separati i propri file e anche le persona-
lizzazioni che vengono effettuate nell’ambiente di lavoro. L’utente che ha diritti di
amministrazione si chiama root e può fare qualsiasi attività all’interno del sistema
operativo, compresa la gestione (creazione, aggiornamento e cancellazione) di
altri utenti, la gestione dei diritti di accesso ai file, applicare patch di sistema,
ricompilare il kernel di Linux, l’accesso al Mandrake Control Center ed altro anco-
ra. La gestione degli utenti viene fatta molto semplicemente con il programma
userdrake attivabile anche da una sessione terminale. Solo root può eseguire
questa applicazione che, una volta lanciata, mostra tutti gli utenti e i gruppi pre-
senti nel sistema. Alternativamente eseguire il Mandrake Control Center, sele-
zionare la categoria Sicurezza e fare clic sull’icona Firewall.

Il concetto di gruppo coincide con un raggruppamento di utenti, creato per condividere


hardware (stampanti, unità CD, ecc.), cartelle e file specifici.

• Gestione degli utenti


Per aggiungere un nuovo utente utilizzare il pulsante Aggiungi, per modificarlo
Modifica ed infine per cancellarlo Rimuovi. Solo dopo avere premuto il pulsante
Salva le modifiche sono rese effettive nel sistema operativo. Quando si crea un
nuovo utente devono essere specificati i seguenti elementi:
• Nome utente per fare il login.
• UID, ossia identificatore univoco dell’utente. È un numero che deve essere superio-
re a 500, in quanto tutti gli utenti con UID inferiore a 500 non sono reali e sono
riservati al sistema operativo.
• Un commento che potrebbe identificare il motivo per cui si crea quell’utente.
• Il tipo di shell che viene aperta tutte le volte che si accede ad una sessione termina-
le.
• La home directory, ossia la directory di appartenenza dell’utente. Quando l’utente
apre una sessione terminale sarà proprio quella directory che viene visualizzata per
default e lo stesso accade quando si cerca di salvare un file da qualsiasi applicazione.
Una home directory potrebbe essere /home/ebottari ed è questa la directory radice per
l’utente in questione dove potrà creare sotto directory o salvare file.
• La password per accedere al sistema. Questo valore deve essere digitato due volte
per verifica.
• Infine è necessario indicare a quale gruppo o a quale gruppi appartiene l’utente. La
lista disponibile sulla destra della scheda gruppi agevola questa operazione.

35
Capitolo 2

Il programma userdrake.

ATTENZIONE a cancellare un utente senza avere salvato i file che si trovano nella sua home
directory! La sua rimozione determina la perdita di tutte le sue cartelle e i suoi file.

In userdrake selezionando IMPOSTAZIONI Preferenze si attiva una finestra di dialogo


che permette di definire i valori predefiniti degli utenti. La finestra contiene tre sche-
de. La prima può essere usata per impostare i parametri predefiniti per i nuovi uten-
ti che vengono creati per mezzo di userdrake.

La scheda Generale delle Impostazioni di userdrake.

Attivando l’opzione Modifica gli account in una directory LDAP potrete spostare la
gestione degli utenti dal database locale a un server LDAP, che è un server esterno
che si occupa in maniera specifica della gestione degli utenti. Prima, comunque,
dovrete configurare il server LDAP. L’opzione Attiva il supporto per autologin serve,
invece, per fare a meno del login grafico dopo aver avviato il computer, e permette a
uno specifico utente di effettuare automaticamente il login senza doversi autenticare

36
pronti ... via

(ovvero digitare nome utente e password). Dopo aver cliccato sulla casella, selezio-
nate l’utente che potrà sfruttare questa caratteristica e scegliete l’ambiente da utiliz-
zare selezionando la voce di menu Azioni+Autologin dell’utente.

Eliminare l’autenticazione via login ha senso soltanto se non si ha motivo di temere che
altre persone usino il computer e accedano ai file.

La scheda successiva, Vista utenti, permette di scegliere i campi da mostrare nell’elen-


co degli utenti. Dovete semplicemente disattivare il pulsante d’opzione associato ai campi
che non vi interessano. La scheda Vista gruppi è simile alla precedente, ma riguarda la
lista dei gruppi.

2.6 Il pulsante Avvia applicazione

Siamo arrivati alla descrizione del menu principale di Mandrake Linux. Dal pulsante
Avvia applicazione, infatti, si aprono tutte le schermate grafiche presenti nel sistema
operativo ed è possibile lanciare qualsiasi applicazione. In KDE questo pulsante è
posizionato in basso a sinistra, altrimenti, nel caso di Gnome, si trova in alto a sinistra.

Il pulsante Avvia applicazione sotto KDE.

2.7 Un desktop tuttofare

Una novità strabiliante per i neofiti di Linux e delle interfacce X-Window è il desk-
top multiplo che consente di avere più scrivanie di lavoro su cui posizionare icone
e fare personalizzazioni. Ad esempio si potrebbe decidere di utilizzare un desk-
top per i giochi, un altro per le applicazioni scientifiche, un altro ancora per il
mondo Office e così via. Il numero predefinito di desktop è quattro, ma si può
arrivare fino a sedici scrivanie virtuali. Per modificare il valore di default fare clic
sulla barra dei desktop e, dopo avere selezionato la voce Preferenze, scegliere
37
Capitolo 2

un numero da 1 a 16 e poi fare clic sul pulsante OK.


Il nome predefinito di ogni desktop virtuale è Desktop N, dove N è il numero del
desktop. Per dare ai desktop nomi più significativi cliccate con il tasto destro del
mouse sulla barra dei desktop e selezionate Preferenze... dal menu di riepilogo.
Quindi cliccate sul campo di testo relativo al desktop di cui volete cambiare il nome
e digitate quello nuovo. Cliccando su Applica le vostre modifiche avranno effetto
immediato. Una volta soddisfatti delle nuove impostazioni cliccate su OK.

Modifica del numero dei desktop a disposizione.

Lo spostamento da un desktop all’altra avviene scegliendo sulla barra dei desktop


quello che interessa tramite clic con il mouse.

• Modificare l’aspetto del desktop di KDE


Per cambiare lo schema di colori del desktop, selezionare K Centro di control-
lo e fare clic sulla sezione Aspetto, poi sulla sottosezione Colori. Nella lista dal
nome Schema di colori sono visibili un certo numero di schemi di colori prede-
finiti, scegliere quello che si preferisce e cliccare su Applica per rendere imme-
diatamente effettiva la scelta.
Si può anche definire uno schema di colori personalizzato: cliccare sull’elemento
di cui volete cambiare il colore (ad esempio Finestra attiva per cambiare i colori
della finestra attiva), oppure selezionare nella lista a discesa Colore dell’elemen-
to grafico. Una volta selezionato l’elemento, cliccare sulla barra dei colori per
aprire la finestra di selezione colori di KDE, scegliere il colore che si preferisce e
cliccare su OK per applicare quel colore all’elemento specificato.
Cliccando su Salva lo schema... si può salvare lo schema di colori in modo da
poterlo riutilizzare.

38
pronti ... via

Personalizzazione dei colori del desktop.

Per cambiare lo sfondo del desktop selezionare K Centro di controllo e fare clic
sulla sezione Aspetto, sottosezione Sfondo. Qui si possono cambiare i colori
dello sfondo: nella lista a discesa Modalità si possono selezionare opzioni di colo-
re che vanno da Tinta unita (un semplice sfondo basato su un unico colore) a vari
tipi di gradienti (sfondo di colori “mescolati”). Nella scheda Immagine di sfondo si
può scegliere di utilizzare un’immagine come sfondo del desktop: nella lista a
discesa Modalità è possibile specificare se l’immagine debba essere scalata, ripe-
tuta, centrata, etc. La lista Immagine di sfondo permette di scegliere fra alcune
immagini predefinite; cliccate invece sul pulsante Sfoglia per selezionare un’im-
magine per mezzo di una finestra di selezione file standard di KDE. La scheda
Avanzate, infine, è riservata alla configurazione di impostazioni avanzate come la
sfumatura, la dimensione della memoria cache riservata alle immagini, etc.

Dove cambiare lo sfondo del desktop.

Aggiungere un’icona al desktop è molto semplice: cliccare sullo sfondo, comparirà un


menu in cui si deve scegliere Crea nuovo. Nel menu successivo scegliere il tipo di
oggetto da creare sul desktop:
• Directory... crea una nuova cartella sul desktop, al suo interno si possono archiviare file
come in una qualunque altra cartella del sistema.
39
Capitolo 2

• Collegamento ad un’applicazione... crea un’icona di “avvio applicazione”. Quando


cliccate su di essa, l’applicazione verrà lanciata in esecuzione come se selezionata da
un menu o digitata dalla linea di comando. Utilizzare questa caratteristica per avere
immediatamente disponibili sul desktop le applicazioni che si usano di più.
• Collegamento ad un indirizzo (URL)... crea un’icona che permette di accedere
direttamente a un URL (tipicamente una pagina HTML o un sito web). Utilizzare que-
st’opzione per aggiungere al desktop le icone dei siti che vengono visitate più di fre-
quente.

2.8 Il Mandrake Control Center

Lo strumento principe per modificare l’aspetto e il funzionamento di Linux Man-


drake è il Mandrake Control Center. Alcuni degli strumenti in esso contenuti
consentono di modificare le impostazioni rendendo più piacevole l’utilizzo del
computer; altri consentono di configurare Linux in modo da semplificare l’utilizzo
del computer. Per aprire Mandrake Control Center, fare clic sull’icona presente
sulla barra delle applicazioni (o digitare drakconf in una sessione terminale) e
quindi immettere la password di root, che è l’unico utente abilitato a lavorare con
questo strumento.
All’apertura del Mandrake Control Center vengono visualizzati alcuni degli ele-
menti di uso più comune suddivisi in sette categorie. Per ulteriori informazioni su
un oggetto del Mandrake Control Center posizionare il puntatore del mouse sul-
l’icona o sul nome della categoria e leggere il testo visualizzato. Per aprire uno di
questi oggetti, fare clic sulla relativa icona o sul nome della categoria.

Il Mandrake Control Center appena avviato.

• Avvio
Questa categoria serve a:
1. Creare un disco di avvio.
2. Configurare l’avvio di Mandrake Linux.
3. Definire un’installazione automatica.
Cominciamo con la creazione del disco di avvio, che come accennato in precedenza
serve a garantire la possibilità di accesso a Linux, anche se il bootloader non è stato instal-

40
pronti ... via

lato o se, per errore, è stato cancellato. Per procedere in questo senso fare clic su Disco
di avvio e poi inserire un floppy vuoto nel lettore del PC e fare clic sul pulsante Crea il
disco. I campi dispositivo e versione del kernel non dovrebbero essere modificati. L’unica
eccezione riguarda il primo se abbiamo più di un lettore per floppy sul nostro PC. In que-
sto caso se il dischetto è stato inserito nel secondo lettore, la cosiddetta unità B, imposta-
re /dev/fd1 al posto di /dev/fd0.

Creazione del floppy di avvio.

Tramite la seconda icona della categoria Avvio, Configurazione di avvio, è possibi-


le modificare la configurazione di avvio del sistema all’interno di tre sezioni. In Modo
LILO/GRUB è possibile cambiare la modalità di boot del sistema facendo clic sul pul-
sante Configura e procedendo come segue:
• Nel campo Bootloader da usare scegliere se attivare il boot in modalità testo o gra-
fica facendo clic su LILO con menu grafico oppure LILO con menu in modo testo. Qui
è anche possibile cambiare il bootloader da LILO a Grub.
• Nel campo Dispositivo di boot è possibile modificare il disco di avvio del sistema ope-
rativo. Solitamente non c’è alcuna necessità per fare ciò.
• Infine il campo Ritardo prima di avviare con l’immagine predefinita individua il
ritardo in secondi che trascorre prima di fare partire il sistema operativo di default.
Successivamente è possibile scegliere le caratteristiche grafiche della schermata di avvio,
nella sezione Splash selection. Infine in Modo sistema si può decidere:
• Se lanciare l’interfaccia grafica (sistema X Window) direttamente all’avvio di Mandrake
oppure no.
• Se impostare un login automatico. In questo caso non viene richiesta la password e il
sistema si autentica direttamente con l’utente non amministrativo definito nel campo
apposito e con il desktop selezionato.

41
Capitolo 2

Le impostazioni della Configurazione di avvio.

Infine la definizione di un’installazione automatica permette ad un amministrato-


re di effettuare facilmente installazioni multiple di Mandrake in maniera automa-
tica mantenendo le stesse identiche impostazioni che sono state definite sulla
macchina attuale. Dopo avere fatto clic su Installazione automatica, compare
una lista che comprende quasi tutti i passi dell’installazione. Ciascun passo è
associato a due voci di menu tra cui scegliere:
• replay (ripeti): scegliere quest’opzione se desiderate riutilizzare le scelte fatte
durante l’installazione manuale anche per l’installazione automatica.
• manual (manuale): scegliere questa, invece, se preferite riconfigurare questo
passo per l’installazione automatica.
Una volta ultimate le precedenti impostazioni fare clic sul pulsante OK. Viene chiesto di
inserire un dischetto vuoto nel lettore (eventuali dati sul floppy verranno cancellati). Dopo
avere cliccato di nuovo su OK, viene creato un dischetto di avvio con le seguenti caratte-
ristiche:
1. Il metodo di installazione (da CD-ROM, via NFS, FTP, etc.) è lo stesso utilizzato durante
l’installazione sulla macchina attuale.
2. Tutti i passi marcati con replay verranno ripetuti con le opzioni di configurazione utilizza-
te durante l’installazione sulla macchina attuale.
3. Tutti i passi marcati con manuale dovranno essere configurati a mano al momento del-
l’installazione.
4. Le operazioni di partizionamento e formattazione dovranno sempre essere ese-
guite manualmente per motivi di sicurezza.

Una volta creato il floppy contenente le impostazioni standard, tutto quello che bisogna
fare è inserirlo in una delle macchine sulle quali si vuole replicare l’installazione, accen-
derla e seguire le istruzioni: i tempi d’installazione risulteranno ridotti notevolmente.

• Hardware
Questa categoria permette di visualizzare e, in alcuni casi, anche modificare le impostazio-
ni relative all’hardware installato sul nostro PC.
42
pronti ... via

Quando viene fatta una modifica ad un’impostazione viene richiesto di uscire e rientrare
dalla sessione corrente per renderla effettiva.
Lista hardware non fa altro che analizzare tutte le periferiche di sistema e visualizzarle
una ad una. Facendo clic sui vari componenti viene aperta un finestra di dialogo conte-
nente ulteriori dettagli.
Monitor permette di modificare il modello del monitor. È utile soprattutto se dopo l’instal-
lazione si è provveduto a sostituire il monitor.
Risoluzione fornisce le opzioni per modificare il grado di risoluzione dello schermo e il
numero di colori visualizzati.
Configurazione grafica del server. La seconda e la terza icona sono una duplicazio-
ne delle precedenti due appena descritte. La prima, invece, permette d’impostare la
scheda grafica corrente. L’icona Test è importante perché permette di testare le modi-
fiche effettuate. Si tratta di una verifica da fare sempre per evitare brutte sorprese al suc-
cessivo avvio del sistema. Infine in Opzioni si definisce se eseguire in partenza X Window
oppure no.
Schede TV è ovviamente dedicata all’individuazione e impostazione delle schede
per visualizzare la televisione sul PC.
Tastiera serve a definire la tastiera corrente.
Mouse è la sezione dedicata al tipo di mouse.
Stampante individua automaticamente le stampanti disponibili e consente di
aggiungerne altre tramite un assistente di configurazione. In particolare il pulsan-
te Aggiungi nuova stampante consente proprio di attivare l’assistente e di
verificare se ci sono stampanti disponibili sulla rete o collegate direttamente al PC.
Se si accede in Modo Esperto è possibile sfruttare tre caratteristiche in più rispet-
to al Modo Normale:
1. Passaggio da un sistema di stampa a un altro. Si può effettuare questa operazione
cliccando sul nuovo pulsante Configura sistema di stampa che comparirà nel
menu principale. Sono disponibili due sistemi di stampa: CUPS (quello predefinito)
e PDQ.
2. Scelta di un driver diverso da quello predefinito per una stampante. Normalmen-
te per una stessa stampante sono disponibili più driver. Se ci si trova in modo
esperto, comparirà un terzo livello nella lista di selezione del modello che per-
mette di cambiare il driver di ogni stampante.
3. Installazione di una stampante remota. Grazie a questa caratteristica si può stam-
pare usando stampanti remote che possono trovarsi ovunque all’interno di una
rete locale.
Scanner serve a rilevare e configurare periferiche di questo tipo.

43
Capitolo 2

Le icone della categoria hardware.

• Punti di mount
Questa categoria contiene una serie di programmi di utilità molto potenti che devono
essere utilizzati con estrema cautela o addirittura evitati se non si è sufficientemente esper-
ti in materia. Analizziamone i vari componenti. Dischi fissi non fa altro che attivare il pro-
gramma DiskDrake a cui abbiamo fatto cenno nel primo paragrafo di questo capitolo
dedicato alla fase d’installazione di Mandrake Linux. Dischi fissi è un’utilità di sistema per la
gestione dei dischi rigidi e delle partizioni che permette d’inizializzare dischi, creare parti-
zioni e formattare partizioni con il file system di Linux.

La partizione è una parte di un disco fisico che funziona come se fosse un’unità disco
separata fisicamente. Dopo la creazione di una partizione, è necessario formattarla e
farne il mount su una directory creata sul file system, prima di poter procedere all’ar-
chiviazione dei dati.

Prima di effettuare qualsiasi cambiamento all’interno di Dischi fissi procedere al sal-


vataggio di tutti i propri dati.

La struttura di un disco rigido con le varie partizioni.

44
pronti ... via

La finestra principale di DiskDrake è divisa in quattro parti.


1. In alto è visibile la struttura del disco rigido. Quando si lancia DiskDrake viene
mostrata la struttura attuale del disco rigido selezionato (ad esempio hdb), che
verrà aggiornata in tempo reale man mano che si modificano le partizioni in esso
contenute.

ATTENZIONE. Le modifiche non saranno effettivamente apportate sul disco fino al


momento in cui non si fa clic sul pulsante Fatto.

2. A sinistra si può vedere un menu che si applica alla partizione selezionata attual-
mente sul disco rigido corrente.
3. A destra sono riportate alcune informazioni utili sulla partizione selezionata.
4. In basso si trovano dei pulsanti che permettono di effettuare azioni di tipo genera-
le. Notare che il pulsante Passa a modo Esperto permette di accedere a fun-
zioni dedicate a personale ancora più competente.
Il secondo gruppo di programmi di utilità presente in Punti di mount riguarda la cosid-
detta gestione dei dispositivi rimovibili: DVD, Masterizzatore CD e Floppy. Facen-
do clic su una qualsiasi delle icone corrispondenti vengono visualizzati i valori di cia-
scun dispositivo, che possono essere modificati selezionando l’opzione di riferimen-
to, facendo clic su OK e dopo la modifica cliccando ancora sul pulsante OK. I valori
modificabili sono:
1. Punto di mount, che corrisponde al nome del file system che viene montato sul
dispositivo.
2. Opzioni. Se si specifica l’opzione user significa che il dispositivo può essere modifica-
to da un utente non amministrativo, se si fa clic su supermount significa che il dispo-
sitivo deve montarsi automaticamente alla partenza di Mandrake ed, infine, se si sceglie
noauto il dispositivo può essere montato solo esplicitamente (all’avvio del sistema,
infatti, non avviene il mount automatico).
3. Tipo, che indica il tipo di file system che si vuole montare. Specificare auto per indica-
re che è Linux a gestirlo automaticamente, vfat per indicare la FAT e ntfs per il NTFS di
Windows.
Anche in questo caso solo dopo avere scelto Fatto e fatto clic su OK si ottiene l’ag-
giornamento del sistema.

I punti di mount appena descritti vengono scritti nel file /etc/fstab che viene illustrato nel
dettaglio nel sesto capitolo.

45
Capitolo 2

Le opzioni relative ai dispositivi rimovibili.

Le icone Punti di mount NFS, Punti di mount Samba e Punti di mount


WebDAV permettono all’amministratore di sistema d’importare sulla macchina
locale directory remote condivise. Per potere fare questa operazione è, però,
necessario che su quelle macchine sia stato definito, tramite l’icona Condivi-
sione della partizione, uno o più file system condivisi. La condivisione in
ambiente di rete di file system può avvenire utilizzando protocolli differenti. In
particolare NFS consente di interagire con altre macchine Linux o UNIX, mentre
Samba, che tratteremo nel sesto capitolo, con macchine Windows.

• Rete & Internet


Questa categoria è dedicata ad Internet e qui tramite la prima icona, Connes-
sione, è possibile configurare o modificare la connessione ad Internet. Esami-
niamo il significato dei vari campi presenti nella finestra di dialogo. Il campo Pro-
filo permette di creare differenti profili per accedere ad Internet. Questa fun-
zionalità è molto utile soprattutto se si utilizza un computer portatile, che viene
utilizzato in contesti diversi.
Ad esempio può essere necessario creare un profilo per accedere ad Internet
tramite un certo provider oppure tramite la LAN aziendale. Il pulsante Cancella
profilo serve ad eliminare il profilo selezionato, mentre Nuovo profilo a crearne
uno nuovo che deve, poi, essere configurato tramite l’assistente.

Il profilo che viene impostato nella casella di riepilogo “Profilo” (e salvato con il pulsante
Applica o OK) è quello che viene considerato predefinito e al quale il programma di con-
nessione di Linux cerca di connettersi per default.

Nella sezione Accesso ad Internet vengono evidenziati alcune informazioni


relative al profilo corrente e sono disponibili il pulsante Disconnetti o Connetti a
seconda che la connessione sia già stata attivata oppure no.

46
pronti ... via

La sezione successiva Configurazione LAN riporta i dati relativi all’interfaccia


di rete (scheda) se presente nel sistema.
I pulsanti Applica, Annulla e OK hanno il solito significato, mentre Modo Esper-
to configura l’accesso ad Internet manualmente senza l’assistente automatico
che descriviamo di seguito.

La connessione ad Internet.

Non appena viene fatto clic sul pulsante Assistente si deve scegliere il profilo da
configurare e utilizzare il riconoscimento automatico oppure no. Si consiglia di sce-
gliere sempre il riconoscimento automatico, che è anche l’impostazione di default.

L’assistente per la connessione ad Internet può anche essere lanciato direttamente log-
gandosi come root in una sessione terminale e digitando drakconnect.

Dopo avere premuto Avanti, se il modem è acceso o se siete connessi ad una


LAN, vengono visualizzati i dati relativi al tipo di connessione da configurare. Se,
ad esempio, possedete un normale modem l’assistente dovrebbe dire in auto-
matico su quale porta si trova, se questo non accade saremo noi a doverlo spe-
cificare nella schermata successiva.
Se si dispone di più connessioni, ad esempio anche ADSL e/o ISDN, e non sono
state identificate, è opportuno selezionarle manualmente per poi configurarle
successivamente. Nella schermata Opzioni di chiamata impostare i seguenti
dati:
• Nome connessione: digitare il nome del provider così sapremo sempre a che for-
nitore del servizio ci stiamo collegando.
• Numero telefonico: è il numero di connessione che è stato fornito dal provider
e che, solitamente, cambia da città a città.
• ID di accesso: impostare il nome utente che è stato creato dal nostro ISP (Inter-
net Service Provider).
• Password: la password abbinata al nostro nome utente.

47
Capitolo 2

• Autenticazione: lasciare il default PAP.


• Nome dominio: si tratta del nome del dominio del nostro fornitore (ad es. tisca-
linet.it o inwind.it o tele2.it, ecc.).
• Primo server DNS e secondo server DNS: sono campi non obbligatori ma da
impostare se abbiamo le relative informazioni.

L’Assistente per configurare una connessione ad Internet.

Al termine possiamo decidere di provare subito la connessione ad Internet per vedere se


tutto funziona correttamente. In ogni caso per connettersi ad Internet utilizzare sempre il
programma kppp, lanciandolo da una sessione terminale oppure facendo clic sul pul-
sante K Rete Accesso remoto e scegliendo la voce KPPP (Internet Dial-up Tool). L’i-
cona Configurazione del proxy permette l’impostazione di un server proxy per con-
nessioni http e FTP. Nel caso di una piccola rete o di un PC domestico è l’ISP che dovreb-
be fornire il nome o l’indirizzo IP corretto da digitare in questo punto.

La funzione del server proxy è quella di firewall e come tale fornisce una barriera di pro-
tezione tra la rete Intranet e Internet, impedendo agli utenti connessi a Internet di acce-
dere a informazioni riservate sulla rete interna o sul proprio computer.

Infine l’icona Condivisione della connessione permette di rendere condivisa e


quindi accessibile da altri utenti della stessa rete la connessione ad Internet. Questa
operazione può essere effettuata solo in ambiente di rete.

• Sicurezza
Questa categoria è molto importante perché consente d’incrementare il livello di
sicurezza del nostro sistema operativo. Si rimanda al precedente paragrafo 2.4
Gestione della sicurezza per la trattazione di questo aspetto.

48
pronti ... via

• Sistema
Questa sezione del Mandrake Control Center consente di visualizzare e configu-
rare moltissime impostazioni che sono state definite in fase d’installazione, ad
esempio i menu, i servizi di sistema e la creazione degli utenti.
Facendo clic sulla sezione Menu si accede al programma di personalizzazione del
menu principale di Mandrake Linux.
Come al solito quest’applicazione può essere lanciata da una sessione terminale
digitandone il nome, ossia menudrake. Se si entra come root vengono rese
disponibili due opzioni, la prima Menu di sistema serve a configurare il menu di
tutti gli utenti della macchina, mentre la seconda Menu utente serve a modifi-
care solo il menu di root ossia il cosiddetto menu radice. Ovviamente se menu-
drake viene lanciato da un utente non amministrativo sarà solo possibile modifi-
care il menu corrente.

Menudrake non è in grado di agire solo sul menu dell’ambiente grafico corrente (ad es.
KDE o Gnome) ma su tutti quanti garantendo una coerenza di base tra di essi. In que-
sto caso scegliere la prima voce del menu Ambiente.

Il programma menudrake per la personalizzazione dei menu.

Dopo avere fatto clic sul pulsante configurazione compare menudrake che sulla
destra visualizza tutte le voci di menu mentre sulla sinistra i dettagli che posso-
no essere personalizzati: Titolo, Titolo lungo e Comando che viene lanciato
se si fa clic su quella voce di menu.
Esaminiamo ora la barra degli strumenti di menudrake. L’icona Stile del menu
serve a personalizzare il menu che può, quindi, essere differente da utente ad
utente. In particolare esistono quattro opzioni disponibili:
1. Applica le impostazioni dell’amministratore di sistema. Se avete lan-
ciato menudrake come utente normale, potete scegliere di configurare il

49
Capitolo 2

vostro menu personale in base al menu di sistema preparato dall’amministra-


tore di sistema.
2. Tutte le applicazioni. Questo è il menu tradizionale incluso nella distribuzione
Mandrake Linux che contiene tutte le applicazioni, suddivise in categorie funziona-
li.
3. Cosa vuoi fare? Questo è un menu configurato specificamente per curare l’er-
gonomia, il suo obiettivo è quello di offrire un accesso rapido alle applicazioni usate
più di frequente, suddivise in categorie quali Giocare, Usa Internet, eccetera.
4. Menu originale. Questi sono i menu originali offerti dagli ambienti KDE o Gnome.
Probabilmente alcune applicazioni non sono presenti.
Per quanto riguarda il secondo e il terzo stile, si noti che è possibile attivare un sot-
tomenu che punti all’altro cliccando sulla casella Aggiungi collegamento. Grazie a
questa opzione è possibile accedere alle voci dell’altro menu da quello principale, in
tal modo si è sicuri che tutte le applicazioni sono disponibili.
L’icona Salva serve a salvare le modifiche apportate al menu.
Le icone Aggiungi directory e Aggiungi voce servono rispettivamente a creare una
voce principale di menu (per intenderci una di quelle che si vedono subito dopo avere
fatto clic sul pulsante di avvio) e ad aggiungere una voce all’interno di una voce principa-
le. Per cancellare una voce di menu o un menu principale selezionarla e fare clic sull’i-
cona Cancella.
La sezione Servizi della categoria Sistema visualizza la lista dei processi che vengo-
no attivati all’avvio del sistema, ad esempio smb (Samba) per mappare directory Win-
dows o sound per caricare il componente che si occupa dell’audio.
Nella finestra di dialogo è possibile avere informazioni sul servizio, attivarlo se non è
già in esecuzione, fermarlo e decidere se farlo attivare automaticamente all’avvio
oppure no. La sezione Font è quelle dedicata ai tipi di carattere presenti nel sistema ope-
rativo. Qui si possono cancellare font non più utili o aggiungerne altri che provengono da
altre fonti. In particolare se sullo stesso PC è installato anche Windows potrebbe essere
utile utilizzare il pulsante Prendi i font di Windows per scaricarli automaticamente dalla
partizione Windows.
La sezione Data e ora è ovviamente dedicata all’impostazione della data e dell’ora
di sistema. È possibile variare la data, sulla sinistra, e l’ora, più a destra:
• Per cambiare l’anno, cliccare sulle piccole frecce ai lati dell’anno.
• Per cambiare il mese, cliccare sulle piccole frecce ai lati del mese.
• Si consiglia di controllare che le impostazioni del fuso orario siano corrette in rela-
zione all’area geografica in cui vivete. Cliccare sul pulsante Fuso Orario e sele-
zionate la località corretta nella lista ad albero che comparirà.
• Per cambiare l’ora, potete muovere le lancette relative a ora, minuti e secondi del-
l’orologio analogico oppure cambiare i numeri corrispondenti, più in basso.
Come al solito cliccare su OK per rendere effettive le modifiche, oppure su Annulla
per uscire dal programma e abbandonare le modifiche. Se si vuole ritornare alla con-
figurazione precedente, cliccate su Ripristina.
50
pronti ... via

Modificare la data e l’ora di sistema.

La sezione File di log è utile per analizzare i messaggi che il sistema operativo registra
mano a mano che vengono effettuatea le varie operazioni. È importante soprattutto quan-
do c’è qualche componente che non sta funzionando e bisogna fare delle indagini per
sapere se uno o più servizi non sono stati caricati correttamente in fase di avvio. In parti-
colare sono presenti differenti log che possono essere analizzati:
• Quelli che riguardano la fase di Autenticazione e cioè il login dell’utente nel
sistema.
• I cosiddetti Messaggi, dove vengono registrate numerose situazioni anomale in
tempo reale. Se una sessione si è concluso in maniera scorretta qui possiamo
vedere quali sono le ultime operazioni che sono state registrate.
• Syslog, che è il classico log di sistema. Qui vengono registrati tutti i test fatti sui
dischi e il risultato dell’utility fsck che, come vedremo più avanti, controlla e cor-
regge eventuali errori sul file system.
• Utente, che riguarda essenzialmente tutte le operazioni strettamente connesse
all’utente corrente.
• Infine le Spiegazioni relative agli strumenti Mandrake è un log che tiene
traccia di tutte le applicazioni di sistema di Mandrake Linux che vengono eseguite.
La sezione Console permette di visualizzare la console di sistema e corrisponde al
programma che appare facendo clic su K Terminali e poi, dopo avere selezionato
Console – modalità per super utente (Terminal Program), digitare la password
di root.
La sezione Utenti riguarda la gestione degli utenti ed è già stata esaminata nel para-
grafo 2.5 Profili utente multipli.
La sezione Scheduling dei programmi riguarda la pianificazione di operazioni nel
corso del tempo. In effetti questo scheduler viene utilizzato quando si devono ese-
guire dei programmi ripetutamente nel tempo ad orari prestabiliti o un comando una
tantum. Un caso classico è il backup di alcuni file che, magari, si vuole eseguire tutti
51
Capitolo 2

i giorni ad una determinata ora. L’applicazione corrispondente, esguibile da una ses-


sione terminale, è drakcronat. Per creare un nuovo task da eseguire nel corso
del tempo scegliere nel campo User l’utente che deve eseguire l’operazione, fare
clic sul pulsante Add inserire ora, minuto, mese, giorno della settimana e del
mese ed infine impostare il comando nell’apposito campo. Questo scheduler non
è altro che l’interfaccia grafica di due comandi crontab e at, che permettono
rispettivamente di pianificare operazioni da ripetere nel tempo o operazioni da
eseguire una sola volta (ad esempio un promemoria).

L’autore, considerandoli più affidabili e più amichevoli, preferisce utilizzare direttamente i


comandi crontab e at e rimanda al capitolo sesto, paragrafo 6.3 per esaminare il loro
utilizzo direttamente dal prompt di una sessione terminale.

Infine la sezione Copie di backup permette di salvare i file che riteniamo impor-
tanti e che non vogliamo rischiare di perdere. Il supporto su cui salvare dovrebbe
essere esterno al sistema, come CD, cassette o floppy.
Non ha certamente senso salvare le informazioni su un’altra directory dello stes-
so disco! Se abbiamo più di un disco, però, non è sbagliato utilizzare un disco
come supporto di backup. L’applicazione corrispondente, eseguibile da una ses-
sione terminale, è drakbackup.
Per effettuare il backup è possibile procedere come segue:
• Fare clic sul pulsante Configurazione avanzata.
• Fare clic sul pulsante Cosa.
• Fare clic sul pulsante Sistema, selezionare le prime due opzioni relative ai file di
sistema e all’utilizzo dei backup incrementali e confermare facendo clic su Salva.
• Fare clic sul pulsante Utenti, selezionare gli utenti i cui file vogliamo salvare e con-
fermare facendo clic su Salva.
• Fare clic sul pulsante Dove.
• Fare clic sul pulsante che corrisponde al supporto dove vogliamo salvare i file, defi-
nire i parametri di riferimento e confermare facendo clic su Salva.
• Fare clic sul pulsante Quando, fare clic sull’opzione Usa demone, definire fre-
quenza e supporto di backup e confermare facendo clic su Salva.
• Fare clic sul pulsante Altre opzioni, selezionare la prima opzione, inserire il nome
dell’utente a cui vogliamo che il sistema di backup mandi un rapporto dettagliato
sul backup stesso e confermare facendo clic su Salva.
• Per fare un test fare clic sul pulsante Effettua il backup adesso, poi su Effettua
il backup sulla base del file di configurazione e infine su Costruisci
backup.

52
pronti ... via

La configurazione avanzata del backup.

Il backup salva i file in formato tar compresso con il programma gzip. Vedere il sesto
capitolo per l’utilizzo di tar e gzip. Il ripristino dei dati deve essere effettuata facendo
clic sul pulsante Ripristina. Le possibilità a disposizione sono due: o ripristinare tutti
i backup fatti in precedenza oppure effettuare un ripristino selettivo tramite il pulsan-
te Personalizza il ripristino ed è questa l’opzione che si consiglia.

• Gestione software
Questa categoria consente di gestire facilmente il software installato e di fare gli
aggiornamenti del sistema operativo. Il programma di riferimento si chiama rpm-
drake. Le sezioni di riferimento sono quattro:
1. Installa software, che consente d’installare altro software sul nostro PC.
2. Rimuovi software, che consente di eliminare uno o piò software dal nostro PC.
3. Mandrake update, che permette di accedere ad Internet per scaricare aggiorna-
menti.
4. Gestione fonti software, che definisce le sorgenti dei pacchetti software instal-
lati. Qui saranno tipicamente presenti i riferimenti a CD d’installazione e, magari,
un indirizzo web di qualche sito da cui si sono scaricati degli aggiornamenti.

La schermata per la gestione del software installato.

53
Capitolo 2

2.9 Configurare il sistema con LinuxConf

Il programma si esegue selezionando K Configurazione Altro e scegliendo Linux-


Conf. È un’utility che consente di fare quasi tutto e che, per questo motivo, è da con-
siderare un sostituto naturale del Mandrake Control Center.
In effetti, moltissime delle possibilità che ci dà LinuxConf sono simili o identiche a
quelle di Mandrake Control Center.

L’utilizzo dell’una o altra applicazione dipende dalla preferenza personale e ci dà anco-


ra una volta la misura della “sovrabbondanza” del software applicativo e di sistema che
c’è in Mandrake Linux.

LinuxConf, come tutte le applicazioni di sistema, deve essere eseguita come root.
Ha un aspetto essenziale ed è suddivisa in tre sezioni:
1. Configurazione. Il primo pulsante Rete ci permette di accedere alle risorse
di rete, intese anche come file Samba, NFS, DNS ed altro ancora. Il pulsante
Utenti consente all’amministratore di sistema di accedere a semplici utility per
la gestione di utenti, gruppi, account speciali (ad esempio quello POP per la
posta) e alle regole che riguardano la gestione degli utenti (ad esempio la lun-
ghezza minima delle password, il numero minimo di caratteri non alfabetici,
eccetera). Il pulsante File system consente di configurare partizioni e volumi
locali e di rete, definendo anche i volumi NFS e il file di swap. Il pulsante Varie
permette di definire il livello di run predefinito, che solitamente è il 5, la confi-
gurazione del kernel (numero massimo di file che possono essere aperti,
dimensione della memoria condivisa e numero massimo di processi) e log di
sistema. Il pulsante Periferiche fa riferimento ai componenti ISA, al Modem e
alla Stampante. Infine il pulsante Boot definisce la modalità predefinita di fun-
zionamento di avvio del computer.
2. Controllo. Il pulsante principale è Pannello di controllo dove si possono
fare operazioni di mount, spegnere e riavviare il sistema, verficare lo stato dei
servizi, configurare il crontab di root ed altro ancora. Il pulsante Gestione di
linuxconf definisce i file di configurazione di Linux, i processi di sistema, i
moduli caricati in memoria, ecc. Infine il pulsante Data e ora consente di
modificare i criteri in base ai quali il PC gestisce la data e l’ora, ad esempio
acquisendola sempre da un certo server. Quest’ultimo caso è molto utile per
mantenere sempre allineate le ore delle macchine che fanno parte di una rete.
3. Stato. Qui vengono raggruppati i log principali presenti nel sistema operativo.
Dopo avere fatto clic sul pulsante Log compare, infatti, una schermata con sei
pulsanti che permettono di esplorare altrettanti log.

54
pronti ... via

LinuxConf e la gestione degli utenti.

55
56
CAPITOLO 3

57
Capitolo 3

MANDRAKE E LE SUE APPLICAZIONI


Questo capitolo è dedicato alle applicazioni che sono fornite con Mandrake Linux 9.0. L’ac-
cento viene posto soprattutto sulle cosiddette applicazioni da ufficio, ossia word processor,
spreadsheet, programmi di presentazione, eccetera. Come accennato nel primo capitolo,
infatti, siamo di fronte ad un caso più unico che raro: fanno parte integrante del sistema
operativo più di una suite office e, dunque, abbiamo solo l’imbarazzo della scelta per deci-
dere con che cosa lavorare!

3.1 KOffice

KOffice è una suite creata appositamente per KDE. Per attivare lo spazio di lavoro ad
essa riservato fare clic su K Ufficio Accessori e selezionare Spazio di lavoro di
KOffice (Office Suite).

Lo spazio di lavoro di KOffice.

La caratteristica principale dell’ambiente di lavoro KOffice è la sua estrema amichevolez-


za: le applicazioni che possono essere eseguite sono sulla sinistra nella barra Compo-
nenti, mentre menu e barra degli strumenti sono sempre presenti nella parte alta dello
schermo e variano a seconda del tipo di applicazione che viene eseguita. Un altro ele-
mento distintivo di KOffice è la possibilità di gestire più applicazioni contemporaneamente
senza che vi siano problemi in termini di rallentamento del sistema. Per spostarci veloce-
mente da un’applicazione ad un’altra è disponibile la barra Documenti a sinistra dell’area
di lavoro.

KOffice è compatibile col formato di molte applicazioni del mondo Windows e ha una
velocità di esecuzione e una leggerezza veramente notevoli.

58
mandrake e le sue applicazioni

• KWord
Il word processor di KOffice si chiama KWord.

La schermata introduttiva di KWord.

Dopo avere fatto clic sull’icona corrispondente bisogna subito scegliere se creare un
nuovo documento oppure no. Nel caso di un nuovo documento vengono proposti
nelle due sezioni Aspetto pagina e Testuale i modelli disponibili; ad esempio è
possibile creare un fax o una pagina con due colonne separate. Nella parte inferiore
della finestra di dialogo, invece, sono selezionabili le seguenti opzioni alternative:
1. Apri un documento esistente
2. Apri un documento recente, che permette di scegliere tra una lista di docu-
menti aperti nell’ultimo periodo.
3. Inizia con un documento nuovo. In questo caso non viene applicato nessun model-
lo.
Il menu File contiene le voci standard che vengono applicate all’intera suite (Apri,
Salva, Salva con nome, ecc.) e le statistiche applicabili al documento corrente. In par-
ticolare è possibile visualizzare le seguenti statistiche:
• Caratteri (spazi inclusi).
• Caratteri (spazi esclusi).
• Sillabe.
• Parole.
• Periodi.
• Indice di facilità di lettura di Flesch. La formula, che si basa sulla teoria che la leggibilità
di un testo è misurabile (Rudolph Flesch, 1946), tiene conto della lunghezza media delle
parole, misurate in sillabe, e della lunghezza media delle frasi, misurata in parole. La for-
mula di Flesch è stata adattata alla lingua italiana da Roberto Vacca. In base a questa
formula un testo può essere considerato ad alta leggibilità quando il valore numerico è
superiore a 60, a media leggibilità quando si colloca fra 50 e 60, a bassa leggibilità
quando è inferiore a 40.
Il menu Modifica non presenta particolarità di rilievo, mentre nel menu Visualizza sono
innanzi tutto interessanti le voci relative alle viste. Quando si sceglie Nuova vista, infatti, è
59
Capitolo 3

possibile visualizzare una copia del documento corrente, mentre con Dividi
vista avviene lo split del documento in due parti. Avere più viste è molto como-
do quando bisogna effettuare delle ricerche a ritroso o in avanti senza perdere il
puntamento alla visualizzazione attuale. L’orientamento delle viste è per default
verticale, ma è possibile tramite Orientazione della divisione impostarle
anche in orizzontale. Sempre nel menu Visualizza si possono cambiare le moda-
lità di visualizzazione dei documenti: da Modo pagina, si può passare ad Ante-
prima o Modo testo. Infine la voce Mostra la struttura del documento è vera-
mente utile per muoversi velocemente all’interno di un documento facendo clic
nella barra Struttura del documento.
Nel menu Inserisci sono particolarmente interessanti le seguenti voci:
• Variabile, che permette d’inserire variabili personalizzate, informazioni sul
documento, data, ora e pagina.
• File, che consente d’inserire il contenuto di un documento in formato KWord
a partire dal punto in cui si trova il cursore.
• Tabella, per inserire una tabella nel documento corrente con il numero di
righe e colonne specificato.
• Scansione immagine, che permette di fare una scansione di un’immagine
inserendola direttamente nel documento corrente.

Un’immagine inserita nel documento direttamente tramite scanner.

Il menu Formato contiene tutte le voci standard per definire le caratteristiche


di formattazione del documento: dai font ai paragrafi ed altro ancora. Il Gesto-
re di stile è molto utile per gestire gli stili da utilizzare nel proprio documento.
In particolare è possibile modificare stili preesistenti o crearne di nuovi facendo

60
mandrake e le sue applicazioni

clic sul pulsante Nuovo e definendo le caratterische nelle varie sezioni presenti sulla
finestra di dialogo.

La finestra dedicata alla gestione degli stili.

Il menu Cornici permette di definire i bordi che possono essere inseriti nel docu-
mento.
Molto più interessante ed utile è il menu Tabella che è dedicato interamente alla
gestione delle tabelle. Analizziamo le singole voci di menu:
• Proprietà, consente di visualizzare le caratteristiche di base della tabella che è
stata creata dal menu Inserisci. La sezione Geometria contiene il numero delle
righe e delle colonne, che possono essere modificate. La sezione Modelli serve a
visualizza il modello della tabella corrente.
• Riga, permette d’inserire o di eliminare righe. Per poterlo fare è necessario sele-
zionare una riga e nel caso d’inserimento bisogna anche specificare nella scher-
mata successiva la sua posizione esatta.
• Colonna, permette d’inserire, di eliminare e di ridimensionare colonne. Per poter-
lo fare è necessario selezionare una colonna e nel caso d’inserimento bisogna
anche specificare nella schermata successiva la sua posizione esatta. Il ridimen-
sionamento, invece, deve essere fatto modificando la larghezza in millimetri indi-
cata nell’apposito campo.
• Cella, consente di unire, dividere o proteggere celle. Nel caso di unione bisogna
prima selezionare almeno due celle consecutive: fare clic sul bordo della prima
(quando il puntatore del mouse è a forma di croce) e poi, tenendo premuto Shift,
fare clic sulla seconda. Nel caso di divisione bisogna prima selezionare una cella
normale o una cella in precedenza unita. Infine nel caso in cui si vogliano proteg-
gere delle celle selezionarne prima almeno una.

Per selezionare una riga o una colonna, posizionarsi a sinistra della prima cella (per le
righe) o sopra la prima cella (per le colonne) e, quando il puntatore del mouse è a
forma di mano, fare clic.

61
Capitolo 3

• Separa tabella, una volta selezionata almeno una cella, consente di smembrare
la tabella nei suoi componenti di base. Il risultato è curioso: avremo tanti mattonci-
ni, che corrispondono alle celle, che si possono spostare a nostro piacimento nel
documento.
• Elimina tabella serve ovviamente a cancellare la tabella selezionata.
• Gestore stili della tabella, permette di definire nuovi stili da applicare ad una
tabella o di modificarne altri già creati.
Il menu Strumenti è utile soprattutto per controllare l’ortografia e per la possibilità d’im-
postare la correzione automatica degli errori. Infine il menu Impostazioni permette di
gestire le barre degli strumenti e di effettuare alcune configurazioni di base per il funzio-
namento di KWord.

• KSpread
Il foglio elettronico che fa parte della suite KOffice è KSpread.

La schermata introduttiva di KSpread.

Nella schermata introduttiva è possibile creare un nuovo documento partendo da un


modello oppure selezionare le seguenti opzioni alternative:
1. Apri un documento esistente
2. Apri un documento recente, che permette di scegliere tra una lista di documenti
aperti nell’ultimo periodo.
3. Inizia con un documento nuovo. In questo caso non viene applicato nes-
sun modello.

Il menu Inserisci.
62
mandrake e le sue applicazioni

Il primo menu da esaminare è Inserisci, che contiene le seguenti voci:


• Foglio, che consente d’inserire un nuovo foglio di lavoro. Tutti i foglio presenti nel
documento corrente sono visibili in basso e sono caratterizzati dal nome Foglio più
un progressivo. Il nome è ovviamente modificabile.
• Commenta cella, che permette d’inserire un commento che viene visualizzato
solo se si sfiora la cella con il mouse. La sua presenza è segnalata da un triangolo
rosso in alto a destra.
• Funzione, che consente d’inserire una formula particolare: dal coseno, al valore
assoluto, all’Euro, ecc.
• Serie, che consente d’inserire un insieme di valori specificando solo il valore inizia-
le, quello finale e il passo, ossia la differenza costante tra il valore successivo e quel-
lo precedente.
• Collegamento, che permette d’inserire un link ad un URL particolare.
• Oggetto, che permette d’inserire un oggetto esterno proveniente da altra applica-
zioni di KOffice.
• Grafico, che permette d’inserire un grafico dopo avere selezionato una lista di
valori. In questo caso viene incorporato un grafico di KChart e se si fa doppio clic su
di esso viene fornito l’intero ambiente di lavoro di questa applicazione KOffice.
• Dati esterni, che permette di caricare nel foglio corrente dei dati provenienti da
fonti esterne, come ad esempio un database SQL.

La definizione di una funzione.

La definizione di una serie.

63
Capitolo 3

Il menu Formato è importante per la definizione del formato di base dei compo-
nenti del foglio: celle, righe e colonne. In particolare vengono definiti il formato per-
centuale, il formato valuta ed è possibile ridimensionare righe e colonne oltre che
nasconderle.

Il menu Formato.

Il menu Dati permette di effettuare operazioni riguardanti direttamente dati come:


• Ordinare le informazioni selezionate in maniera crescente o decrescente.
• Inserire righe o colonne.
• Eliminare righe o colonne.
• Inserire o rimuovere celle.
• Raggruppare celle o separarle.
Infine il menu Strumenti fornisce alcune funzionalità come il ricalcolo del foglio
corrente o di tutti i fogli presenti e la visualizzazione della calcolatrice.

Il menu Strumenti.

64
mandrake e le sue applicazioni

• KPresenter
Il programma di presentazione di KOffice è KPresenter, con il quale si è sicuramente
in grado di creare una presentazione con buoni risultati, includendo effetti con un
buon impatto sugli utenti.

La schermata introduttiva di KPresenter.

Non appena avviato KPresenter presenta le solite alternative delle applicazioni


KOffice e cioè è possibile creare un nuovo documento partendo da un modello
oppure selezionare le seguenti opzioni alternative:
1. Apri un documento esistente
2. Apri un documento recente, che permette di scegliere tra una lista di
documenti aperti nell’ultimo periodo.
3. Inizia con un documento nuovo. In questo caso non viene applicato nessun
modello.
I modelli sono in questo caso numerosi e, quindi, nel caso di creazione di una pre-
sentazione ex-novo è sicuramente consigliabile fare riferimento ad uno di essi. In par-
ticolare le sezioni A4, US legal e US letter sono modelli che tengono conto del for-
mato di output della carta, mentre Schermo e Presentazioni sono modelli a tutto
schermo e, perciò, i più adatti per creare una presentazione classica.

Alcuni dei modelli disponibili.

65
Capitolo 3

Scegliamo, ad esempio, Montagne nevose: il modello ci presenta subito una pagina


con intestazione, piè di pagina e spazio per inserire il testo. Senza fare nulla faccia-
mo clic su PRESENTAZIONE Avvia. Quello che ci appare è:
1. L’immagine di sfondo con il titolo che compare in cascata.
2. Al primo clic appare anche il piè di pagina.
3. Dopo un ulteriore clic compare sempre in cascata la sezione dedicata al testo.

Il modello Montagne Nevose appena inserito nella presentazione.

Dopo avere premuto Esc è possibile creare effettivamente la presentazione. Quindi


con un doppio clic sull’intestazione si può digitare il titolo e nella stessa maniera si può
agire sulle altre sezioni. Per inserire una nuova pagina scegliere INSERISCI Pagina o
premere F2, indicarne la posizione (prima o dopo la pagina corrente) ed infine sce-
gliere ancora una volta il modello di riferimento. Per muoversi tra una pagina e l’al-
tra premere Page Up e Page Down.

Il menu Inserisci.

Gli oggetti che si possono inserire sono presenti nel menu Inserisci e sono i
seguenti:
• Testo, per digitare caratteri nella presentazione.
• Forma preimpostata, per inserire frecce o connessioni (utili per organigrammi).
• Diagramma, per incorporare un grafico che viene fornito dall’applicazione KChart.
66
mandrake e le sue applicazioni

Facendo doppio clic sul grafico è possibile modificarlo entrando nell’applicazio-


ne server (l’ambiente di lavoro cambia e vengono evidenziati i menu e le barre
di lavoro di KChart). Con un ulteriore clic destro compare, poi, la lista delle
opzioni, tra cui Modifica i dati che è quella di riferimento per definire i valori
su cui si basa il grafico.
• Tabella, per incorporare una tabella che viene fornita dall’applicazione
KSpread. Anche in questo caso con un doppio clic si entra in KSpread e si pos-
sono utilizzare tutte le caratteristiche di quell’applicazione.

Inserire un’immagine.

• Oggetto, per incorporare un oggetto che proviene da una qualsiasi delle applica-
zioni di KOffice.
• Immagine, per inserire un’immagine creata in precedenza.
• Forme geometriche di vario tipo, da linee a poligoni ad archi, eccetera.
• Scansione Immagine, per acquisire un’immagine direttamente da uno scanner.
Un altro menu molto interessante è Presentazione dove tra l’altro vengono definiti
gli effetti relativi alla pagina corrente e a ciascun oggetto presente nella pagina.

Il menu Presentazione.

Diamo un’occhiata alle varie voci del menu Presentazione:


• Configura pagine, dove si può definire se creare una presentazione automatica

67
Capitolo 3

oppure no con AVANZA manualmente al passo successivo e l’Effetto per pas-


sare alla pagina successiva. In quest’ultimo caso, come si veda dalla lista, si pos-
sono creare effetti particolarmente accattivanti. Infine è anche prevista la possibilità
d’inserire suoni.
• Assegna effetto, non fa altro che definire gli effetti per ciascun oggetto che fa
parte della presentazione sia quando appaiono che quando scompaiono. Sia nella
sezione Apparizione che in quella Scomparsa sono presenti campi che consento-
no di definire l’ordine di apparizione e/o di scomparsa dell’oggetto. È poi possibile
definire l’effetto di apparizione e/o di scomparsa scegliendolo da una lunga lista di
elementi. Infine è possibile definire in secondi i tempi relativi ai vari oggetti e gli
effetti sonori.

Per potere attivare la voce Assegna Effetto è necessario selezionare prima l’oggetto di
riferimento.

• Avvia, non fa altro che avviare la presentazione.


• Visualizza pagina corrente, fa il display della sola pagina corrente.
• Sono poi presenti voci di menu che consentono i movimenti all’interno della pre-
sentazione e soprattutto Apri editor di struttura della presentazione che
permette di scorrere in formato struttura tutta la presentazione e i suoi elementi.

L’editor di struttura della presentazione.

• KChart
Il programma di KOffice dedicato ai grafici è KChart. Non appena si fa clic sulla sua
icona corrispondente appare, quasi istantaneamente, un esempio di grafico a barre.

La prima schermata di KChart


68
mandrake e le sue applicazioni

KChart è un’applicazione piuttosto semplice le cui impostazioni e definizioni sono


tutte all’interno del menu Modifica. In particolare la voce Modifica i dati permet-
te di definire in maniera statica le serie su cui si basa il grafico.

Il limite di lavorare direttamente in KChart è evidente: si tratta di una semplice tabella e


non di un foglio elettronico. Per superare questo problema basta, però, eseguire
KSpread e inserire un grafico di KChart che rappresenta i valori del foglio corrente.

L’altra voce di riferimento è Configura, dove si possono definire i seguenti ele-


menti:
• I colori del grafico.
• I font delle etichette.
• Lo sfondo del grafico.
• La legenda e i suoi colori.
• Le caratteristiche relative agli assi.
• Le caratteristiche 3D del grafico.
• La tipologia del grafico a barre.
• Intestazioni e piè di pagina.

Configurazione di un grafico.

Direttamente nella barra degli strumenti sotto il menu è, poi, possibile scegliere il tipo di
grafico.

• Le altre applicazioni di KOffice


Per concludere la disamina delle applicazioni di KOffice diamo un’occhiata ai
cosiddetti programmi minori. Iniziamo da Karbon14 che consente di creare
facilmente figure geometriche predefinite. Queste figure possono essere trasla-
te, ruotate e si può applicare un effetto distorsione. È anche possibile smussare
gli angoli e colorarle a nostro piacimento. Non si hanno moltissime possibilità e
le impostazioni più importanti sono presenti nei menu Oggetto e Percorso.
L’utilità di questo programma? A voi la decisione dopo averlo esaminato nel det-
taglio (cosa piuttosto rapida).

69
Capitolo 3

Creazione di figure geometriche con Karbon14.

Kontour è un classico programma di disegno che dispone di alcune caratteristiche


interessanti come la possibilità di salvare in formati differenti. Non consigliamo l’utiliz-
zo della versione presente in KOffice 1.2, in quanto si è dimostrata notevolmente
instabile.

Creazione di un disegno con Kontour

KFormula è un’applicazione nata per creare formule, ma non per valutarle. In altre
parole è possibile digitare derivate, integrali e le espressioni più complesse, ma non
eseguirle: il suo utilizzo non prevede il calcolo delle formule digitate! Si tenga anche
presente che l’impiego più sensato di KFormula è all’interno di un’altra applicazione
di KOffice. Infine non vi spaventate se quando aprite un nuovo documento vedete
solo un piccolo quadrato blu: esso rappresenta uno spazio in cui si può digitare da
tastiera e inserire simboli matematici. Provare per credere.

70
mandrake e le sue applicazioni

Editazione di una formula con KFormula.

Kivio serve a creare diagrammi di flusso ed è, quindi, utile a documentare progetti


dove è necessario rappresentare graficamente dei flussi di lavoro. La funzionalità più
interessante è quella che visualizza i flowchart che possono essere inseriti nel docu-
mento corrente. Per attivarla fare clic sulla freccetta a destra dell’icona che rappre-
senta l’anteprima di stampa e scegliere la collezione di diagrammi che ci è utile (di
solito Basic Flowcharting Shapes). L’applicazione è fornita in versione ridotta da
theKompany per avere un’applicazione completa e maggiori dettagli andare su
http://www.thekompany.com/products/kivio

Creazione di un flowchart con Kivio.

3.2 OpenOffice

OpenOffice è la seconda suite di prodotti per l’ufficio presente in Mandrake Linux. Nel caso
di OpenOffice non esiste uno spazio di lavoro come per KOffice, ma bisogna attivare le sin-
gole applicazioni nella sezione Ufficio del menu di avvio K. I tempi di caricamento della
singola applicazione non sono rapidissimi e questo dipende dal fatto che vengono carica-

71
Capitolo 3

te in memoria alcune librerie generali di OpenOffice. Dopo avere attivato la prima applica-
zione, infatti, le altre vengono eseguite molto più velocemente e senza visualizzare il logo
iniziale bianco-azzurro di OpenOffice. La piattaforma OpenOffice contiene applicazioni che
sono di livello mediamente superiore a quelle di KOffice. D’altra parte il produttore di que-
sta suite è Sun Microsystems che si occupa anche dello sviluppo di Star Office, un altro
pacchetto per l’ufficio di notevole affidabilità.

OpenOffice è compatibile con Microsoft Office. Questo significa che è possibile importa-
re ed esportare documenti da e verso MS Office.

• Writer
Writer è il word processor di OpenOffice che si attiva facendo clic su K Ufficio
Elaborazione testi e selezionando OpenOffice.org Writer. È un’applicazione
completa che non ha nulla da invidiare ad altri potenti elaboratori di testi che si
trovano sul mercato.

OpenOffice.org Writer.

L’organizzazione dei menu di Writer è simile a quella di KWord anche se presen-


ta comandi aggiuntivi che vedremo di seguito. Il menu File contiene, quindi, i
comandi per gestire il documento: aprirlo, chiuderlo, salvarlo, stamparlo e così
via. Molto interessante è l’introduzione del Navigatore, che consente di naviga-
re all’interno dei documenti secondo una logica molto pratica e affine alla navi-
gazione in Internet. Per attivare il Navigatore premere F5, oppure fare doppio clic
nella barra in basso a sinistra dove si trova il numero della pagina, oppure sce-
gliere da menu MODIFICA Navigatore.

72
mandrake e le sue applicazioni

Il navigatore di Writer.

Nel riquadro del navigatore sono presenti tutti i possibili elementi costitutivi del docu-
mento: intestazione tabella, cornici immagini, sezioni ecc. Un simbolo + comparirà di
fianco agli elementi usati. Cliccando il simbolo + sono mostrati tutti gli elementi
presenti appartenenti a tale voce. Con un doppio clic sull’elemento il cursore ci si
sposta sul punto selezionato. Alternativamente è possibile spostarci tra le pagine
digitandone il numero nel riquadro.

La gestione delle tabelle è un altro punto a favore di Writer. Per inserirne una uti-
lizzare il menu INSERISCI Tabella e riempire la finestra di dialogo come segue:
1. Impostare il numero di righe e colonne.
2. Selezionare Intestazione se si vuole che la prima riga della tabella abbia una
formattazione differente come se fosse un titolo.
3. Selezionare anche Ripeti su ogni pagina per fare in modo che l’intestazione
della tabella sia sempre presente pagina dopo pagina. Questa opzione è utile se
la tabella copre più pagine.
4. Impostare mediante la checkbox Bordo la visibilità del bordo e premere OK.

In alternativa è anche possibile:


1. Fare clic sulla prima icona in alto nella barra degli strumenti standard, tenendo
contemporaneamente premuto Shift.u
2. Nella barra di opzioni apparsa, cliccare sulla terza icona da sinistra per inserire
una tabella.
3. Trascinare il mouse sulla griglia per selezionare il numero di righe e di colonne
desiderato.

Per formattare una tabella (aggiungere/rimuovere il bordo, modificare lo sfondo, ecc.) sele-
zionare la tabella o le celle o le righe di cui si desidera modificare il formato con il mouse,
selezionare FORMATO Tabella e impostare i parametri desiderati nella finestra di dialogo. I
73
Capitolo 3

parametri possono essere differenti a seconda della scheda utilizzata:


• Tabella. Qui è possibile indicare il nome, le distanze e l’allineamento all’interno del
foglio di lavoro.
• Flusso di testo. Qui si possono definire interruzioni, se mantenere sempre unita la
tabella, la ripetizione dell’intestazione, eccetera.
• Colonne: il formato delle colonne (larghezza).
• Bordo: il bordo delle singole celle.
• Sfondo: lo sfondo delle singole celle (colore o immagine).

Una tabella creata in Writer.

Per aggiungere righe o colonne fare clic su FORMATO Riga Inserisci o FORMATO
Colonna Inserisci, selezionare il numero di righe o colonne che si desidera inse-
rire e specificare la posizione d’inserimento (è anche possibile fare clic sull’ottava
o la nona icona sulla barra degli oggetti per tabelle). Per default le nuove righe
vengono inserite sopra quella selezionata e le nuove colonne a sinistra di quella
selezionata.

Per aggiungere una riga alla fine di una tabella posizionare il punto d’inserimento nel-
l’ultima cella in basso a destra e premere TAB.

Per dividere o unire una cella, una riga o una colonna:


• Selezionare le celle, le righe o le colonne da unire o da dividere.
• Fare clic sul quinto (collega) o sul sesto (dividi) pulsante della barra degli oggetti per
tabelle.
• Per la sola divisione: impostare le opzioni della finestra di dialogo apparsa (vertica-
le, orizzontale, numero, eccetera) e premere OK.
È possibile inoltre formattare automaticamente la tabella all’atto dell’inseri-
mento.
Per usare i formati di tabella predefiniti:
• Inserire la tabella mediante INSERISCI Tabella.
• Premere Formatt. auto...
74
mandrake e le sue applicazioni

• Scegliere il formato tra quelli disponibili e premere OK.


Diamo un’occhiata ora alle note a piè di pagina e di chiusura.

La nota a piè di pagina viene inserita in calce alla stessa pagina in cui si è inserito il rife-
rimento. La nota di chiusura viene inserita in calce a tutto il documento (cioè nell’ultima
pagina) a prescindere dalla pagina effettiva di inserimento del riferimento.

È tra l’altro, possibile mischiare note a piè pagina e note di chiusura facendo atten-
zione a non introdurre ambiguità nella notazione.
Per inserire note a piè pagina o di chiusura:
• Posizionare il cursore nel punto del testo in cui si vuole inserire la nota (o meglio il
riferimento alla nota).
• Selezionare Inserisci Nota a piè pagina.
• Scegliere il tipo di numerazione e se la nota deve essere normale o di chiusura.
• Cliccare su OK.
• Inserire il contenuto della nota.
• Cliccare sul margine sinistro della nota (dove compare il numero) per tornare nella
posizione nel testo in cui si è inserita la nota stessa.
Le sezioni, invece, permettono di definire una gerarchia di documenti in cui ogni sot-
todocumento possiede una propria caratteristica o eredita la caratteristica del padre.

nserire sezioni in un documento.

Si aggiungono sezioni al documento dal menu INSERISCI Sezioni. Nella finestra di


dialogo che appare il nome della nuova sezione va inserito in alto a sinistra, men-
tre l’elenco delle sezioni che sono già state definite appare nel riquadro più ampio
sotto il nome della nuova sezione. Le altre parti che compaiono nella finestra ser-
vono a definire:
1. Un collegamento ad un documento esterno ed eventualmente una sezione
particolare del documento, dove la nuova sezione contiene la parte di testo
selezionata.
2. La nuova sezione è protetta verso le modifiche, eventualmente per sbloccare la
75
Capitolo 3

protezione è possibile definire una password.


3. La nuova sezione viene nascosta, se viene specificata la condizione booleana (vero o
falso) e la condizione è vera, la sezione viene nascosta, altrimenti no.
Infine diamo un’occhiata ai modelli di un documento. Il modello è un particolare tipo di
documento di Writer che permette di generare uno scheletro di documento riutilizzabile
ogni volta che ce ne sia necessità. Si noti che i modelli hanno estensione .stw a differenza
dei comuni documenti di Writer la cui estensione è .sxw.
Per caricare un modello di documento già esistente procedere come segue:
1. Selezionare FILE Nuovo Modelli e documenti.
2. Selezionare la tipologia del modello dalla finestra Titolo, con un doppio clic (ad esem-
pio Biglietti da visita).
3. Selezionare il modello desiderato e poi fare clic sul pulsante Apri.

Caricamento di un modello.

A questo punto si possono apportare le modifiche del caso e, una volta terminato, salvare
il documento così generato selezionando FILE Salva e, nel caso sia un primo salvataggio,
assegnare il nome al file. Con Writer è semplice anche creare nuovi modelli. Una volta
composto il modello come desiderato (definendo formattazioni, comandi di campo, ecc.)
selezionare FILE Modelli Salva e inserire i dati richiesti nella finestra di dialogo.

• Calc
Calc è il word processor di OpenOffice che si attiva facendo clic su K Ufficio Foglio
elettronico e selezionando OpenOffice.org Calc.

OpenOffice.org Calc.

76
mandrake e le sue applicazioni

La cartella di lavoro non è altro che un insieme di fogli, chiamati Tabelle, che pos-
sono contenere oltre al foglio di calcolo, grafici, macro, eccetera, generalmente
tra loro correlati. La rappresentazione grafica è quella dello schedario, ossia
quando apriamo un file compare solo il primo foglio. In basso, tuttavia, sono pre-
senti le linguette che recano sopra il nome della tabella a cui si riferiscono.
Cliccando una volta sulla linguetta desiderata si otterrà la visualizzazione della
tabella relativa. Il nome della cartella di lavoro verrà assegnato nel momento del
primo salvataggio. Il nome del foglio di lavoro si cambierà cliccando col tasto
destro del mouse sulle linguette da schedario poste nello schermo in basso e
selezionando la voce Rinomina.

Il foglio di lavoro di Calc è composto da oltre quattro milioni di celle, ma sullo schermo
finestra ne viene visualizzata soltanto una porzione limitata.

Quando creiamo un nuovo foglio di lavoro il formato preimpostato è quello Standard


e cioè il testo è allineato a sinistra mentre i numeri sono allineati a destra.
Per modificare il formato di default:
• Selezionare l’area di cui si desidera modificare il formato.
• Attivare FORMATO Cella.
• Scegliere l’opzione d’interesse nella sezione Allineamento testo.
• Apportare le modifiche e premere OK.

Cambiare l’allineamento del testo.

Le altre schede della finestra Attributi cella sono le seguenti:


• Numeri, è dedicata alla rappresentazione delle celle a contenuto numerico. È possibile,
infatti, visualizzare lo stesso contenuto numerico in diverse maniere: data, percentuale,
valuta, ecc. Selezionare nel campo Categoria, la tipologia di riferimento e poi nel campo
Formato come deve essere rappresentato il numero e fare clic su OK. Nel campo Codi-
ce del formato è possibile creare un formato personalizzato.
• Carattere, riguarda la classica gestione dei font.
• Effetto carattere, riguarda gli effetti che vengono applicati ai caratteri (barrato,
grassetto, eccetera).
• Bordo, serve modificare i bordi delle singole celle o di un’area selezionata.
77
Capitolo 3

• Sfondo, individua il colore di sfondo delle singole celle o di un’area selezionata.


• Protezione, serve a proteggere singole celle o un’area selezionata, evitando la digita-
zione accidentale di caratteri. Qui è anche possibile nascondere le formule o evitare che
alcune celle vengano stampate.
Una caratteristica tipica dei fogli elettronici è l’inserimento di formule. In questo
modo è possibile definire dei modelli matematici dinamici che si aggiornano
automaticamente al modificarsi di alcuni valori. Ad esempio se si vuole avere
nella cella A3 la sommatoria delle precedenti due celle basta posizionarsi in A3
e digitare =A1+A2 oppure =a1+a2 e poi premere Invio. Alternativamente è pos-
sibile agire come segue:
1. Selezionare la cella A3
2. Digitare =
3. Fare clic sulla cella A1
4. Digitare l’operatore +
5. Fare clic sulla cella A2
6. Premere Invio

L’operatore = serve a comunicare a Calc che si sta immettendo una formula invece di
comune testo. Se si vuole visualizzare il simbolo di uguale è necessario farlo precedere
da un singolo apice (‘=),

Gli operatori di calcolo accettati da Calc sono:


• Somma: +
• Moltiplicazione: *
• Sottrazione: -
• Divisione: /
• Parentesi per definire la priorità delle operazioni da eseguire: ( )
• Elevamento a potenza: ^
• Percentuale: %
Ogni volta che viene modificato un valore nel foglio di lavoro, Calc aggiorna automa-
ticamente tutte le formule che utilizzano il valore modificato. Quando si copia una
formula, Calc cambia automaticamente anche i riferimenti in base alla distanza tra la
cella origine e la cella destinazione. Per esempio la cella A3, nell’esempio di prima,
conteneva la formula A1+A2, se viene copiata una cella più in basso, ossia in A4, tutti
i riferimenti sono aggiornati alla riga successiva diventando A2+A3. Questo significa
che se copiamo in A9, distante 6 righe dall’origine la formula diventa A7+A8.

Per evitare che Calc esegua la procedura appena descritta dopo una copia di una for-
mula, inserire dei simboli $ davanti al parametro da lasciare fisso, per esempio $A1 se
non vogliamo cambiare la colonna, A$1 per non cambiare la riga, $A$1 per lasciare fissi
entrambi.

78
mandrake e le sue applicazioni

Mediante Incolla speciale si può anche decidere quali elementi della cella effetti-
vamente verranno copiati ed eventuali operazioni da eseguire.
1. Selezionare e posizionarsi sulla cella/celle desiderate.
2. Copiarla\le mediate MODIFICA Copia.
3. Selezionare l’area in cui avverrà la copia (è sufficiente anche solo selezionare la cella d’i-
nizio).
4. Selezionare MODIFICA Incolla speciale.
5. Comparirà una finestra di dialogo.
6. Scegliere le opzioni desiderate. Ad esempio se è stata selezionata una formula, ma si
vuole copiare solo il valore numerico deselezionare Incolla tutti e selezionare solo
Numeri.
7. Premere OK.

La finestra di dialogo Incolla speciale.

Per applicare un ordinamento crescente/decrescente in una lista di valori:


1. Selezionare l’area da ordinare.
2. Selezionare DATI Ordina.
3. Scegliere il criterio di ordinamento. Nella scheda Criteri scegliere la colonna rispetto
alla quale ordinare e la modalità, nella scheda Opzioni scegliere le opzioni che servo-
no nel caso specifico.
4. Fare clic su OK.

Invece per utilizzare un Filtro Automatico:


1. Selezionare l’area da filtrare.
2. Cliccare sull’apposito pulsante a forma d’imbuto (la dodicesima icona) della barra degli
strumenti verticale a sinistra.
3. Se l’area selezionata non contiene intestazioni di colonna è possibile indicare a Calc che
utilizzi la prima riga come tale.
4. Selezionare la modalità di filtraggio desiderata dal menu a tendina comparso sulle
colonne coinvolte nell’ordinamento: “tutto” annulla gli effetti del filtro, “Standard”
avvia l’esecuzione del Filtro Standard, “Top 10” seleziona le dieci righe corrisponden-
ti ai dieci valori più alti della colonna e infine si può filtrare uno dei valori definito nella
lista.

79
Capitolo 3

Nel caso in cui si scelga un Filtro Standard è necessario selezionare le opzioni corri-
spondenti nella finestra di dialogo apparsa, impostando il campo su cui fare il filtro, la con-
dizione che deve soddisfare il campo, il valore di riferimento per la condizione e, se sono
state riportate più espressioni condizionali, l’operatore logico di collegamento.

Le condizioni concatenate mediante operatore “E” devono essere verificate entrambe


affinché un record non sia eliminato dal filtro, invece con l’Operatore “O” deve esserne
verificata almeno una.

Per inserire una funzione nella cella:


1. Si selezioni la cella desiderata.
2. Si scelga la finestra di dialogo INSERISCI Funzione.
3. Si scelga sotto Categoria la classe di funzioni da utilizzare.
4. Si scelga sotto Funzione la funzione desiderata. Un clic semplice sulla funzione ci
mostra come opera e i parametri necessari. Un doppio clic la seleziona in modo
da permetterci l’inserimento dei parametri manualmente.
5. La pressione del pulsante Avanti ci permette anche l’inserimento dei parametri
scegliendo direttamente le celle con il mouse dalla griglia. Se si utilizza il pulsante
Zoom indietro (icona a destra del campo dove deve essere digitato l’argomento
della funzione) si selezioni la cella desiderata e poi si prema il pulsante Zoom avan-
ti, nella maschera successiva, per la conferma.
6. All fine fare clic su OK.

La finestra di dialogo per inserire una funzione.

Realizzata la tabella di cui si vuole realizzare il grafico, è sufficiente selezionare


l’area che costituisce l’input, fare clic sul menu INSERISCI Diagramma e seguire il
pilota automatico che compare a video. Per modificare la posizione dell’area del
diagramma, o le sue dimensioni, si deve selezionare l’area cliccando una volta
nell’area del diagramma. L’avvenuta selezione viene evidenziata dalla presenza di
nove quadratini color verde che contornano l’immagine. I quadratini, se trascina-
ti permettono di modificare la forma e la dimensione del diagramma medesimo.
Ad area selezionata, posizionando il puntatore all’interno, è possibile spostare l’area
80
mandrake e le sue applicazioni

in qualunque posizione del documento, copiare e incollare l’oggetto come tutti gli oggetti
OpenOffice. OpenOffice permette di utilizzare all’interno di un documento dati provenien-
ti da database esterni e di integrare questi dati in modo da automatizzare e semplifica-
re alcune operazioni di routine. Il primo passo da compiere per utilizzare questa capacità
di OpenOffice è di creare la cosiddetta Sorgente dati. Questa permette di interfacciare
OpenOffice con un database già esistente o di crearne uno ex-novo. Alcuni dei possibili tipi
di database riconosciuti da OpenOffice sono:
• dBase (per i database nell’omonimo formato)
• Foglio elettronico (per i database generati con Calc)
• ODBC (per i database nell’omonimo formato)
• JDBC (per i database nell’omonimo formato)
• Adabas (per i database nell’omonimo formato)
• Testo (per i database in formato testo)
• Rubrica (per la gestione di rubriche esterne: Nescape, Outlook...)

La connessione con database esterni è particolarmente utile quando si ha la necessità


di uitilizzare informazioni che sono all’interno di database per creare rapporti o stampe
particolari.

Per stabilire un collegamento ad una sorgente dati procedere come segue:


1. Selezionare STRUMENTI Sorgente dati.
2. Nella finestra Gestire sorgente dati selezionare il database di default Biblio-
graphy.
3. Fare clic sul pulsante OK.
4. Selezionare VISUALIZZA Sorgente dati
5. Fare doppio clic sulla tabella biblio per visualizzarne il contenuto a destra.
A questo punto si ha a disposizione una fonte di informazioni che possono essere tra-
scinate o copiate nel foglio corrente.

Il database Bibliography pronto per essere utilizzato con Calc.


81
Capitolo 3

Infine vogliamo mettere in evidenza che esiste uno strumento, il DataPilot, che è
molto simile alla creazione di tabelle Pivot con MS Excel. In pratica consente di
aggregare informazioni frazionate per ottenere rapporti significativi contenenti totali,
medie, varianze, campioni, ecc. Per creare un prospetto di questo tipo bisogna:
1. Aprire il foglio desiderato con Calc.
2. Selezionare la tabella di partenza comprese le intestazioni.
3. Fare clic su DATI DataPilot Avvia.
4. Sulla finestra DataPilot scegliere i campi che si vogliono riportare sulle righe e sulle
colonne e trascinarne l’intestazione rispettivamente nello spazio chiamato Riga e in
quello chiamato Colonna.
5. Individuare anche i valori che si vogliono aggregare e trascinarne l’intestazione nell’area
Dati.
6. Nella finestra DataPilot fare doppio clic sulla riga orizzontale che contiene la dicitura
Somma e scegliere dalla lista il tipo di operazione da eseguire.
7. Fare clic su OK.

Aggregare informazioni con il DataPilot.

• Impress
Impress è il programma di presentazione di OpenOffice che si attiva facendo clic su
K Ufficio Presentazioni e selezionando OpenOffice.org Impress. I documenti
realizzati con Impress utilizzano l’estensione .sxi.

OpenOffice Impress appena lanciato avvia un pilot automatico.

82
mandrake e le sue applicazioni

Un documento Impress è formato da pagine (dette anche diapositive) ognuna delle quali
può contenere un insieme di oggetti: caselle di testo, disegni, immagini, tabelle, diagram-
mi, ecc. Sia le pagine che gli oggetti in esse contenute possono essere animate, cioè pos-
sono apparire, scomparire e muoversi secondo un insieme di effetti di movimento. Il tutto
può, inoltre, essere accompagnato da effetti sonori. La prima schermata che appare è il
pilota automatico che guida l’utente alla creazione di una nuova presentazione. Le alter-
native sono: presentazione vuota, da modello o apertura di una presentazione esistente. In
quest’ultimo caso è anche possibile vederne l’anteprima. Proseguendo nel pilota è possi-
bile scegliere il modello di pagina da applicare, ad esempio Schermo, e poi gli effetti da
applicare alle varie pagine per farle comparire, ad esempio effetto scacchiera oppure spi-
rale. Sulla stessa schermata è anche possibile scegliere se creare un tipo di presentazione
standard oppure automatico, dove le finestre si aprono e si chiudono automaticamente. Il
pulsante Crea consente di aprire finalmente l’ambiente di lavoro d’Impress e, in particola-
re, la schermata dove scegliere in una lista (veramente ben fornita) il tipo di pagina da inse-
rire nella presentazione.

Una presentazione in costruzione.

Per attivare una presentazione senza visualizzare il pilota automatico basta fare
clic sull’apposita opzione nella prima schermata del pilota. Per riattivare que-
st’impostazione selezionare STRUMENTI Opzioni e poi fare clic sul + a destra della
sezione Presentazione, poi su Generale ed infine sull’opzione Avvia con il
Pilota automatico.

Tutti gli oggetti presenti su una pagina possono essere suddivisi in due categorie: attivi e
passivi. Sono oggetti attivi quelli che possono essere modificati direttamente in Impress
(tabelle, diagrammi, disegni), sono oggetti passivi quelli che non possono essere modi-
ficati in Impress (immagini, suoni).

Cliccando una volta su un oggetto (attivo o passivo) questo viene selezionato (appaiono i
quadratini verdi lungo il bordo) e possono essere modificate le sue caratteristiche d’insie-
83
Capitolo 3

me. Per modificare un oggetto attivo bisogna cliccare due volte su di esso o seleziona-
re MODIFICA Oggetto Modifica o la voce Modifica dal menu contestuale. L’oggetto viene
circondato da un bordo grigio e i quadratini verdi diventano neri. Inoltre appaiono le barre
di formattazione e degli strumenti specifiche del tipo di oggetto selezionato.

Modificare un oggetto attivo.

Con Impress è possibile applicare animazioni ai singoli oggetti di una diapositiva.


Per fare questo:
1. Posizionarsi sulla diapositiva da modificare (vista disegno).
2. Fare clic sulla quartultima icona della barra degli strumenti o su PRESENTAZIONE
Effetti, si ottiene la finestra da cui è possibile impostare vari effetti d’animazione
sui singoli oggetti della slide in esame.
3. Selezionare un oggetto e scegliere un effetto (dopo aver selezionato la categoria
dalla lista a discesa) e la velocità di riproduzione nella casella Espandi in oriz-
zontale (lento, medio, veloce).
4. Premere il pulsante con la nota per associare all’effetto un suono o decidere cosa
deve succedere all’oggetto dopo l’animazione.
5. Se ci sono più oggetti cui è associata un’animazione, con il quarto pulsante si può
decidere l’ordine con cui saranno eseguite le singole animazioni. Premendo tale
pulsante si ha una finestra con l’elenco degli oggetti che hanno un’animazione,
l’ordine con cui compaiono nell’elenco è anche quello con cui saranno eseguite le
animazioni. Per cambiarlo basta trascinare una voce dell’elenco in una posizione
diversa.
6. Il pulsante con il segno di spunta verde assegna l’animazione all’oggetto e, infi-
ne, l’ultimo pulsante a destra consente di vedere un’anteprima dell’effetto stesso.

Se si vuol applicare lo stesso effetto a più oggetti bisogna selezionarli tutti con i soliti
metodi (fare clic in un punto vuoto della pagina e creare un rettangolo che circondi gli
oggetti o cliccare i singoli oggetti tenendo premuto il tasto Shift) ed effettuare il proce-
dimento appena descritto.

84
mandrake e le sue applicazioni

• Draw
Draw è il programma di grafica di OpenOffice che si attiva facendo clic su K Ufficio
Grafici e selezionando OpenOffice.org Draw.

OpenOffice Draw.

Nella barra principale, sulla sinistra, sono presenti gli strumenti di disegno, che si utiliz-
zano con Draw. Per attivare uno strumento specifico, fare clic sulla sua icona. Proviamo a
selezionare lo strumento cerchio. È la quinta icona a partire dall’alto. Ora, muoviamo il pun-
tatore del mouse: si è trasformato in una croce con annessa un piccolo cerchio. Per dise-
gnare la prima forma, procediamo come segue:
1. Facciamo clic e teniamo premuto in una qualsiasi parte del documento. Questo punto
sarà la parte superiore del cerchio.
2. Trasciniamo il mouse verso il basso e rilasciamo il tasto sinistro nel punto desiderato.

La creazione di figure geometriche.

Se diamo un’occhiata alla barra principale, possiamo vedere che lo strumento cer-
chio non è più selezionato. Si comporta così perché abbiamo fatto clic una sola volta.
Se avessimo, invece, fatto doppio clic sul cerchio sarebbe rimasto selezionato fino alla
scelta di un altro strumento. Se, invece, avessimo fatto un clic prolungato (o Shift più
85
Capitolo 3

un normale clic) su una qualsiasi delle icone della barra principale sarebbe comparsa una
piccola finestra che consente di scegliere varianti della figura geometrica selezionata.

Per rappresentare figure geometriche solide (cono, cerchio, piramide, ecc.) utilizzare la
sesta icona sulla barra principale degli strumenti.

Ci sono molti modi per cambiare il colore di un oggetto (il default è azzurro). I più comuni
sono:
• Selezionare FORMATO Area dalla barra dei menu. Sulla scheda Area della finestra
di dialogo che appare, scegliere il colore che si preferisce.
• Fare clic con il tasto destro sull’oggetto selezionato per visualizzarne il menu con-
testuale. Quindi scegliere la voce Area. Scegliere il colore sulla scheda Area della
finestra di dialogo che appare.
• Selezionare il colore preferito dall’elenco a discesa che si trova sulla barra degli
oggetti sotto il menu.

Modificare i colori.

Coloro che disegnano spesso immagini per il web sono abituati a lavorare con colori
espressi in forma esadecimale o con i nomi dei colori web standard. Una tavola di colo-
ri per il web è costituita solo da colori, che saranno visualizzati dai programmi di navigazio-
ne web in modo abbastanza simile su piattaforme diverse. Per utilizzare questa peculiarità,
seguire le seguenti indicazioni:
1. Disegnare un oggetto sul documento.
2. Cliccare sull’oggetto per selezionarlo.
3. Cliccare sopra con il tasto destro per visualizzarne il menu contestuale.
4. Selezionare la voce Area.
5. Sulla finestra a comparsa che appare, aprire la scheda Colori.
6. Cliccare sull’icona al di sopra del doppio floppy.
7. Selezionare il file html.soc e fare clic sul pulsante OK. Il percorso standard di questo
file è /home/<utente corrente>/openoffice/user/config/.

86
mandrake e le sue applicazioni

In questo modo nel campo Nome della scheda Colori non viene più semplicemente
visualizzato il nome del colore, ad esempio Blu 7, ma il suo valore, ad esempio dee-
pskyblue 00BFFF 0.191.255.

La conversione in numeri esadecimali del nome dei colori.

• Mr Project
Mr Project non fa parte di alcuna delle suite esaminate fino ad ora in quanto è inte-
grato in Gnome Office. È un programma molto interessante per la gestione dei pro-
cessi e dei progetti che colma una lacuna di KOffice e OpenOffice ed è per questo
motivo che viene esaminato in questa sede. Mr Project si attiva facendo clic su K
Ufficio Gestione processi e selezionando Mr Project.

Mr Project.

Gestire processi e/o progetti significa tenere traccia di attività pianificate nel corso del
tempo. È ovvio che Mr Project è un programma per ufficio che dovrebbe sempre
essere utilizzato (questo o uno simile) dai responsabili di progetto. Il modo migliore
per imparare ad utilizzarlo e fare un esemplificazione.
Ad esempio se siamo i responsabili di un progetto per l’aggiornamento di n PC all’ul-
87
Capitolo 3

tima versione di Mandrake Linux avremo sicuramente necessità di tenere traccia dei
seguenti elementi:
1. Data d’inizio e di fine progetto.
2. In quante microattività o task suddividiamo il progetto.
3. Data d’esecuzione di ogni singolo task.
4. A chi è assegnato ogni singolo task.
Eseguiamo Mr Project e definiamo le risorse del progetto facendo clic sull’icona a
sinistra Resources e poi sull’icona Insert presente nella barra degli strumenti per
inserire tutte le persone che partecipano al progetto. Ogni campo presente nella lista
è digitabile facendo clic direttamente su di esso e, quindi, possono essere impostati il
nome della risorsa, il tipo di risorsa, eccetera.

La gestione delle risorse.

Ora procediamo ad inserire i task, dopo avere fatto clic sul pulsante Gantt Chart. Di soli-
to la struttura di un progetto contiene task e sottotask. Per prima cosa definiamo il nome
globale del progetto la cui durata corrisponde alla durata dell’intero progetto. Facciamo clic
su Insert e indichiamo, ad esempio, “Installazione Hardware” come nome del progetto.
Poi inseriamo la voce “Installazione nuovi PC”, facciamo clic su di essa e, poi, sull’icona
Indent della barra degli strumenti. Facciamo clic col pulsante destro del mouse e sce-
gliamo Edit task. Viene visualizzata una finestra di dettaglio con diverse schede:
1. General, qui possiamo inserire le ore lavorate in Work, lo stato di avanzamento dei
lavori in Complete e anche il livello di priorità del task in Priority.
2. Resources serve ad abbinare le risorse al task.
3. Predecessors serve a definire se il task corrente dipende da un altro task. Ad esem-
pio il task test dipende da installazione PC. Per fare ciò fare clic sul pulsante +Add.
4. Notes, qui possiamo inserire un commento.

88
mandrake e le sue applicazioni

La finestra di dialogo per definire I dettagli di un task.

Inseriamo la voce “Test PC”, facciamo clic su di essa e, poi, sull’icona Indent della
barra degli strumenti e procediamo come sopra per i dettagli da definire nelle pro-
prietà.
Possiamo procedere all’infinito, ma la cosa interessante è che sulla destra Mr Project
visualizza il cosiddetto diagramma di Gantt che contiene tutto il progetto con le varie
dipendenze e le varie date di riferimento. Il terzo pulsante Tasks corrisponde al pre-
cedente, ma si focalizza sulle date e non visualizza il grafico. Qui le date sono ovvia-
mente modificabili.

La sezione dedicata alla gestione dei task.

89
90
CAPITOLO 4

91
Capitolo 4

LA MULTIMEDIALITÀ
Uno degli obiettivi di Mandrake è quello di rendere sempre più “multimediale” i pro-
pri sistemi operativi. La possibilità di riprodurre diversi media singolarmente o anche
contemporaneamente, è diventata ormai una realtà con Mandrake Linux 9.0 e le
novità legate a questo settore sono sicuramente interessanti. Nel menu di KDE esiste
proprio una voce dedicata a questo aspetto chiamata Multimedia.

4.1 CD e DVD

Come evidenziato nel secondo capitolo Mandrake Linux, durante l’installazione, rile-
va tutte le periferiche presenti sul PC. Dunque anche CD e DVD vengono solitamen-
te individuati senza problemi e configurati correttamente per essere utilizzati. Lo stes-
so dicasi per i masterizzatori.

I DVD stanno diventando di utilizzo sempre più comune, non solo per ospitare filmati, ma
anche per documentazione, installazioni di software e ovviamente backup di dati particolar-
mente voluminosi. Questo grazie alla loro capacità che è, per ora, pari a 4,7 GigaByte.

• Ascoltare i CD
Uno dei programmi più utili in questo caso è quello che si attiva facendo clic su K
Multimedia Suono ed eseguendo KsCD. I simboli che sono riportati sulla console
dell’applicazione sono quelli standard internazionali per tutte le apparecchiature elet-
troniche e i software che le simulano. Notare il simbolo del CD musicale vicino alla
data in basso a destra che serve per gestire via menu l’interfaccia grafica.

La finestra di configurazione di KsCD.

92
la multimedialità

KsCD in esecuzione.

Un altro programma interessante è Grip, che si attiva selezionando K Multimedia Suono.


Grip serve, oltre ad ascoltare la muscia, anche ad estrarre le tracce per trasformarle nel for-
mato MP3. Una volta inserito il CD audio nel lettore Grip visualizza nella sezione Tracks tutte
le tracce disponibili, che possono essere selezionate con un clic o eseguite con un doppio clic.

Grip in esecuzione ha individuato i brani presenti sul CD.

Per “ripping” s’intende la fase di copia da CD o da DVD dei file in esso contenuti. La
seconda fase, ossia la conversione del file audio in formato MP3, si chiama “encoding”.

Dopo avere selezionate le tracce audio con un doppio clic, fare clic sulla sezione Rip
dove sono presenti i seguenti pulsanti:
• Rip+Encode per lanciare sia il ripping che l’encoding delle tracce selezionate.
• Rip Only per lanciare solo il ripping.
• Abort Rip and Encode per terminare entrambe le operazioni.
• Abort Ripping only per terminare solo il ripping.
• DDJ Scn per inserire tutte le informazioni relative alle tracce selezionate nel data-
base DigitalDJ, se installato.

Ripping ed encoding in esecuzione con barra


di avanzamento in progresso.

93
Capitolo 4

L’opzione sulla destra Rip partial track serve per rippare una porzione della singola
traccia, così come specificato nei campi Start sector e End sector.

Nella parte inferiore della schermata Grip visualizza le barre di avanzamento relative
alle operazioni di ripping ed encoding. Per configurare Grip fare clic sulla scheda
Config dove sono presenti 7 sottosezioni che consentono d’impostare tutti i vari set-
taggi sia per l’ascolto del CD che per la fase di ripping. In caso di dubbio lasciare i
valori di default.
Un altro programma da segnalare è X Multimedia System che si attiva selezio-
nando K Multimedia Suono e poi facendo clic su Xmms.

X Multimedia System in esecuzione.

Interfaccia grafica e funzionalità sono veramente simili a WinAMP, il lettore forse più
noto che c’è in circolazione. Il menu di riferimento si attiva facendo clic in alto a sini-
stra. La seconda opzione Suona File attiva la finestra di dialogo Carica file(s) che
permette di esplorare il disco per trovare i file da suonare. La terza voce Suona
Directory consente, invece, di caricare un’intera directory per eseguirne i file musi-
cali (mp3, ma anche tracce audio). Le altre opzioni sono veramente semplici da com-
prendere e possono essere facilmente “testate” attivandole l’una dopo l’altra.

Caricamento delle tracce da un CD audio.

94
la multimedialità

• Ascoltare i DVD
Per l’ascolto di DVD, VideoCD, ma anche normali CD esiste il programma Xine atti-
vabile da K Multimedia Video. Il suo utilizzo è abbastanza semplice, in quanto è
anch’esso dotato di un’interfaccia standard basata su simboli internazionali.

Riprodurre DVD con Xine.

Xine permette di fare istantanee (snapshot) della schermata corrente e di salvarle nella
home directory dell’utente collegato in formato png.

4.2 Registrare suoni

Anche Mandrake ha il suo registratore di suoni, che si chiama Registratore di suoni. Per
attivarlo fare clic su K Cosa vuoi fare? Multimedia e poi selezionare Registra suoni.
L’interfaccia è scarna e per registrare qualcosa fare semplicemente clic sul pulsante rosso
Registra.

Il Registratore di suoni in corso di registrazione.

Notare che, tramite il pulsante Riproduci, è anche possibile ascoltare file in forma-
to WAV, che sono i file audio classici cioè quelli in formato onda. Attualmente sono
anche gli unici file che possono essere ascoltati indifferentemente con il lettore CD
del PC e con quello di un normale stereo. Solitamente questi file sono abbinati al
Registratore di suoni, ma possono essere anche ascoltati con il Multimedia Player. Per
attivarlo fare clic su K Multimedia Suono e poi su Noatun.

95
Capitolo 4

Il Multimedia Player.

4.3 La televisione sul nostro PC

Fa parte della miriade di software di Mandrake Linux 9.0 anche un programma


dedicato ad interfacciarsi con una scheda TV e che si chiama XawTV.
Per attivarlo selezionare K Multimedia Video. “Condicio sine qua non” per poter
attivare i programmi televisivi sul nostro PC è acquistare un scheda NTSC (acroni-
mo di National Television System Committee) o PAL (che sta per Phase Alterna-
tion Line). Ne esistono molte sul mercato ad esempio della Hauppauge o della
Pinnacle, alcune in grado di riprodurre anche la radio e dotate di telecomando ad
infrarossi. Si ricorda anche che per scoprire automaticamente tutte le stazioni pre-
senti bisogna eseguire il Mandrake Control Center, scegliere la categoria Hardwa-
re e poi fare clic su Schede TV. Qui è, poi, possibile lanciare il discovering auto-
matico.

Vedere la TV sul PC.

4.4 La grafica

Se esploriamo i programmi di grafica di Mandrake rimaniamo veramente sorpresi.


Selezioniamo K Multimedia Grafica e osserviamo la finestra che ci si apre: nella
mia installazione ho ben 15 programmi a disposizione! Si hanno applicazioni dedica-
te alla grafica pura come KPaint, altre unicamente destinate alla creazione e alla
manipolazione delle icone come Editor di icone e KIconEdit. Rimandiamo al terzo
capitolo per l’esame dei programmi di grafica presenti in KOffice e OpenOffice.

96
la multimedialità

• KPaint
Per attivarlo seguire il percorso appena indicato e fare clic su KPaint. È un classico
programma di grafica anche se bisogna dire che non è certo all’altezza di altre appli-
cazioni come OpenOffice Draw. Le carenze principali sono la limitatezza degli stru-
menti a disposizione per la grafica, la mancanza di una funzione di stampa e l’assen-
za di alcuni formati classici come TIFF e GIF per salvare i file.

Un disegno creato con KPaint.

• Programmi per la gestione delle icone


Può sembrare una banalità ma questi programmi stanno diventando sempre più
importanti. Infatti ogni applicazione che si rispetti ha una sua icona personalizzata e
la possibilità di crearne una ex-novo o da un’altra preesistente è un’esigenza reale.
Se selezioniamo K Multimedia Grafica e facciamo clic su Editor di icone appare
Iconedit 1.2.0, uno strumento nato per il desktop Gnome. Quando facciamo clic su
FILE Nuovo appare la schermata per definire le dimensioni dell’icona, che non pos-
sono essere superiori a 48 x 48 pixel. Nella parte centrale dello schermo viene quin-
di riportata la nostra icona ingrandita per permettere d’introdurre facilmente i vari
pixel, mentre sulla sinistra è visibile l’anteprima dell’icona in formato reale.

Creare icone con Iconedit.

97
Capitolo 4

Un altro programma simile al precedente per editare icone è KIconedit che si trova
nello stesso gruppo di applicazioni. Ha, tuttavia, qualche funzionalità in più come
quella di stampa, la possibilità di ridimensionare un’icona e di caricare immagini in
formato non ico.

KIconEdit al lavoro.

• Semplici istantanee
Per effettuare la stampa dello schermo o di una porzione di esso esiste un program-
ma che si chiama KSnapshot e che si attiva facendo clic su K Multimedia Grafica.
Non appena selezionato scatta l’istantanea dello schermo, la visualizza in anteprima
e ci permette subito di salvarla su un file con estensione png o di stamparla. Un’op-
zione importante è quella che consente di scattare la foto solo alla finestra conte-
nente il puntatore; in questo modo possiamo selezionare quanto abbiamo a video per
poi salvarlo su un file.

La finestra di dialogo di KSnapshot con l’anteprima.

98
la multimedialità

Una foto scattata con KSnapshot a tutto schermo.

La stessa foto della schermata precedente applicata


solo alla finestra che contiene il puntatore.

99
100
CAPITOLO 5

101
Capitolo 5

INTERNET E IL WEB
Ormai Internet e tutto ciò che riguarda la rete delle reti non fa più notizia, a
meno che non ci siano delle reali innovazioni che aiutino gli utenti a “fare qual-
cosa”. Questo qualcosa, però, deve essere in grado di migliorare la qualità della
vita delle persone o, almeno, deve dare l’impressione che la realtà che ci si trova
di fronte sia un po’ meno virtuale e un po’ più tangibile.
Le vendite in rete non riescono a decollare proprio per questo motivo: gli Italia-
ni non sono ancora così convinti né della sicurezza di un acquisto via Web (l’e-
terno problema dell’uso della carta di credito via Internet!), né che sia effettiva-
mente la stessa cosa acquistare di persona oppure direttamente dal PC. Vedere
un oggetto sul computer oppure toccarlo e “annusarlo fisicamente” prima di
comprarlo è sicuramente ben diverso. Quanto detto non ci deve fare considera-
re Internet come un qualcosa di sospetto e inutile: si tratta senza dubbio di una
delle più grandi invenzioni dell’ultimo ventennio, ma va collocata nella sua giu-
sta dimensione. La rete è e rimane la più grande fonte d’informazioni su cui
chiunque possa contare e anche lo strumento principe per eliminare drastica-
mente qualsiasi distanza.

5.1 La rete di Mandrake

La configurazione della connessione ad Internet è già stata descritta nel secondo


capitolo, nel paragrafo dedicato al Mandrake Control Center. A questo punto dovrem-
mo essere in grado di accedere senza problemi tramite il nostro ISP alla rete. Per
ragioni di comodità si consiglia d’inserire l’icona della nostra connessione preferita
sulla barra delle applicazioni (magari vicino al browser) procedendo come segue:
1. Selezionare K Rete Accesso remoto.
2. Fare clic su KPPP (Internet Dial-up Tool) e trascinare l’icona sulla barra delle
applicazioni.
In questo modo avremo un rapida scorciatoia per accedere al nostro service provi-
der.

• Chat line e altre applicazioni


Nel gruppo di programmi selezionabile dal menu K Cosa vuoi fare? Usare
Internet sono presenti sia programmi per chiacchierare su Internet che altri utili
a lanciare semplici messaggi o a creare pagine Web. Chiacchiera su IRC fa
parte del primo gruppo e serve proprio per aprire una chat line. IRC, su cui si
basa KSirc, e un protocollo diventato standard su Internet.

102
internet e il web

Per connettersi ad un server, dopo avere lanciato l’applicazione, fare clic su CON-
NESSIONI Nuovo Server o premere F2 e poi impostare il nome del server nel campo
“Server/Connessione rapida a” lasciando impostata la porta di default 6667. Una volta
avvenuta la connessione viene visualizzata una nuova finestra che mostra i messaggi
inviati dal server. Sulla stessa schermata per visualizzare una lista dei canali disponibili
digitare /list, per collegarsi ad un canale digitare /join seguito dal nome del canale ed infi-
ne /part per abbandonare un canale.

La finestra di KSirc.

È possibile, poi, utilizzare programmi per lanciare e ricevere messaggi istantanei. I


programmi di messaggistica immediata consentono di:
• Sapere chi è in linea.
• Inviare un messaggio immediato.
• Chiamare il computer di un contatto.
• Inviare un file.
• Scambiare messaggi immediati con un gruppo di amici.
• Giocare una partita con qualcuno.
• Essere informati della presenza di nuovi messaggi di posta elettronica su Hotmail.
AOL è forse il più noto e richiede come prina cosa la configurazione di un profilo
utente effettuando contemporaneamente la connessione al server di AOL all’indiriz-
zo http://aim.aol.com/aimnew/Aim/register.adp. Per eseguire il programma seleziona-
re K Rete Messaggi immediati e fare clic su Kit (AIM Client).

103
Capitolo 5

Creazione del profilo utente con AOL.

Un altro programma per la messaggistica è Licq. Anche questo caso viene richiesta
la registrazione di un nuovo account per poter procedere. Per accedere a Licq sele-
zionare K Rete Messaggi immediati e fare clic su Licq. Non c’è nulla di strano, per
colloquiare con altre persone è necessario comunicare la propria presenza e, quindi,
avere un’utenza sul server.

Un altro programma per la messaggistica: Licq.

Infine consideriamo il tool per la creazione di pagine Web del KDE: Quanta Plus. È
un prodotto creato per sviluppatori Web e per poterlo utilizzare è meglio esaminare
nel dettaglio la documentazione allegata o collegarsi al sito http://quanta.sourcefor-
ge.net. Per accedere a Quanta Plus selezionare K Rete Messaggi immediati e fare
clic su Quanta Plus.
104
internet e il web

Il programma per lo sviluppo di pagine HTML.

5.2 Navigare su Internet

Mandrake Linux è fornito di ben tre browser: Konqueror, Mozilla e Galeon. La scelta dell’u-
no o dell’altro dipende esclusivamente da come siamo abituati e da preferenze personali.

• Konqueror
Konqueror è il browser e file manager del KDE. Nonostante non abbia la fama di
Internet Explorer o Netscape, Konqueror consente di lavorare sia in locale che in rete
senza alcun problema. Per attivarlo fare clic sull’icona presente sul desktop con scrit-
to Home oppure su quella presente sulla barra delle applicazioni a forma di mondo.
Nel primo caso si posiziona in locale sulla home directory dell’utente corrente, nel-
l’altro caso, invece, visualizza la schermata di benvenuto a Mandrake Linux in moda-
lità web browser.

Il programma Konqueror.

105
Capitolo 5

La barra degli strumenti sotto il menu contiene icone standard, dove soprattutto le ultime
due sono particolarmente interessanti perché permettono di visualizzare i file come icone
(il default) o come una lista dettagliata. Facendo clic col tasto destro del mouse su tale
barra e selezionando la voce Configura le barre degli strumenti, appare una finestra
di dialogo dove è possibile modificare le caratteristiche delle barre, introducendo o toglien-
do icone.

Configurare la barra degli strumenti.

Selezionando il menu IMPOSTAZIONI Configura Konqueror è possibile modificare le


seguenti caratteristiche dell’applicazione:
File Manager. In questa sezione si può decidere se aprire ogni directory in finestre
separate oppure no (scheda Comportamento), se modificare i font (scheda Aspet-
to), se richiedere conferma nel caso di cancellazione di file (scheda Cestino) e, infi-
ne, con quali tipi di file consentire la visualizzazione con anteprima (scheda Ante-
prima).

Definire le impostazioni per le gestione di file e directory.

106
internet e il web

Associazione file. Qui è possibile associare ad ogni file con una certa estensione un
determinato programma. In questo modo facendo clic su quel tipo di file appare subi-
to l’applicazione specificata.

Definire le associazioni dei file.

Browser Konqueror. Nella scheda HTML vengono definiti alcuni elementi connessi
all’Web, come l’autocompletamento dei moduli Web, le caratteristiche dei cursori quando
sfiorano i collegamenti, il caricamento automatico delle immagini, eccetera. Poi, in Aspet-
to, vengono definiti elementi estetici legati ai font e ai colori. Nella scheda Java è possibile
abilitare i moduli di Java e la Java Runtime Machine. In Javascript si può abilitare Kon-
queror al support degli script Java. Infine la scheda Plugin serve ad abilitare il browser al
supporto dei plugin.
Navigazione avanzata. Se l’opzione abilita le parole chiave è selezionata è possibile digi-
tare una parola chiave qualsiasi nella barra degli strumenti per attivare automaticamente il
sito Internet appropriato (ad esempio digitare KDE). È anche possibile definire delle scor-
ciatoie per accedere più velocemente ad alcuni siti Internet; esiste una lista di parole chia-
ve predefinita.

Impostare le scorciatoie per l’accesso


ai siti Web.

107
Capitolo 5

Cookie. Qui si può abilitare Konqueror a supportare i cookie e a gestirli in maniera appro-
priata. Esistono diversi tipi di cookie ed è possibile specificare se nel computer possono
essere salvati tutti i tipi di cookie, alcuni tipi o nessuno. Se non si accetta nessun tipo di
cookie, è possibile che non si riesca a visualizzare alcuni siti Web e a sfruttare le funziona-
lità di personalizzazione (ad esempio per la visualizzazione di notiziari locali, bollettini
meteorologici o quotazioni di borsa).

Ricordiamo che alcuni siti Web memorizzano informazioni in un file di testo di piccole
dimensioni nel computer dell’utente. Questo file si chiama cookie.

Cache. Definisce le dimensioni della cache del browser. In pratica è possibile chiedere a
Konqueror di salvare le pagine web sul disco per consentire accessi successivi più veloci.
Proxi. Qui è possibile specificare un proxi durante le connessioni ad Intenet. I proxi servo-
no ad accedere più velocemente ad Internet e, se configurati come firewall, a proteggere
da attacchi di hacker. Chiedere al proprio ISP se utilizzare o no questo servizio.
Fogli di stile. Definisce i fogli di stile da utilizzare per le pagine HTML.
Crittografia. In questa sezione è meglio non mettere le mani e lasciare le impostazioni
di default. Qui vengono definiti i livelli di cifratura delle informazioni che vengono trasmes-
se da e verso il sever dell’ISP.

Abilitare la crittografia delle informazioni.

User agent. Qui si può abilitare oppure no l’opzione che manda informazioni ai siti visita-
ti circa il browser che utilizziamo. È consigliato non disabilitare l’opzione perché altrimenti
molto siti non sarebbero in grado di visualizzare correttamente le loro pagine.
Plugin Netscape. Qui vengono definiti i plugin di Netscape che Konqueror supporta.

Facendo clic su FINESTRA Mostra Pannello di navigazione o premendo F9 si visualizza


o si nasconde la struttura ad albero a sinistra che contiene le directory presenti su disco.

108
internet e il web

• Mozilla
Mozilla è un altro browser a disposizione degli utenti di Mandrake Linux. Dopo averlo lan-
ciato selezionando K Rete WWW e facendo clic su Mozilla, ci si rende subito conto che
il look and feel è del tutto simile a quello di Netscape Communicator. Questo perché è
distribuito in collaborazione con la Netscape ed è un diretto discendente di quel famoso
browser.

Mozilla, uno dei principali browser di Mandrake Linux.

Se conosciamo Netscape abbiamo, dunque, un enorme facilità ad utilizzare Mozilla.


Ad esempio le opzioni di configurazione sono presenti nel menu MODIFICA Prefe-
renze. Questa voce è una delle più importanti ed è suddivisa nelle seguenti schede:
Aspetto, che contiene le sezioni Caratteri, Colori, Temi e Lingue/Contenuti, si occu-
pa d’impostazioni estetiche e che comunque riguardano l’interfaccia grafica.

Definizione dell’aspetto del browser.

Navigator. Nella sezione Cronologia si definisce per quanto tempo il browser si deve
“ricordare” delle pagine visitate. In Lingue viene definita la lingua predefinita di Mozil-
la. Applicazioni si occupa di abbinare determinate applicazioni ai file che potrebbe visua-

109
Capitolo 5

lizzare il browser. Smart Browsing serve a definire parole chiave o ad abilitare il completa-
mento automatico nella barra degli indirizzi. Ricerche su Internet definisce il motore di
ricerca. Infine Scaricamenti definisce il comportamento del browser quando vengono fatti
download da Internet.

Il motore di ricerca di default.

Composer. Questa scheda consente di specificare le impostazioni per salvare i file e per
editare le tabelle. Questi settaggi si applicano ad ogni documento che si crea.
Posta e gruppi di discussione. Qui vengono definite le impostazioni per l’inoltro e il rice-
vimento dei messaggi di posta elettronica. Privacy e sicurezza. Nella sezione cookie
Cookie si può abilitare Mozilla a supportare i cookie e a gestirli in maniera appropriata. In
Immagini si definisce come si comporta il browser nei confronti delle immagini visualiz-
zate nei vari siti: si può anche impostare l’opzione che impedisce di scaricare le immagini
da Internet. Nelle schede successive vengono definite alcune impostazioni di sicurezza che
riguardano password, l’autenticazione tramite SSL (Security Socket Layer), i certificati di
sicurezza e la gestione dei CRL (Lista di Revoca dei Certificati).

Gestione di SSL.

110
internet e il web

Avanzate. Qui sono presenti alcune funzioni che aiutano ad interpretare le pagine
Web. È possibile abilitare Java e JavaScript, definire le dimensioni della cache su disco,
indicare il proxy, migliorare la velocità e la compatibilità delle pagine HTML, stabilire
se installare automaticamente aggiornamenti e nuovi programmi ed definire il comporta-
mento della rotellina del mouse, se presente.

• Galeon
Dulcis in fundo Galeon, il browser predefinito della piattaforma Gnome. Per attivarlo sele-
zionare K Rete WWW. L’interfacci grafica è indubbiamente diversa dalle precedenti
anche se si tratta di un browser che, comunque, è stato derivato da Mozilla e quindi da
Netscape.

Il browser Galeon.

Non lo esaminiamo nel dettaglio, in quanto è simile ai precedenti. Basti sapere che le
impostazioni principali vengono fatte in IMPOSTAZIONI Preferenze.

5.3 La posta elettronica

Da quando Tiscali si è scatenata sul mercato le connessioni ad Internet e l’utilizzo della


posta elettronica sono diventati privi di canone. Questo non significa che si può surfare sul
Web o mandare mail gratuitamente, ma semplicemente che l’unica spesa da affrontare è
legata alla bolletta telefonica, ossia al costo della chiamata che dobbiamo fare per ottene-
re la connessione più i vari scatti che dipendono ovviamente da quanto tempo rimaniamo
connessi. I programmi di posta elettronica si trovano seguendo il menu K Rete Posta. Qui
esamineremo i due principali, ossia KMail e Mozilla Messenger, anche se ne esiste un terzo
altrettanto valido che si chiama Ximian Evolution.

111
Capitolo 5

• KMail
KMail è il programma di posta predefinito per il desktop KDE.

KMail.

Prima di tutto bisogna configurare l’applicazione in IMPOSTAZIONI Configura KMail. Ana-


lizziamo le varie opzioni. Nella scheda Identità indicare nel campo Nome il nome com-
pleto, ad esempio, Mario Rossi. Il campo Organizzazione non è obbligatorio, mentre si deve
inserire il proprio indirizzo di posta elettronica nell’apposito campo.
In Rete bisogna impostare i valori relativi agli account di uscita e di entrata. Facciamo clic
sulla scheda Spedizione e poi sul pulsante Aggiungi. Nella schermata che appare sele-
zionare SMTP come protocollo di trasporto e poi impostare i campi seguenti:
1. Nome, indicare il nome dell’ISP.
2. Host, indicare il nome del server indicatoci dal provider (ad es. mail.inwind.it).
3. Porta, lasciare il valore di default (la porta 25).
4. Selezionare l’opzione Il server richiede autorizzazione.
5. Nome utente (login), indicare quello fornito dall’ISP.
6. Password, indicare quella definita con il fornitore del servizio.

Impostazioni per la posta in uscita.

112
internet e il web

Ora facciamo clic sulla scheda Ricezione e poi sul pulsante Aggiungi. Nella scher-
mata che appare selezionare POP3 come tipo di account e poi impostare i campi
seguenti:
1. Nome, indicare il nome dell’ISP.
2. Nome utente (login), indicare quello fornito dall’ISP.
3. Password, indicare quella definita con il fornitore del servizio.
4. Host, indicare il nome del server indicatoci dal provider (ad es. popmail.inwind.it).
5. Porta, lasciare il valore di default (la porta 110).
6. Selezionare le opzioni Conserva la passord POP nel file di configurazione e
Elimina la posta dal server. Selezionare anche Filtra la posta sul server se
si vuole evitare che certi messaggi, particolarmente pesanti, ci tengano attaccati al
telefono per ore (qui specificare anche la dimensione dei messaggi da filtrare).

Nel caso di messaggi in uscita è anche possibile richiedere conferma prima di spedirli e
di appoggiarli nella cartella Posta in uscita, anziché mandarli al destinatario diretta-
mente. Nel caso di messaggi in arrivo si può abilitare un segnale acustico e/o visivo.

Impostazioni per la posta in entrata.

Infine la scheda Sicurezza serve a definire alcune misure per evitare intrusioni
esterne. In particolare nella scheda Generale non è necessario selezionare
nessuna opzione, mentre in OpenPGP potrebbe essere opportuno scegliere
una forma di crittografia per garantire la nostra privacy.
Per utilizzare KMail è sufficiente utilizzare le icone presenti sulla barra degli stru-
menti, che esaminiamo di seguito da sinistra a destra.
• Nuovo messaggio serve a creare, appunto, una nuova mail da mandare all’e-
sterno. Nella finestra che appare impostare il campo A: (destinatario) e CC: per
inviare in copia a qualcun altro lo stesso messaggio.
Impostare l’Oggetto e il testo in basso. Se si fa clic sulla graffetta è possibile
includere uno o più file da mandare con la mail corrente. Prestare attenzione

113
Capitolo 5

a non inviare messaggi con allegati troppo voluminosi per evitare di attendere
troppo tempo per l’uscita della mail (e il tempo in questo caso è denaro) e per non
fare cattive sorprese ai destinatari (che dovrebbero anch’essi attendere a lungo
prima di leggere l’agognata comunicazione).

Inviare un nuovo messaggio.

• Salva con nome, serve a salvare su disco un messaggio per poi leggerlo, ad esempio,
con OpenOffice Writer.
• Stampa, per stampare il messaggio selezionato.
• Controlla la posta in, per fare un check della posta arrivata nel frattempo sul server
POP.
• Rispondi, per rispondere direttamente al mittente della mail selezionata.
• Rispondi a tutti, per rispondere a tutte le persone che sono in copia della mail cor-
rente.
• Inoltra, per inviare la mail selezionata al destinatario.
• Elimina, per cancellare la mail corrente.
• Cerca messaggi, per fare una ricerca tra i messaggi ricevuti o mandati in base a
determinati criteri.

Il motore di ricerca dei messaggi.

114
internet e il web

• Rubrica indirizzi, per accedere alla rubrica che contiene gli indirizzi che a
poco a poco abbiamo editato.
• Precedente non letto, per posizionarsi sul messaggio precedente non anco-
ra letto.
• Successivo non letto, per posizionarsi sul messaggio successivo non ancora
letto.

• Mozilla Messenger
Mozilla Messenger è il programma di posta elettronica fornito con il browser
Mozilla. Una volta eseguito il programma, se ancora non è stato fatto, viene
visualizzato il pilota automatico per la creazione di un nuovo account.
1. Selezionare Account di posta e fare clic sul pulsante Avanti.
2. Inserire il nostro nome e cognome e inserire il nostro indirizzo di posta
indicatoci dall’ISP e fare clic sul pulsante Avanti.
3. Specificare le informazioni sul server: selezionare l’opzione POP, in Server in
ingresso indicare il nome del POP (es. popmail.inwind.it), in Server in usci-
ta indicare il nome del server SMTP (es. mail.inwind.it) e fare clic sul pulsan-
te Avanti.
4. Indicare il nome utente e fare clic sul pulsante Avanti.
5. Specificare il nome dell’account (es. InWind) e fare clic sul pulsante Fine.

Il sommario finale del pilota per la creazione di un nuovo account.

Per modificare queste impostazioni o aggiungere un altro account di posta selezio-


nare MODIFICA Configurazione account posta.

115
Capitolo 5

La finestra di gestione degli account.

Anche in questo caso le icone della barra degli strumenti consentono di esegui-
re tutte le operazioni principali del programma di posta elettronica. In particola-
re: Scarica msg si collega al POP per scaricare i messaggi, Componi crea un
nuovo messaggio (si ha anche la possibilità di inviare in copia nascosta, ossia in
bcc), Rispondi permette di rispondere a chi ci ha scritto, Rispondi a tutti
manda la mail a tutti coloro che erano in copia nella mail corrente, Inoltra invia
la mail, Archivia permette di spostare la mail nel nostro archivio che possiamo
organizzare con più cartelle per maggiore ordine, Prossimo effettua il posizio-
namento sul messaggio successivo, Elimina cancella il messaggio corrente,
Stampa effettua la stampa del messaggio selezionato e Stop blocca l’invio o la
ricezione della mail.

Inviare una mail con Mozilla.

116
internet e il web

5.4 Il Web Server di Linux

Per creare un sito Web basato su Linux è necessario disporre dei seguenti componenti:
• Un computer abbastanza potente da reggere anche numerosi utenti che accedono con-
temporaneamente.
• Una distribuzione di Linux. Mandrake Linux 9.0 va, dunque, benissimo.
• Un Web Server.
• Un tool di sviluppo orientato al Web (opzionale).
• Un Internet browser.
Il Web server di riferimento può essere uno qualsiasi supportato da Linux, anche
se è caldamente consigliato l’utilizzo di Apache, che è distribuito in forma gra-
tuita sia come binario che come codice sorgente (fatevi una surfatina su
http://www.apache.org). In ogni caso é presente anche all’interno dell’installazio-
ne di Mandrake Linux 9.0, anche se non è la versione più recente.
Il tool di sviluppo e/o il linguaggio da utilizzare sono opzionali, nel senso che non
sempre é necessario utilizzarli. Solo nel caso in cui si debba creare un sito con
pagine dinamiche e che magari accedono ad un database non è possibile pre-
scindere da essi. Java, perl e magari vbscript se diventerà compatibile con il
mondo Linux (eventualità molto remota), sono alcuni strumenti da considerare.
Come browser la versione di Mozilla fornita con Linux è più che sufficiente.
Dimenticavamo un piccolo particolare: é necessaria una connessione ad Inter-
net o permanente tramite ADSL o tramite service provider ed avere acquistato
un dominio presso l’ente nazionale che fa riferimento alla Internic americana.
Quello che accadrebbe senza questa registrazione é l’impossibilità di raggiunge-
re l’URL che contiene quel dominio; ad esempio sun.it non é altro che il nome
di un dominio, mentre ciò che c’é prima (www o altro) é personalizzabile.

L’Internic é la società che consente di registrare un dominio e di renderlo raggiungibile


da tutto il mondo (abbinando il nome del dominio agli indirizzi IP forniti e controllando
che non esista già un nome uguale).

In ogni caso è sempre possibile fare un test di connessione ad un sito creato da noi
digitando nella URL l’indirizzo IP della macchina (il default è 127.0.0.1) al posto del
dominio completo (ad esempio www.mySrv.it).

• Il server Apache
Come già anticipato Apache è il Web server migliore per Linux e ci sentiamo di
sottoscrivere questa affermazione. A questo riguardo alcuni numeri sulla sua dif-
fusione possono essere molto interessanti: al momento copre più del 47% di
tutti i domini Web e ad ora ci sono circa 750.000 server Apache in funzione nel
mondo (fonte Netcraft survey, www.netcraft.com).
117
Capitolo 5

Originariamente Apache nacque come un componente aggiuntivo del Web ser-


ver NCSA HTTPd (tuttora supportato e anch’esso gratuito) e successivamente
divenne un progetto a se stante. Il suo nome, infatti, significa letteralmente
un’aggiunta (a patchy = Apache).

• Installazione di Apache
Per installarlo e configurarlo è opportuno seguire le specifiche abbinate, che
sono piuttosto chiare e rigorose. Il modo più semplice per installarlo è utilizzare
il Mandrake Control Center che nella sezione Gestione software, icona
Installa Software permette di selezionarlo, qualora non sia stato ancora fatto.
Altrimenti, per i più esperti, si può fare riferimento al setup del pacchetto RPM
(è comunque anche possibile scaricare il tar file, scompattarlo e compilare diret-
tamente il codice sorgente).
L’installazione deve essere effettuata dalla riga dei comandi tramite il comando
RPM. Si tratta di loggarsi come root e di digitare quanto segue: # rpm -U -
v -h <apacheVer>.rpm. <apacheVer> è il nome effettivo della ver-
sione da installare, -U significa modalità aggiornamento (Upgrade) che disinstal-
la la vecchia versione solo se presente e poi installa quella nuova, -v visualizza
ciò che RPM sta facendo e, infine, -h visualizza cinquanta cancelletti l’uno dopo
l’altro per evidenziare che il programma sia attivo (modalità hash).
I file di Apache vengono estratti in determinate directory di Linux. In particolare:
• Il modulo httpd.conf destinato a configurare Apache viene installato in
/etc/httpd/conf.
• Gli script di avvio del sistema si trovano ovviamente in /etc/rc.d/init.d, dove sono
contenuti tutti gli script di avvio e chiusura dei processi. Questi script sono uti-
lizzati in automatico da Linux, ma sono eseguibili anche direttamente dall’u-
tente dalla linea di comando.
• In /home/httpd vengono installate le icone del server, i programmi CGI e HTML.
• La documentazione si trova in /usr/doc e /usr/man.
• Il kernel di Apache, eseguibile del server e altri programmi di utilità, sono
immagazzinati in /usr/sbin.
• Infine in /var/log/http si trovano i file di log del server di default: access_log e
error_log.
Se non si tratta di prima installazione, ma di un aggiornamento, tutti i vecchi file
vengono rinominati in .rpmnew. Ad esempio httpd.conf diventa httpd.conf.rpm-
new.

118
internet e il web

Dove trovare i file di configurazione di Apache.

• Configurazione di Apache
Il file di configurazione è ora uno solo, httpd.conf, i vecchi access.conf e
srm.conf non hanno più rilevanza.
Per effettuare la configurazione bisogna editare il file httpd.conf e impostare
alcune direttive al suo interno, al massimo una per ogni riga. Le direttive di con-
figurazione si possono suddividere in:
• Quelle che fanno parte dell’ambiente globale (global environment), che con-
trollano l’attività del server Apache.
• Quelle che definiscono i parametri del server principale o di default e che
rispondono a richieste che non sono gestire dal virtual host.
• Quelle che definiscono le impostazioni per il virtual host, che gestisce i domi-
ni virtuali e che vedremo più avanti.
In alcuni casi vengono create delle vere e proprie sezioni con tanto di tag, deli-
mitati da parentesi angolari e che contengono determinate direttive. In questo
modo ciò che è racchiuso all’interno dei tag si applica solo alla directory pre-
sente nella sezione e non hanno, quindi, valore generale.
Ad esempio:
<Directory /myPath/docs/new>
direttiva1 opzione
direttiva2 opzione
direttiva3 opzione
</Directory>
I valori di default possono essere, per lo più, mantenuti soprattutto se l’installa-
zione è avvenuta facendo riferimento alle directory predefinite.

119
Capitolo 5

Il file httpd.conf.

Esaminiamo ora alcune direttive che potrebbe essere necessario modificare.

ServerType. Si riferisce al tipo di server che si vuole mettere in piedi: standalo-


ne o inetd. E’ consigliabile mantenere sempre il valore standalone per incremen-
tare le prestazioni ed evitare eccessivi tempi di risposta. Il valore inetd, infatti,
determina l’apertura del server in seguito alla ricezione di una richiesta HTTP e
la sua chiusura dopo avere soddisfatto la richiesta. Impostare quindi: ServerType
standalone.

ServerRoot. Definisce il percorso in cui si trovano i file di configurazione e le


risorse di Apache.
Deve essere impostato con ServerRoot “/usr/local/apache”, se l’installazione è avve-
nuta direttamente dal sorgente e ServerRoot “/etc/httpd” se è avvenuta da RPM.

Port. Definisce la porta sulla quale il server deve lavorare. L’impostazione pre-
definita è sulla porta 80 (Port 80), ma è possibile specificare qualsiasi altra
porta. Questo può essere fatto per ragioni di sicurezza o per testare l’applica-
zione prima di aprila al pubblico (gli utenti, infatti, per poter accedere all’appli-
cazione devono conoscere la porta su cui lavora il Web server).

User e Group. Queste direttive definiscono l’utente e il gruppo, presenti rispet-


tivamente nei file /etc/passwd e /etc/group, che il Web server deve utilizzare per
lavorare. Il consiglio è di lasciare i valori di default, User nobody e Group nobody,
o di definire un utente e un gruppo che abbiano solo le autorizzazioni richieste
dall’applicazione. Per intenderci se l’utente e/o il gruppo di riferimento hanno
possibilità distruttive (ad es. root) o di fare particolari aggiornamenti si aprireb-

120
internet e il web

be la possibilità a qualche hacker di danneggiare il sistema.


Il caso classico è di un bel rm -rf / che determina la cancellazione in cascata di
tutto ciò sotto la directory radice, in parole povere tutti i file system compresa
l’installazione del sistema operativo.

ServerAdmin. Si riferisce all’indirizzo di posta elettronica del Web master, che


viene visualizzato a qualsiasi visitatore avesse dei problemi con l’applicazione che
gira su quell’Apache.

ServerName. Deve essere un nome DNS (Domain Name System) completo e


valido per la propria rete e per Internet, se l’applicazione è aperta a tutto il
mondo. Ad esempio: ServerName www.mySrv.it.

DocumentRoot. Questa direttiva definisce la directory di primo livello dove si tro-


vano i documenti che si mettono a disposizione degli utenti. Il default è Docu-
mentRoot /home/httpd/html.

UserDir. Definisce il percorso relativo alla home directory locale di un utente qual-
siasi. In questo modo ogni utente avrà la propria directory in cui può mettere i pro-
pri file html pubblici. I documenti si troveranno in http://servername/<username>.

DirectoryIndex. Si riferisce al file indice che viene eseguito non appena l’utente
si collega (DirectoryIndex index.html).

• Virtual host
Il virtual host è uno dei meccanismi più interessanti di Apache perché consente
di sfatare il mito “un solo computer per un solo dominio”.
In altre parole è possibile creare uno o più domini virtuali sulla stessa macchina,
mettendo a disposizione degli utenti più indirizzi Web e definiti all’interno dello
stesso server Apache. Per realizzare questo meccanismo è possibile utilizzare due
metodi alternativi. Il primo si basa su più indirizzi IP attribuiti alla stessa macchina,
il secondo su un unico indirizzo IP condiviso.

Il metodo basato su un solo indirizzo


E’ il metodo più innovativo ed é supportato solo dai browser più moderni che sono
compatibili con HTTP 1.1. In questo caso si tratta d’impostare una nuova sezione
chiamata VirtualHost nel file httpd.conf indicando l’indirizzo IP di riferimento e le
direttive richieste; deve essere creata una sezione per ogni indirizzo Web. Vediamo
un esempio:
#
<VirtualHost 199.333.444.11>
ServerName www.mySrv.it
121
Capitolo 5

DocumentRoot /home/mySrv/htmdocs
ErrorLog logs/error_log
</VirtualHost>
#
<VirtualHost 199.333.444.11>
ServerName www.pcp.it
ServerAlias pcp
DocumentRoot /home/pcp/htmdocs
ErrorLog logs/error_log
</VirtualHost>
#
In questo caso abbiamo due nomi di dominio mySrv.it e pcp.it, che devono essere
entrambi registrati. L’indirizzo IP è unico (199.333.444.11), mentre l’applicazione o
comunque i file HTML che devono essere visualizzati sono presenti in percorsi
diversi.

Si osservi la direttiva ServerAlias che è relativa solo al dominio pcp.it. In questo caso si è
voluto definire un alias per rendere più veloce l’accesso alla URL. Digitando solo pcp l’u-
tente può così accedere velocemente alla macchina.

Il metodo basato su più indirizzi


Si tratta del metodo piú tradizionale, compatibile con tutti i browser. E’ del tutto
simile al metodo precedente, soltanto che è necessario che la macchina abbia
più indirizzi ad essa abbinati nel DNS e che questi vengano specificati nel file di
configurazione di Apache nelle singole sezioni VirtualHost. Anche in questo caso
vediamo un esempio:
#
<VirtualHost 199.333.444.11>
ServerName www.mySrv.it
DocumentRoot /home/mySrv/htmdocs
ErrorLog logs/error_log
</VirtualHost>
#
<VirtualHost 199.333.444.22>
ServerName www.pcp.it
DocumentRoot /home/pcp/htmdocs
ErrorLog logs/error_log
</VirtualHost>
#

122
internet e il web

Tutte le direttive specificate all’interno della singola sezione sono relative solo ad essa.
Ogni direttiva che non viene specificata eredita le impostazioni definite nella sezione glo-
bal environment del server Apache.

• Accensione e spegnimento del server


L’eseguibile httpd (solitamente posizionato in /usr/sbin) ammette n opzioni per avviare e
fermare il server. Il metodo migliore, tuttavia, è utilizzare lo script presente in /etc/rc.d/init.d
che ha lo stesso nome (httpd), che è uno script di shell che richiama, poi, l’eseguibile prin-
cipale.
Le opzioni utilizzabili sono le seguenti:
1. start, per avviare Apache.
2. stop, per fermare Apache.
3. reload, per chiedere al server di rileggere il file di configurazione dopo una modifica su
httpd.conf.
4. restart, per fare uno stop e start in sequenza.
5. status, per vedere se il server è in funzione e gli identificativi dei processi in esecu-
zione.

Se si vuole avere un report accurato di Apache mentre è in esecuzione su Mandrake


digitare sul prompt /etc/init.d/httpd extendedstatus

Il rapporto dettagliato estratto con l’opzione extendedstatus.

123
124
CAPITOLO 6

125
Capitolo 6

DIETRO LE QUINTE
In questo capitolo cominciamo a soffermarci su alcuni aspetti meno evidenti e che
fanno parte del cosiddetto retroscena di Linux. Proprio per questo motivo non utiliz-
zeremo le interfacce grafiche di Madrake Linux ma ci baseremo su istruzioni digitate
direttamente sul terminale o sulla console.

Tutti i comandi riportati in questo capitolo devono essere digitati nell’applicazione Ter-
minale di Mandrake Linux, che si può aprire direttamente facendo clic sull’icona a forma
di monitor, a destra del bottone di avvio di KDE.

6.1 L’organizzazione dei file

Per la maggior parte degli utilizzatori di un sistema operativo il rapporto con il file
system è asettico, quasi non ci si rende conto della sua presenza, ma come
vedremo conoscerne le caratteristiche basilari non solo è fondamentale ma
consente di evitare errori e di muoversi meglio all’interno del sistema.
La sua definizione è banale: il file system è il metodo in base al quale vengo-
no organizzate le informazioni sui dischi. Il suo ruolo e la sua struttura, tuttavia,
non sono altrettanto banali. Si tratta di un strumento fondamentale il cui corret-
to funzionamento evita di perdere informazioni, di ottimizzare le performance
durante l’I/O e di avere la sicurezza che i file vengano salvati correttamente nelle
directory scelte e successivamente ritrovati nelle stesse.

Il file system è la struttura generale in cui vengono denominati, archiviati ed orga-


nizzati i file.

• Quale file system?


Nel corso del tempo le esigenze relative ai file system sono cambiate, in quan-
to le geometrie dei dischi e le loro capacità di memorizzazione si sono modifi-
cate. Inoltre la necessità di gestire file sempre più grandi, file con nomi lunghi e
dischi rigidi anche di parecchi GigaByte, ha determinato la necessità di disporre
di file system avanzati e più sofisticati.
In particolare Linux ha assunto, sin dal suo primo varo, connotati di sistema ope-
rativo multi tasking, infatti è stato sin dall’inizio in grado di gestire numerosi pro-
cessi che interagivano tra di loro e processi che rimanevano attivi per moltissi-
mo tempo.
Mentre gli altri sistemi operativi si trovavano ancora a lottare con gli standard e
venivano definite talmente tante versioni differenti di file system da creare con-

126
dietro le quinte

fusione, Linux riuscì ben presto ad imporsi con il suo standard accettato dalla
maggior parte delle distribuzioni. In effetti messa da parte la prima esperienza
di file system il famoso MINIX, chiamato così perché le prime versioni di Linux
giravano su macchine minix, lo standard divenne EXT2FS o, com’è stato anche
chiamato, FSSTND.
FSSTND (acronimo di File Systems STaNDard) ancora oggi la fa da padrone nel
mondo Linux, pur se si sta via via affermando un file system più flessibile e sca-
labile. Il successore di FSSTND, chiamato FHS (acronimo di Filesystem Hierarchy
Standard), è in continua evoluzione e sta avendo molto successo grazie al gran-
de vantaggio di supportare anche altri sistemi operativi.

• Flessibilità di Linux
Fermo restando che EXT2FS è il file system che ha imposto uno standard de
facto, in quanto appositamente progettato per Linux, non bisogna dimenticare
che Linux è in grado di utilizzare più file system contemporaneamente. Questa
sorprendente flessibilità si traduce nella possibilità di scegliere un qualsiasi
metodo di organizzazione per distribuire i file sui vari dispositivi di memorizza-
zione di Linux. In altre parole è possibile utilizzare il file system FAT e FAT32
(anche detto VFAT) del DOS e di Windows 9x su floppy disk, mentre il più velo-
ce EXT2FS è attivo sui dischi rigidi del computer. Ad esempio se sul nostro PC
abbiamo installato sia Windows 9x o XP che Mandrake Linux, una volta entrati
su Linux possiamo vedere anche le partizioni su cui risiede Windows tramite un
mount delle stesse. Per fare questo è sufficiente creare una directory di appog-
gio e poi fare il mount su di essa della partizione FAT. Procedere come segue:
loggarsi come root: su -
creare la directory di appoggio: mkdir /DOS1
procedere al mount (dove l’opzione –t indica il tipo di file system): mount -t
vfat /dev/hda2 /DOS1
Per rendere permanente il mount precedente è necessario editare il file
/etc/fstab, che verrà poi riletto al riavvio della macchina. Un’alternativa al mount
diretto è sempre comunque l’editazione del file /etc/fstab e la sua rilettura diret-
ta. Vediamo come procedere con riferimento ad un floppy e ad un CD-ROM.
Come al solito bisogna prima creare le directory di appoggio, ad esempio, con
mkdir /CD-ROM e mkdir /floppyA e poi editare il file /etc/fstab, che conserva i
puntamenti a tutti i mount che Linux dovrà sempre montare ad ogni riavvio del
sistema. Il riferimento all’unità fisica CD-ROM è /dev/cdrom, mentre per il floppy
si tratta di /dev/fd0.
In ogni caso, prima di modificare fstab provare manualmente il mount, dopo
avere inserito CD e floppy nei rispettivi drive:

mount /dev/cdrom /CD-ROM

127
Capitolo 6

mount -t msdos /dev/fd0 /floppyA

In fstab, inoltre, digitare:

/dev/cdrom /CD-ROM iso9660 user, noauto, ro 0 3


/dev/fd0 /floppyA msdos user, noauto 0 0

Per il significato delle diverse colonne vedere i paragrafi successivi. Si tenga comunque pre-
sente che la terza colonna si riferisce al tipo di file system adottato ed in particolare
iso9660 è un file system di sola lettura che di solito viene adottato per montare i CD-ROM.

Per rileggere subito il file fstab digitare mount -a.

Montare unità CD e DVD.

• Un file system in sola lettura


Essendo i CD-ROM ormai da tempo entrati nella pratica quotidiana sono stati
creati file system ad hoc per meglio gestirli.
Questi particolari file system sono stati creati per i CD-ROM ma anche i DVD
sono in grado di utilizzarli ed è anche possibile applicarli ad un file di un hard
disk per verificare un’immagine prima di avviare il famigerato, e ora quasi fuori
legge, masterizzatore.
Di seguito diamo una panoramica dei file system di sola lettura più noti.
• High Sierra. Si tratta di uno dei più giovani standard per i formati CD-ROM, molto
semplice nelle caratteristiche e per questo ancora ampiamente supportato.
• Rock Ridge. Presenta il vantaggio di gestire i nomi dei file lunghi e i permes-
si, cosa che non fanno tutti i file system in sola lettura.
• iso9660. È un file system compatibile con gli standard dettati dall’Internatio-
nal Standards Organisation, che viene molto di frequente utilizzato per gestire

128
dietro le quinte

i file system in sola lettura di Linux. iso9660 gestisce sia le estensioni High
Sierra che quelle Rock Ridge.
• Joliet. È un file system definito da Microsoft, supportato da Linux nei kernel
2.0.34 o superiori.

• Il file /etc/fstab
Questo file è già stato in parte esaminato, ma sicuramente non guasta essere più
precisi a riguardo. Sappiamo che è un file ASCII che definisce tutti i punti di
mount e che consente di accedere alle varie partizioni presenti nel nostro siste-
ma. È facilmente editabile con qualsiasi text editor, anche se bisogna prestare
molta attenzione alle modifiche apportate.
Eventuali errori renderebbero infatti non accessibile il file system in questione o addirittu-
ra non si potrebbe avviare Linux se il problema riguardasse il file system di root. Un vali-
da strategia è sempre quella di fare il salvataggio delle precedente versione manualmente
o utilizzare il Revision Control System (dare un’occhiata alla pagina del man dedicata a
rcs) che gestisce il versioning. L’unico modo per evitare di fare danni nel file fstab è quel-
lo di conoscerlo nel dettaglio e sapere esattamente che cosa significa ogni campo in esso
presente. Il file fstab, che è modificabile solo da root, si presenta come una tabellina con-
tenente 6 colonne, separate tra loro da tabulazioni.

Il file fstab.

• Esame di fstab
La prima colonna (device) contiene il riferimento alla partizione che fisicamente risiede
su un disco del computer. Così ad esempio hda1 sta per prima partizione di un certo hard
disk denominato had, hda2 è la seconda partizione dello stesso disco, hdb1 e la prima
partizione del disco hdb, ecc. L’ordine di esposizione dei vari file system in fstab dipende
dall’ordine in cui devono essere montati gli stessi. Ad esempio non avrebbe senso mon-
tare /usr/src prima di /usr che ne costituisce la radice.

129
Capitolo 6

Esistono tuttavia casi particolari che meritano di essere esaminati. In particolare


cdrom punta ovviamente al CD-ROM, mentre fd0 si riferisce alla prima unità floppy,
fd1 alla seconda e così via. /proc si riferisce ad un particolare file system attivato
direttamente dal kernel di Linux per fornire informazioni riguardanti il sistema agli
utenti ed ai programmi degli utenti. Le informazioni contenute in /proc alimentano
anche alcune utility particolari come netstat, free, top, che hanno carattere pretta-
mente sistemistico.
La gestione di /proc viene effettuata in maniera prettamente dinamica da Linux allo-
cando e deallocando spazio a seconda delle esigenze di sistema.
La seconda colonna (mountpoint) fa riferimento alla directory di mount di ciascuna
partizione. Ad esempio il floppy identificato dal device fd0 viene montato sulla direc-
tory /floppyA.
Si tratta di un abbinamento molto importante perché consente agli utenti di accede-
re ai vari file system (partizioni) con un semplice comando di posizionamento sulla
directory di mount (ad es. cd /usr/src).
La terza colonna definisce il tipo di file system che quella partizione utilizza.
Nell’esempio vengono utilizzati vari file system. EXT2FS (ext3) è relativo alle partizioni
presenti su disco rigido, mentre FAT32 (vfat) e NTFS (ntfs) sono rispettivamente relative
ad una partizione FAT ed ad una NT, creata da Windows XP. Il file system iso9660 è quel-
lo standard per i CD-ROM mentre proc non è un vero e proprio file system, ma è un
place holder che indica che /proc non è un file system utilizzabile dagli utenti.
Infine swap non è certo un file system, ma un’indicazione che quella determinata
partizione di disco viene utilizzata come area di swap, ossia come area di appoggio
per le operazioni di swap della memoria. In altre parole il sistema operativo ha biso-
gno di una locazione fisica non formattata (hda3 in questo caso non contiene alcun
file system, ma raw device) per appoggiare dati e informazioni che vengono caricate
in memoria. Si ricordi che anche un file fisico (non solo partizioni di disco) può esse-
re utilizzato come area di swap; in questo caso è sufficiente specificare nella prima
colonna path e nome del file al posto di /dev/hda3 (ad es. /work/swapfile1.swp).
La quarta colonna (options) definisce alcune opzioni relative al file system. Defaults
non definisce altro che le impostazioni standard; rw e ro indicano rispettivamente se
il file system è in lettura/scrittura o sola lettura; user definisce che il mount e unmount
del dispositivo può essere fatto da qualsiasi utente; noauto indica che il mount del file
system non deve essere fatto automaticamente allo start-up di Linux e questo per
evitare che vengano segnalati errori causati dalla mancanza del supporto nel device
(ad es. CD-ROM o floppy).
La quinta colonna (dump) riguarda le operazioni di backup. Il comando dump, ad
esempio, confronta il valore specificato nella quinta colonna con il numero di giorni
trascorsi dall’ultimo backup del file system.
Questo al fine d’informare l’amministratore di sistema se è necessario effettuare un
nuovo backup del file system, essendo troppo vecchio il precedente. I file system su
cui non si deve fare mai il backup hanno questo valore impostato a zero o non impo-

130
dietro le quinte

stato. La sesta e ultima colonna (fsck) indica se e in che ordine i file system devono
essere verificati con il comando fsck in fase di boot del sistema operativo. In partico-
lare il valore zero o inesistente inibisce il file system check (fsck). Il valore uno è sem-
pre riferito al file system di root, dove risiede Linux, e indica che quella è la prima veri-
fica da fare. Se due file system sono contrassegnati dallo stesso valore significa che
la verifica viene fatta in parallelo.
La parallelizzazione dei controlli ha senso solo su due dischi differenti, non su due
partizioni dello stesso disco; in quest’ultimo caso il lavoro delle testine non verrebbe
ottimizzato.

• Come creare un file system


Linux supporta un numero estremamente elevato di file system e questo, se in
alcuni casi può ingenerare confusione, è testimone dell’estrema flessibilità del
sistema operativo. Come ormai sappiamo EXT2FS è il file system che di solito
viene utilizzato anche perché è stato creato appositamente per Linux.
Il comando che si deve eseguire per creare un file system è mkfs (quello che in
UNIX System V è newfs) ed è l’unico comando che si deve utilizzare per invo-
care un file system supportato. Le opzioni principali sono le seguenti:

-t seguito dall’identificativo del file system per definire quale file system creare.
Ad esempio mkfs -t ext2 /dev/hdd1 crea il file system EXT2FS sulla
nuova partizione hdd1 (magari di un nuovo disco aggiunto nel sistema).

-c per forzare mkfs a controllare i blocchi difettosi sulla partizione. Ad esempio


mkfs -c -t ext2 /dev/hdd3

-V per fare in modo che mkfs visualizzi i comandi che in quel momento sta ese-
guendo. Ad esempio mkfs -V -c -m 1 -t ext2 /dev/hdd3

• Gestione dei floppy disk


Grazie alle potenti unità zip e alla diffusione dei CD riscrivibili, i floppy disk vengo-
no sempre di meno utilizzati come supporti per l’I/O. Nonostante ciò è tuttora
comune il loro utilizzo per il salvataggio e/o lo spostamento di file di piccole dimen-
sioni. Mandrake Linux consente una gestione agevolata di tutte le periferiche, ma
la conoscenza delle impostazioni interne del sistema operativo possono essere
molto utili per superare problemi che a volte non si riescono a risolvere tramite l’in-
terfaccia grafica. Vediamo dunque come formattare e successivamente montare
un floppy dal terminale. La prima attività da eseguire, se si possiede un floppy disk
vergine, è quella di formattarlo con il comando fdformat (che gestisce anche le
schede PCMCIA). Ad esempio se si vuole formattare un floppy da 1.44MB ad alta
densità utilizzare il nome di dispositivo fd0u1440 ed editare il comando fdformat
seguito dal dispositivo /dev/fd0u1440 e cioè fdformat /dev/fd0u1440
131
Capitolo 6

Una pagina del manuale di Linux dedicata ai dispositivi.

Esiste una varietà notevole di nomi di dispositivi che consentono al kernel di Linux di
effettuare formattazioni anche con formati per la verità datati o oscuri. Consultare il
manuale con riferimento a fd per conoscere nel dettaglio i nomi di dispositivi associati
ad altri formati.

Se, dopo avere lanciato fdformat, riceviamo l’errore “Device or resource busy”
significa che il dischetto è montato; prima smontarlo con umount.
A questo punto il floppy è stato formatto, ma non possiede ancora alcun file
system e non è ancora stato montato. Le successive operazioni sono dunque:
mkfs -t ext2 /dev/fd0
per creare un file system di tipo EXT2FS e poi:
mount -t ext2 /dev/fd0 /floppyA
per montare il floppy e renderlo utilizzabile dal sistema.
Se si vuole inserire il riferimento al floppy nel file fstab, un’accortezza da non
dimenticare (soprattutto se siamo abituati ad usare i floppy sotto Dos/Windows) è
quella d’impostare nella quarta colonna, oltre a noauto, anche sync che consen-
te di mantenere sempre sincronizzato il floppy disk. In effetti se questa opzione
non venisse specificata si potrebbero verificare perdite d’informazioni a causa del
comportamento asincrono di default di Linux durante le operazioni di scrittura.
Ciò che praticamente potrebbe avvenire è che l’utente, dopo avere copiato il file
sul supporto magnetico, attenda semplicemente lo spegnimento del led del
floppy per estrarre il dischetto, anche se ora sappiamo che questo non ci garan-
tisce dalla perdita di informazioni. Lo stesso comportamento viene ovviamente

132
dietro le quinte

implementato da Linux anche sui dischi rigidi, ma ciò se non si tratta di dischi
rimovibili non crea particolari problemi. L’unico accorgimento in questo caso è di
seguire sempre la corretta procedura di spegnimento di Linux, prima di premere
il pulsante del PC.

Formattazione e creazione del file system in un floppy.

• Riparare un file system


Questa operazione viene effettuata in automatico al riavvio di Mandrake Linux e,
quindi, nella stragrande maggioranza dei casi non ci accorgiamo nemmeno che
un file system era danneggiato.
In alcuni casi, tuttavia, è necessario il nostro intervento. Vediamo quando e come
procedere.
Il comando di riferimento è fsck (file system check) ed è proprio l’utility che
Linux attiva tutte le volte che si rende conto che un file system non è stato con-
trassegnato come “clean”, in seguito alla mancata procedura di umount dello
stesso. In generale il sistema operativo chiede l’intervento dell’amministratore di
sistema tutte le volte che un file system è seriamente danneggiato o corrotto, in
questo caso viene bloccato il boot e viene aperta una shell sulla quale è possi-
bile lanciare fsck in modalità interattiva. In questo infausto caso viene prima di
tutto richiesta la password di root e successivamente si dovrà lanciare manual-
mente fsck. È difficile che noi sappiamo esattamente e a priori dove si sono veri-
ficati gli errori e quindi è opportuno lanciare fsck con alcune opzioni per la veri-
fica interattiva di tutti i file system:
fsck -A -V; echo == $7 ==
L’opzione -A indica che tutti i file system devono essere sottoposti a controlli. -V,
invece, specifica che il programma deve generare dei messaggi relativi alle ope-
razioni in atto. echo == $7 == infine non fa altro che stampare a video un codi-
ce di ritorno che deve essere interpretato come segue:

133
Capitolo 6

• 0 = nessuno errore
• 1 = sono stati corretti errori sul file system
• 2 = il file system deve essere riavviato
• 4 = alcuni errori non sono stati corretti
• 8 = errori durante l’esecuzione di fsck
• 16 = errori di utilizzo o di sintassi
• 128 = errori nella libreria condivisa (shared library)

Esecuzione del programma fsck per controllare il file system del floppy.

I codici che non destano problemi sono quelli inferiori al 4, gli altri sono indici di
errori ancora esistenti. Si tenga presente che nella stragrande maggioranza dei casi
l’esecuzione di fsck corregge tutti gli errori presenti sul file system.
In ogni caso quando non si riesce ad ottenere un codice inferiore al 4 probabil-
mente è necessario un intervento di un esperto hardware che esegua la riparazio-
ne di qualche componente che si è inopinatamente danneggiato. In quest’ultima
ipotesi se sul nostro PC è presente qualche altro sistema operativo è molto proba-
bile che anche quest’ultimo non si avvii.

Per spegnere il PC utilizzare sempre la procedura standard evitando di premere bru-


talmente il pulsante del computer. Quando questo accade Linux attiva subito fsck per
fare un controllo sui file system e correggere eventuali errori.

6.2 I livelli di esecuzione

Linux ha un’architettura interna basata sui cosiddetti livelli di run (o init) ossia su
differenti livelli di esecuzione che attribuiscono alla sessione attiva specifici attri-
buti. Questo paragrafo è dedicato proprio ai diversi livelli di esecuzione che Linux
può assumere. Si tratta di un argomento di carattere tecnico e che coinvolge
soprattutto l’area dell’amministrazione del sistema.

134
dietro le quinte

L’importanza dei livelli di esecuzione di Linux è data dal fatto che, in concomi-
tanza con ogni cambiamento di status, vengono attivati differenti set di processi
e differenti funzionalità di sistema. In alcuni casi il sistema operativo è relativa-
mente inattivo e viene eseguito un numero limitato di processi, mentre in altri
casi Linux lavora a pieno ritmo.
A livello terminologico i vari processi che lavorano in background vengono anche
denominati demon; ad esempio lo spooler di stampa, il programma per la
gestione della posta elettronica (sendmail), i processi di rete, sono tutti demon
di Linux.

I livelli di init consentono di configurare il sistema operativo in maniera differente senza


che vi sia la necessità di alterare i file di configurazione. Da questo si evince che ogni livel-
lo rappresenta una particolare configurazione di Linux.

• Passare da un livello a un altro


Per cambiare i livelli di run è necessario utilizzare il programma “telinit” che si
trova nel pecorso /sbin e che è solo un link a /sbin/init .
Prima di vedere quali sono i passi da seguire per passare da un livello ad un altro,
cerchiamo di capire perché può essere necessario cambiare livello di run. Le
motivazioni sono legate prevalentemente ad attività di manutenzione ed in parti-
colare quando:
1. Si vuole installare una nuova versione di Linux.
2. A causa di una prevista mancanza di corrente è necessario procedere allo spe-
gnimento del computer.
3. Viene rimosso o aggiunto un componente hardware.
Altre motivazioni sono relative ad attività di amministrazione di sistema come il ripri-
stino o il salvataggio d’importanti dati di sistema.
Il primo passo per poter cambiare livello è la connessione come utente root, succes-
sivamente è necessario lanciare telinit seguito da un numero che va da zero a sei.
Il significato di ciascun livello, che sicuramente è uguale nelle varie distribuzioni
di Linux per i valori 0, 1 e 6, può essere differente per il 2, il 4 e il 5 per i quali si
può avere un utilizzo specifico differente, pur trattandosi sempre di livelli multiu-
tente.
Analizziamone in dettaglio il significato con specifico riferimento a Mandrake Linux:
• telinit 0 determina la chiusura del sistema.
• telinit 1 porta il sistema allo status monoutente dove solo alcuni file system ven-
gono montati e tutte le login utente sono disabilitate. In alternativa è possibile uti-
lizzare telinit seguito dalla lettera “s” minuscola che sta per single-user (telinit s).
• telinit 2 attiva la modalità multiutente senza condivisione di risorse di rete.
• telinit 3 porta il sistema alla modalità multiutente completa, con pieno supporto
della rete, ma senza lanciare l’interfaccia grafica.

135
Capitolo 6

• telinit 4 non è utilizzato in Mandrake Linux.


• telinit 5 attiva un livello multiutente direttamente in modalità grafica.
• telinit 6 riavvia il sistema operativo.

Chiusura del sistema passando direttamente al livello di run zero.

• Pianificare la chiusura del sistema


Quando sono previste attività di manutenzione è opportuno averle pianificate per
tempo con opportune comunicazioni agli utenti. Ora sappiamo che telinit 0 e teli-
nit 6 determinano rispettivamente l’immediato spegnimento della macchina e il
suo riavvio. Tuttavia si tratta di comandi “brutali” da non utilizzare in ambiente
multiutente.
La cosa migliore è ricorrere al comando “shutdown”, che consente di visualizza-
re messaggi destinati agli utenti connessi.
Anch’esso si trova sotto /sbin e ha la seguente sintassi:
shutdown <-h> <-r> <+minuti> <messaggio>
I parametri –h e –r sono alternativi, in quanto il primo specifica che il sistema
deve essere arrestato dopo la sua chiusura (corrisponde a telinit 0), mentre il
secondo, che è il valore predefinito, determina il riavvio della macchina (corri-
sponde a telinit 6).
Nella variabile minuti deve essere inserito il tempo espresso in minuti, preceduto
dal segno “+”, entro il quale verrà effettuata la chiusura del sistema.
Infine la variabile messaggio può contenere la comunicazione agli utenti connes-
si. Ad esempio “shutdown –h +30 Chiusura per manutenzione.
Riattivazione del sistema tra 2 ore.” determina lo spegnimento
del computer entro trenta minuti e l’invio del messaggio “Chiusura …” agli utenti.
Si tenga sempre presente che non si deve assolutamente mai spegnere il computer
direttamente dall’interruttore. Linux infatti tende a mantenere molte informazioni in
memoria che, in caso di spegnimento brutale della macchina, verrebbero perse o
danneggiate. Il file system di Linux è notoriamente solido ed in grado di ripristinare

136
dietro le quinte

anche danni non indifferenti, tuttavia è meglio non abusare di questa caratteristica,
seguendo la procedura più ortodossa per chiudere il sistema.

Fare lo shutdown del computer.

Per bloccare uno shutdown in corso eseguire il comando con l’opzione –c aggiungendo
un messaggio: shutdown –c spegnimento rinviato!

• Il file inittab
Ormai sappiamo che all’attivazione di ciascun livello di init corrispondono ben
determinate azioni in termini di processi da eseguire e di risorse di rete da con-
dividere. A questo punto è interessante sapere che in /etc esiste il file inittab, che
contiene informazioni dettagliate sulle operazioni che devono essere attivate ad
ogni cambio di livello. In altre parole i valori presenti nel file inittab dicono al pro-
cesso init quali processi creare per ogni livello di run e quali azioni eseguire.
Da un punto di vista pratico il file inittab definisce tre azioni principali per il pro-
cesso /sbin/init:
1. Il livello di run di default per il sistema.
2. Quali azioni devono essere prese quando il sistema sta per eseguire un nuovo
livello di run.
3. Quali processi attivare e monitorare e, inoltre, quali fare ripartire nel caso in cui
muoiano.

Il file inittab.

137
Capitolo 6

Il programma init gestisce i cambiamenti di livello di run leggendo il file inittab. In pra-
tica:
• Procede all’esecuzione di tutte le procedure che iniziano con la lettera K che si tro-
vano nella directory del vecchio livello di init, eseguendole nell’ordine di visualizza-
zione del comando ls.
• Procede all’esecuzione di tutte le procedure che iniziano con la lettera S che si tro-
vano nella directory del nuovo livello di init, eseguendole nell’ordine di visualizza-
zione del comando ls.

Le procedure che iniziano con K non sono altro che quelle di Kill, che consentono di
disallocare i processi del vecchio livello. Quelle che iniziano con S sono quelle di Start, che
attivano i processi relativi al nuovo livello.

La struttura di directory su cui vengono letti questi file fa capo sempre alla direc-
tory /etc; esiste, infatti, una subdirectory per ogni livello di run chiamata rc*.d, dove
* é compreso tra zero e sei.
Ad esempio se si vuole passare dal livello uno al due vengono eseguiti i file K* che
si trovano in /etc/rc1.d e poi i file S* che si trovano in /etc/rc2.d.
Per concludere questo argomento si tenga presente che non tutte le distribuzio-
ni di Linux utilizzano differenti directory per ogni livello di run.
Le prime distribuzioni hanno utilizzato invece file con nomi tipo rc.1, rc.2, ecc. Nel
primo caso, in veritá il piú diffuso, il modello di riferimento è quello di UNIX
System V, mentre nel secondo ci si basa su Berkeley UNIX.

• La directory /etc/init.d
I file di start e di kill presenti nelle directory /etc/rc*.d e che vengono usati per avvia-
re e fermare determinati processi sono collegati (hard link) agli script presenti nella
directory /etc/init.d per facilitare il lavoro di amministrazione. È in effetti molto como-
do avere tutti i file di controllo dei livelli di run in un’unica directory: in questo modo
è possibile fare lo stop e lo start dei processi in unico path senza dover ricercare la
directory che corrisponde al livello di run di competenza. Ad esempio è possibile fare
lo stop e lo start dei servizi di Samba utilizzando la sintassi che segue:

/etc/init.d/smb stop

/etc/init.d/smb start

• Come creare file di controllo dei livelli di run


Per creare file di controllo dei livelli di run è necessario seguire alcuni semplici passi.
Innanzitutto dare un’occhiata alle istruzioni presenti nel file /etc/init.d/README
relative alla creazione di un file di startup, dove viene anche riportato un esem-
pio di come procedere. Successivamente fare il login come root. Inserire la pro-
138
dietro le quinte

cedura in /etc/init.d. Assegnare un numero di sequenza appropriato ai file K* e S*


da inserire in /etc/rc*.d. In questo caso è necessario prestare attenzione a non
causare conflitti con file giá esistenti che hanno lo stesso progressivo ed assicu-
rarsi che il servizio che si sta creando abbia un numero di sequenza congruente
rispetto agli altri servizi (se quel servizio si aspetta che altri processi siano già in
esecuzione il suo numero di sequenza deve essere successivo). Infine bisogna
creare nelle directory /etc/rc*.d appropriate i file K* e S*.
Ad esempio se si vuole che il processo sia attivo al livello tre procedere come segue:
1. Creazione di uno procedura NewProc, che deve contenere le istruzioni per lo
stop e lo start del processo: vi /etc/init.d/NewProc
2. Il processo deve essere eseguito in modalità multiutente (terzo livello di run):
cd /etc/rc6.d
3. Si deve creare un collegamento alla procedura in /etc/init.d: ln
/etc/init.d/NewProc S33NewProc
4. Infine bisogna creare il collegamento per lo stop del processo in fase di chiu-
sura del sistema: cd /etc/rc0.d e poi ln /etc/init.d/NewProc
K99NewProc
Il processo NewProc ora sarà automaticamente avviato ad ogni startup di Linux e
verrà chiuso in fase di shutdown. Per avviarlo o chiuderlo manualmente procedere
come segue:

/etc/init.d/NewProc stop

/etc/init.d/NewProc start

6.3 I comandi di base ed avanzati

Linux, nonostante sia corredato ormai da tempo da sontuosi front-end grafici, è nato come
sistema operativo basato sul prompt e sull’interfaccia a caratteri. Queste origini più che
come un limite devono essere considerate come un’opportunità in più per tutti coloro che
lo utilizzano. D’altra parte se si desidera sfruttare tutte le potenzialità di Linux, è tuttora assai
poco opportuno prescindere dalla conoscenza dei comandi che si possono eseguire diret-
tamente dal prompt. Prima di procedere, una premessa: Linux, a differenza di Windows, è
un sistema operativo “case sensitive”, ossia sensibile alle minuscole e alle maiuscole. Il che
vuole dire che digitare cd, CD, Cd o cD non è assolutamente la stessa cosa.

Si tenga presente che i comandi di Linux devono essere digitati con tutte le lettere minu-
scole (salvo alcuni parametri che specificheremo). Ovviamente una loro errata digita-
zione comporta un non riconoscimento degli stessi da parte di Linux.

Infine Linux ha sempre disponibile un potente help; è sufficiente digitare “man” segui-

139
Capitolo 6

to dal comando sul quale si vuole spiegazione per avere un’esauriente guida in linea.

• Posizionarsi e listare file


Uno dei primi comandi che storicamente viene imparato è come posizionarsi all’in-
terno delle varie directory (o file system, se vogliamo usare la corretta nomenclatura
Unix-like) e come listare i file in esse presenti.
Niente paura il primo passo è molto semplice, perché il comando è cd <nome_direc-
tory>. Si possono analizzare vari casi:
• cd .. per posizionarsi sulla directory immediatamente precedente.
• cd / per posizionarsi sulla directory radice (o root).
• cd ../../<nome_directory> che è la somma algebrica dei comandi: cd .., cd .. e cd
<nome_directory>.
Per verificare che la directory corrente sia effettivamente quella ricercata utilizzare il
comando pwd.

Si ricordi che cd ˜ oppure cd $home non fa altro che posizionarci direttamente sulla
directory di origine dell’utente corrente.

Per listare i file contenuti in un certo percorso è disponibile il comando ls. Esaminia-
mone alcune opzioni:
• ls -l visualizza gli attribuiti dei file.
• ls -la visualizza anche i file che hanno come prefisso un punto (es. .login).
Le lettere che precedono i file hanno un significato ben preciso, in quanto evi-
denziano i diritti che il creatore dei file ha attribuito ai file.
Tutti i file che iniziano con un trattino sono effettivamente file (es. -rwxr—r—),
mentre quelli che hanno una d come primo carattere sono directory (es. drwxr-
xr-x). Esaminando gli altri caratteri r sta per lettura, w per scrittura (possibilità di
modifica del file) e infine x per esecuzione del file stesso.
Vengono ripetuti più volte in quanto indicano come ogni utente del sistema può
accedere a quel particolare file. In particolare questi diritti di accesso si riferisco-
no al proprietario del file (secondo, terzo e quarto carattere) agli utenti apparte-
nenti allo stesso gruppo (successivi tre caratteri) e ad altri utenti del sistema
(ultimi tre caratteri).

140
dietro le quinte

Posizionarsi su una directory e listare i file in essa contenuti.

• Cambiare i diritti di accesso


Il comando chmod viene utilizzato per modificare i diritti di accesso dei file.
Ciascun proprietario può modificare i propri, mentre l’utente root può modificarli
tutti. Così se si vuole dare ad un file tutti i permessi si deve digitare: chmod 777
<nome_file>. Per controllare che tutto è filato liscio digitare ls -l. Il caso opposto
è l’eliminazione di tutti i permessi con il comando chmod 000 <nome_file>.
Infine se si vogliono modificare i diritti di accesso di tutti i file che si trovano in un
certo percorso bisogna utilizzare il parametro -R. Ad esempio se si vogliono
assegnare i diritti 755 a tutti i file che si trovano nella directory /work digitare:
chmod -R 755 /work.

Modificare i diritti di accesso ai file.

• Le variabili di ambiente
Tutti i processi hanno delle proprie variabili di ambiente, e la shell vi con-
sente di visualizzarle direttamente con il comando echo. Ecco alcune variabili
interessanti:
1. HOME: questa variabile contiene una stringa che rappresenta il percorso della vostra
home directory.
2. PATH: questa variabile contiene la lista di tutti i percorsi in cui la shell cerca gli eseguibili

141
Capitolo 6

quando digitate un comando. Notate che come impostazione predefinita una shell non
cercherà i programmi nella directory corrente!
3. USER: questa variabile contiene il vostro nome di login.
4. UID: contiene il vostro user ID.
5. PS1: contiene la definizione del vostro prompt. Spesso è una combinazione di sequen-
ze speciali, per avere maggiori informazioni potete leggere la pagina di manuale
bash(1).

Per visualizzare le variabili d’ambiente digitare il comando set.

Visualizzare le variabili d’ambiente con set.

Affinché la shell visualizzi il contenuto di una variabile, dovete aggiungere un $ prima


del suo nome. Ecco come usare il comando echo:
$ echo Evviva!
Evviva!
$ echo $HOME
/home/ebottari
$ echo $USERNAME
ebottari
$ echo Benvenuto $USERNAME
Benvenuto ebottari
$ cd /usr
$ pwd
/usr
$ cd $HOME
$ pwd
/home/ebottari

142
dietro le quinte

Come potete vedere, la shell sostituisce il valore della variabile prima di eseguire il coman-
do. Altrimenti, il nostro cd $HOME non avrebbe funzionato. Infatti la shell ha prima di tutto
sostituito $HOME con il suo valore, /home/ebottari, quindi la riga è diventata cd
/home/ebottari, ovvero il comando che volevamo. Lo stesso vale per echo $USERNAME e
così via.

• Altri comandi
Per creare una directory esiste il comando mkdir. Se vogliamo creare la directory docu-
menti (si ricordi che Linux gestisce senza problemi i nomi dei file lunghi) sotto mieiLavori/
possiamo digitare mkdir mieiLavori/documenti oppure cd mieiLavori e
poi mkdir documenti Per rimuovere una directory dobbiamo, invece, ricorrere al
comando rmdir. Così possiamo cancellare quanto in precedenza creato digitando rmdir
mieiLavori/documenti oppure cd mieiLavori e poi rmdir documenti
Per cancellare un file si utilizza il comando rm. Quindi se nella directory mieiLavo-
ri/documenti sono presenti vari file possiamo:
• Cancellare tutto con rm mieiLavori/documenti/* (equivalente a cd
mieiLavori/documenti e poi rm *).
• Cancellare tutti file .txt con rm mieiLavori/documenti/*.txt
• Cancellare solo un file, ad esempio rm mieiLavori/documenti/doc1.txt
rm consente anche di cancellare un intero file system con directory e file in esso con-
tenuti; si tratta di aggiungere l’opzione -R. Ad esempio rm -R mieiLavori elimina dal
disco rigido tutto quello che gerarchicamente si trova sotto la directory mieiLavori.

Usare con parsimonia e molta attenzione rm e a maggior ragione rm -R, perchè Linux non
consente di annullare questa operazione e le consenguenze potrebbero essere irreparabili.

Per copiare i file utilizzare il comando cp. Ad esempio per copiare i file da mieiLavo-
ri/documenti a salvataggio utilizzare uno dei seguenti metodi alternativi:
• cp mieiLavori/documenti/* /salvataggio
• cd /salvataggio e poi cp mieiLavori/documenti/* . (specificare
il punto, che significa la directory corrente).
• cd mieiLavori/documenti/ e poi cp * salvataggio
Fare seguire a cp l’opzione -i per richiedere sempre al sistema operativo la confer-
ma, nel caso si rischi di sovrascrivere file con lo stesso nome.
Per spostare uno o più file da una posizione ad un’altra utilizzare mv. Per muovere
tutti i file da mieiLavori/documenti a /temp utilizzare uno dei seguenti metodi alter-
nativi:
• mv mieiLavori/documenti/* /temp
• cd /temp e poi mv mieiLavori/documenti/* . (anche qui specificare il
punto finale)
• cd mieiLavori/documenti/ e poi mv * /temp

143
Capitolo 6

Il comando Linux mv serve anche a rinominare un file. Per rinominare il file /tesi1999.doc
in /tesi2000.doc digitare mv /tesi1999.doc /tesi2000.doc
Anche con mv si può utilizzare la richiesta di conferma (opzione -i, dopo mv).

Muovere i file da una directory ad un’altra.

• La proprietà dei file


Linux come tutti i sistemi di tipo UNIX è multiutente (per accedere ad una macchina
Linux è sempre necessario avere a disposizione un account composto da nome
utente+password) e assegna ogni file/directory all’utente che l’ha creato.

Ogni file ed ogni directory hanno come riferimento un nome utente e un gruppo di
appartenenza dell’utente.

Anche il concetto di gruppo è caratteristico di Linux; si tratta di un insieme, appunto


un raggruppamento, di utenti che hanno caratteristiche comuni e che, come abbia-
mo visto in precedenza, condividono determinati diritti su quell’oggetto (si veda il
paragrafo dedicato al comando ls). In altre parole se l’utente che si è loggato con suc-
cesso alla macchina è ebottari del gruppo staff tutti i file e le directory create da lui
avranno per default questo account come proprietario.
Linux prevede, tramite il superutente root, la possibilità di cambiare l’assegnazione di
uno più oggetti presenti in un certo file system tramite i comandi chown e chgrp.
Ad esempio per assegnare il file linux.doc presente in /Linux/books all’utente ebotta-
ri digitare quanto segue:
• chown ebottari /Linux/books/linux.doc
• oppure cd /Linux/books seguito da chown linux.doc

Cambiare la proprietà di un file.

144
dietro le quinte

Il gruppo viene, invece, assegnato con il comando chgrp. Quindi se il nuovo gruppo
del file linux.doc deve essere staff digitare chgrp staff /Linux/books/linux.doc.
Per cambiare contemporaneamente utente e gruppo digitare: chown ebotta-
ri:staff /Linux/books/linux.doc
Anche in questo caso sia chown che chgrp ammettono il parametro -R per modifi-
care ricorsivamente le proprietà delle directory e dei file a partire da una certa direc-
tory.

• Visualizzare il contenuto di un file


Linux permette di listare a video il contenuto di un file con i comandi che seguo-
no: cat, more e less.
cat deve essere anteposto al file che si vuole visualizzare. Se il file si chiama read-
me.txt e si trova in /oracle/orainst bisogna digitare cat
/oracle/orainst/readme.txt oppure posizionarsi sulla directory e digitare
cat readme.txt. Nel caso in cui il file superi le dimensioni di una pagina è pos-
sibile utilizzare il pipe (|) con more. La sintassi è cat readme.txt | more
Se si utilizza direttamente more con il nome del file (more readme.txt) si ottie-
ne subita la paginazione dello stesso anche senza inserire il pipe.
Infine less seguito dal nome del file ha più o meno le stesse caratteristiche di
more, anche se consente gli spostamenti avanti e indietro (ad esempio il carat-
tere g sposta il cursore all’inizio del file, mentre G alla fine) e le ricerche trami-
te la barra (/) seguita dal nome della stringa ricercata.
Per maggiori informazioni utilizzare il nome del comando seguito da —help. Con riferi-
mento ai precedenti comandi: cat —help, more —help e less —help.

• Cercare un file
Il comando find è utile per cercare i file all’interno di una gerarchia di directory. È il
file search di Linux ed è molto potente. Gli operatori e i parametri vengono valutati da
sinistra a destra e il primo argomento che inizia con – viene considerato l’inizio del-
l’espressione. Vediamo un esempio: find . –name docu* - print
In questo caso abbiamo cercato a partire dalla directory corrente, indicata con un
punto, tutti i file che iniziano con docu e chiediamo a Linux di visualizzarne a video il
percorso.
Se avessimo voluto cercare a partire dalla directory radice avremo dovuto specifica-
re / al posto del punto. Questo comando esce con stato zero se tutti i file sono stati
processati con successo e maggiore di zero in caso di errori.

Il comando find non è in grado di processare i file su cui l’utente corrente non ha diritti
di accesso.

145
Capitolo 6

• Comprimere i file
Tra i comandi più utili che Linux rende disponibili non possiamo non menzionare le
utility di compressione e decompressione dei file. Si tratta di applicazioni che ci per-
mettono di ridurre lo spazio occupato da file solitamente molto ingombranti, come
ad esempio quelli grafici. L’utility in questione è gzip.

Comprimere e decomprimere i file con gzip.

Il suo utilizzo è simile al vecchio compress ma, basandosi su un algoritmo più otti-
mizzato, riesce a comprimere maggiormente i file. Per decomprimere utilizzare gzip
seguito dall’opzione -d e dal nome del file.

Le utility di compressione sono molto preziose anche in sede di backup dei dati, in quan-
to permettono di risparmiare spazio prezioso sul supporto di salvataggio.
gzip viene spesso applicato a file di tipo tar che vedremo tra breve.

• Utilizzare tar
tar è un programma che riunisce più file in unico contenitore, senza però compri-
merli. Ecco perché si è detto che viene spesso utilizzato insieme alle utility di com-
pressione. Solo in questo modo si ottiene lo stesso risultato di WinZip di Windows (o
della cartella compressa), ossia un unico file contenente più file compressi.
Per creare un nuovo tar file utilizzare tar -cvf <nome_del_tar-
file> seguito dai nomi dei file da archiviare o da asterisco (*) se devono essere archi-
viati tutti quelli presenti nel percorso corrente.
Per estrarre i file digitare tar -xvf <nome_del_tarfile>
Infine per vedere il contenuto di un tar file tar -tf <nome_del_tarfile>
Si ricordi che il tar file può essere relativo o assoluto. Nel caso di creazione di un
tar file relativo una gerarchia di directory (con i file annessi) viene interamente archi-
viata a partire dalla directory di origine; quando viene eseguita l’estrazione dei file
viene ricostruita l’esatta gerarchia iniziale.

Il tar relativo è utile per fare una fotografia della situazione corrente di directory e file per
magari copiarli su un’altra macchina o ripristinarli in un secondo tempo sullo stesso
computer.

146
dietro le quinte

Il tar file assoluto, invece, è quello che viene eseguito all’interno della direc-
tory di origine. In questo modo quando viene lanciato il tar -xvf la directory di ori-
gine diventa quella corrente.
Vediamo un esempio. Se abbiamo una gerarchia di tre directory annidate, ad
esempio /root/Desktop/Templates possiamo eseguire il tar sotto / o sotto /root. Nel
primo caso (cd / e tar -cvf tar_file /root) conserviamo nel tar
file il riferimento a root e quindi si parla di un tar relativo. Nel secondo caso (cd
/root e tar -cvf tar_file) non conserviamo nel tar file il riferimento a
root e quindi si parla di un tar assoluto.

Creazione di un tar file.

• Schedulare alcune attività


Abbiamo visto nel secondo capitolo, alla fine del paragrafo dedicato al Mandrake
Control Center, che esiste un’interfaccia grafica per prevedere l’esecuzione di
comandi in maniera ripetitiva nel tempo o una tantum (il drakcronat).
Ora alla base di questo programma ci sono due comandi crontab e at, che qui
esamineremo.
crontab è, dunque, un comando che permette di eseguire dei comandi a inter-
valli di tempo regolari, con il vantaggio di non dover essere necessariamente col-
legati al sistema. È possibile indicare l’intervallo di tempo in minuti, ore, giorni e
anche mesi. In base alle opzioni utilizzate, crontab si comporterà in diversi modi:
• -l: visualizza il vostro file crontab attuale.
• -e: consente di entrare in modifica sul file crontab.
• -r: cancella il file crontab attuale.
• -u <utente>: applica una delle opzioni di cui sopra all’utente <utente>, ma solo
root può farlo. Ad esempio crontab – u mrossi –l visualizza il crontab di mrossi
da una sessione di root.
Iniziamo modificando un file crontab. Se si scrive crontab -e, se sono state impo-
stato le variabili d’ambiente EDITOR o VISUAL ci si trova di fronte all’editor di testi
preferito, altrimenti viene utilizzato VIM. Una riga del file crontab è composta da

147
Capitolo 6

sei campi. I primi cinque campi sono gli intervalli di tempo in minuti, ore, giorni
del mese, mesi e giorni della settimana.
Il sesto campo è il comando che deve essere eseguito. Il simbolo di asterisco (*)
è un carattere jolly e significa tutto; ad esempio un asterisco al posto del mese
significa tutti i mesi dell’anno.
È bene menzionare che i giorni della settimana partono, secondo il calendario
anglosassone, dalla domenica (01) per arrivare al sabato (07). Le righe che ini-
ziano con un # sono considerate come commenti e vengono ignorate.
Vediamo un esempio:
# ogni anno il giorno del compleanno di nostra moglie ese-
guiamo
# una musica particolare tramite il programma mpg123
0 0 22 09 * mpg123 $HOME/songs/HappyBirthday.mp3
#
# viene eseguito ogni quarto d’ora un programma che individua
# i core file (generati in seguito a particolari errori sul
file system)
# e magari genera un report consultabile in seguito
0,15,30,45 * * * * $HOME/utilities/TrovaCoreFiles

L’utilizzo del comando crontab genera un file di proprietà di root in /var/spool/cron, il cui
nome è uguale al nome dell’utente corrente.

Se si vuole avviare un comando in un giorno particolare, e non periodicamente; ecco


che l’utility più adatta è at. Ad esempio, supponiamo di voler ricordare una riunione
della mattina alle 11:00 e di essere avvertiti alle 10:50, il comando da digitare è at
10:50 in maniera tale che si attivi il prompt di at su cui bisogna digitare il messag-
gio che ci avvertirà dell’evento, dopo il comando xmessage. Ad esempio: at>
xmessage “Prepararsi alla riunione delle 11:00 !!”. Alla
fine digitare Ctrl+d per uscire da at e registrare quanto abbiamo digitato.
at dispone infine delle seguenti opzioni:
• -l: stampa la lista dei compiti attualmente accodati; il primo campo è il numero
associato al compito. È equivalente al comando atq.
• -d <n>: rimuove il compito numero <n> dalla coda. Si possono vedere i nume-
ri dei compiti usando atq. È equivalente ad atrm <n>.

6.4 Una chiaccherata tra il pinguino e Windows

Inizialmente IBM e Sytec svilupparono di comune accordo uno strato software che
consentisse di utilizzare i primi PC in rete. Si trattava di NetBIOS (Network Basic Input

148
dietro le quinte

Output System) che, una volta caricato in memoria, consentiva d’interfacciare i pro-
grammi DOS con l’hardware della rete. Successivamente Microsoft introdusse SMB
(Session Message Block) per redirezionare l’I/O del disco verso l’interfaccia NetBIOS
e, quindi, per condividere le risorse in rete (file e stampanti).
All’inizio degli anni novanta un ricercatore australiano, Andrew Tridgell, ricostruì i pro-
tocolli SMB sulla propria macchina Unix, sviluppando poi un’implementazione di
SMB anche per Linux. Questo progetto venne in seguito battezzato da Tridgell con il
nome di Samba: è un nome di fantasia che mantiene una certa assonanza con il
protocollo da cui era partita in origine la sua fatica, ossia SMB.

• I componenti di base
Il nucleo centrale di Samba è costituito da due demon: smbd e nmbd. Il primo
fornisce i servizi di file server e print server e garantisce il riconoscimento e l’au-
torizzazione tramite due diverse modalità: quella condivisa e quella utente.
La modalità condivisa (share mode) protegge file e stampanti con l’assegnazio-
ne di una password, nota agli utenti che ne hanno diritto.
La modalitá utente (user mode) assegna ad ogni utente un account comprensi-
vo di password che, in base a permessi e autorizzazioni attribuiti dall’ammini-
stratore del sistema, consente di accedere a determinate risorse. Nmbd si occu-
pa della risoluzione dei nomi e del browsing.
La risoluzione dei nomi, a sua volta, si effettua con due diverse tecnologie:
broadcast e point-to-point.
La tecnologia broadcast invia un pacchetto a tutti i nodi presenti sulla rete per
la ricerca del server con cui si vuole connettere. Il server risponderà poi con un
pacchetto che indica il proprio identificativo NetBIOS e l’indirizzo IP.
La tecnologia point-to-point utilizza invece un server NBNS (NetBIOS Name
Service), noto anche come WINS (Windows Internet Name Service), sul quale
ogni host collegato in rete deposita il proprio identificativo NetBIOS e l’indirizzo
IP. Ogni risorsa delle rete dovrà interrogare questo server per ottenere le infor-
mazioni di base per le connessioni con altre risorse di rete.
I servizi di browsing consentono di ottenere un elenco di servizi disponibili in rete
come stampanti e dischi condivisi.
Tutto questo grazie ad un particolare host denominato LMB (Local Master Browser)
che si occupa di fornire ai vari client la lista dei servizi disponibili in rete. I demon smbd
e nmbd devono ovviamente essere attivati per consentire a Samba di funzionare.
La sintassi è come al solito: smb start|stop e nmbd start|stop

• Configurazione di Samba
Una volta installato il software è necessario configurarlo. Ricordiamo che l’installazio-
ne successiva al setup iniziale deve essere effettuata con il comando rpm come
segue: rpm -ivh samba-<release>.i386.rpm, dove <release> indica la
versione del pacchetto.

149
Capitolo 6

Il file di configurazione principale si trova nella directory /etc/samba di Mandrake Linux


(in altre distribuzioni viene creato direttamente in /etc) e si chiama smb.conf. Prima
di effettuare qualsiasi operazione che modifichi il file è sempre consigliabile salvarne
una copia. La struttura di smb.conf è basata sulle sezioni, alcune di default altre per-
sonalizzate. Le sezioni di default o speciali sono global, homes e printers.

Dove si trova il file di configurazione di Samba.

Per modificare il file di configurazione è possibile accedere direttamente ad esso tra-


mite un editor.

Il file di configurazione di Samba.

Vediamo ora le variabili più significative presenti nelle varie sezioni. [global] con-
trolla i parametri globali del server SMB e determina anche le impostazioni di
default per le altre sezioni. In particolare in workgroup si definisce un nome
maiuscolo di otto caratteri senza alcuno spazio.
Server string contiene una stringa descrittiva del nome del server. La riga host
allow imposta gli indirizzi IP degli host che possono connettersi a Samba, in
mancanza di questa riga tutti si possono collegare.
Guest account consente l’accesso a chiunque con lo user guest. Encrypt pas-
sword definisce se Samba dovrà negoziare password cifrate.
La sezione [homes] permette ai client della rete di collegarsi alla directory home

150
dietro le quinte

del server anche senza che questa sia specificata nella precedente sezione.
Vediamone un esempio:
[homes]
comment = Home Directories
read only = no
browseable = no
create mode = 0750
A parte la riga comment che dà un riferimento descrittivo della risorsa condivisa,
read only=no non consente agli utenti di modificare i file nella directory di rete, brow-
seable=no evita che venga vista la risorsa nel browser delle risorse (ad esempio Win-
dows Explorer), create mode = 0750 imposta i permessi di default per i nuovi file
creati nella directory condivisa.

• Condividere le stampanti
La sezione [printers] consente di condividere le stampanti in rete. Lo scopo di questa
sezione è in definitiva quello di permettere l’accesso alle stampanti da parte di tutti
gli utenti che hanno un userid valido.
Vediamone un esempio:
[printers]
comment = All Printers
browseable = no
path = /var/spool/samba
Set public = no
writable = no
printable = yes
Comment e browseable hanno gli stessi significati della precedente sezione, path
individua la directory di spool, Set public=no non consente di stampare a utenti
guest, writable=no assicura che la directory di spool si accessibile in scrittura solo
per i file indirizzati alle funzioni di stampa, printable=yes indica che la risorsa può
essere utilizzata per stampare.
Il caso più semplice di condivisione di una stampante è la definizione di una
sezione apposita per ogni stampante di rete.
In questo caso, come vedremo tra breve, è possibile limitare l’uso della stampan-
te ad un utente o a un gruppo di utenti. Ad esempio creare una sezione
[OK_print] ed indicare print ok=yes, printer name=nome_stampante e
path=nome_directory per definire dove la stampante deve appoggiare il proprio
spool. Uno statement che si consiglia di aggiungere sempre nella sezione perso-
nalizzata è valid users, da uguagliare al nome dell’utente o del gruppo di utenti
che sono autorizzati ad accedere alla stampante.
Ad esempio:
[EnricoPRN]

151
Capitolo 6

comment = stampante di Enrico


valid users = ebottari
path = /homes/ebottari
printer name = HPenricoPRN
public = no
writable = no
printable = yes

• Creare nuove condivisioni


Di solito se si accettano le impostazioni di default di smb.conf e non si fa alcuna
aggiunta verranno condivise solo la home directory e la cartella /home/pub.
Nella maggior parte dei casi tuttavia si ha la necessità di rendere accessibili anche
altre directory. Ad esempio se sul server Samba esiste un percorso /mioTest/WinAc-
cess, e vogliamo condividerlo, è sufficiente aggiungere una nuova sezione come
segue:
[WinAccess]
comment = directory condivisa
path = /mioTest/WinAccess
read only = no
public = yes
In questo modo quando il client si connette al server ottiene, dopo l’autenticazione,
anche l’accesso ad una directory di nome WinAccess. Il nome virtuale della directory
coincide col nome della sezione (appunto WinAccess) mentre il percorso fisico è
quello indicato in path (/mioTest/WinAccess).
In queste sezioni personalizzate è anche possibile inserire nuove parole chiave come
valid users che indica gli utenti autorizzati a quel percorso. Ovviamente per rendere
visibile un nuovo path è necessario eseguire lo stop e start del servizio.

• Ottimizzare Samba
Samba solitamente funziona senza dare particolari problemi di performance. Tutta-
via nel caso di prestazioni scadenti si possono fare alcune verifiche.
Il parametro wide links viene solitamente impostato a no per migliorare le caratteri-
stiche di sicurezza del sistema. In alcune configurazioni questo può determinare pro-
blemi di prestazioni e allora è meglio impostarlo a yes e aggiungere nella sezione
[global] il parametro getwd cache=yes.
Una tecnica che sicuramente porta a risultati prestazionali migliori è intervenire sul-
l’architettura hardware dove risiede il server Samba. Questi interventi si possono così
sintetizzare:
• Utilizzare una CPU più veloce.
• Affiancare una nuova CPU a quella già esistente.
• Utilizzare dischi ad accesso più veloce (ad esempio dischi ottici al posto di dischi
SCSI).

152
dietro le quinte

• Incrementare la memoria RAM.


• Aumentare la larghezza di banda della rete e, quindi, avere a disposizione una rete
più performante.

• Utility per verifiche varie


Prima di qualsiasi test è sempre opportuno effettuare un ping dal server al client e
viceversa per essere sicuri che la rete funzioni.
Successivamente si può fare ricorso al programma testparm per analizzare il file
di configurazione smb.conf e scoprire eventuali errori che non consentirebbero
a Samba d’interpretare correttamente il file. La sintassi dell’utility è testparm
<file di configurazione> [hostname IPadd], dove i parametri opzionali hostname
e IPadd definiscono il nome della macchina server e l’indirizzo IP della stessa
(IPadd diventa obbligatorio se specificato hostname). Una volta definiti anche i
parametri opzionali testparm sa che deve verificare anche se i servizi definiti in
smb.conf sono accessibili.
Ad esempio indicare: testparm /etc/smb.conf Altair 196.204.115.18 per fare il test
del file /etc/smb.conf sulla macchina Altair con l’indirizzo IP specificato.
Un’altra utility interessante per testare il funzionamento di Samba è smbstatus.
Questo programma fornisce un resoconto riferito alle connessioni attive. La sin-
tassi è: smbstatus [-d] [-s <file di configurazione>], dove
tutti i parametri sono opzionali. Questo perché il file di configurazione di default
è sempre smb.conf e l’opzione -d serve solo ad avere un maggior dettaglio
d’informazioni.

• Utilizzo delle risorse condivise


Una volta che il server Samba è attivo su una certa macchina e che tutte le impo-
stazioni sono state settate correttamente i client possono fare il mount delle
risorse condivise. Il comando da utilizzare sotto Linux è smbmount seguito
dalla risorsa e poi ancora dalla directory locale. Vediamo un esempio pratico:
• Loggarsi come root
• Creare una directory locale: mkdir /usr/ext_mount
• Fare il mount collegandosi con un certo utente: /usr/sbin/mount
//106.290.26.10/homes /usr/ext_mount -U ebottari
L’operazione contraria al mount è smbumount e deve essere applicata alla
directory locale (es. smbumount /usr/ext_mount).
Nel caso si vogliano condividere risorse su un client Windows bisogna attivare
Risorse di Rete e seguire il percorso che ci porta a quella particolare risorsa. In
altre parole fare doppio clic sul nome del computer che esegue il server Samba
ed accedere alle risorse condivise, dopo avere digitato la password.

153
Capitolo 6 dietro le quinte

L’output di smbmount.

• Per saperne di più su Samba


Se abbiamo problemi con Samba o se comunque ne vogliamo sapere di più possia-
mo fare riferimento al man di Linux puntando direttamente al comando/programma
(es. man sbmount).
Non sottovalutare infine il sito www.samba.org che contiene un quantitativo enorme
d’informazioni di ogni tipo e le più recenti versioni di Samba.

154
155
156
CAPITOLO 7

157
Capitolo 7

CONCETTI AVANZATI
A questo punto Mandrake Linux vi dovrebbe sembrare un sistema operativo real-
mente interessante o perlomeno tale da meritare un esame pratico. Eppure c’è
ancora molto da dire. Alcuni concetti legati alla rete o alla programmazione non sono
ancora stati trattati. Questo capitolo vuole dare una panoramica proprio di alcuni con-
cetti avanzati che non sono indispensabili per conoscere il pinguino, ma che in alcu-
ni casi sono fondamentali per realizzare un’infrastruttura ottimizzata e veramente
performante.

7.1 VIM tips & tricks

Il più potente text editor che c’è in circolazione è senza dubbio VI. Non è nato recen-
temente ma affonda le sue radici nel mondo UNIX quando un tal Bill Joy, il solito stu-
dente dell’Università di Berkeley, decise di migliorare il vecchio ed, ossia il program-
ma di editing che andava per la maggiore in ambiente UNIX. Fa parte di Mandrake
Linux VI, o meglio una versione potenziata chiamata VIM che significa VI iMproved,
ossia una versione migliorata di VI.
Esistono ovviamente altri text editor che, al contrario di vim, lavorano in modalità gra-
fica e che sono senz’altro più amichevoli e facilmente utilizzabili (ad esempio KWri-
te). Tuttavia vim ha caratteristiche uniche e non ancora eguagliate dagli altri prodotti
in circolazione sia nel mondo Linux/UNIX che nel mondo Windows.

La schermata introduttiva di vim.

158
concetti avanzati

• Concetti di base
Per attivare il programma digitare semplicemente vim sul prompt dei comandi
di una sessione terminale (o anche vi) mentre per editare un file esistente digi-
tare vim seguito dal nome del file. In questo caso viene creata subito una copia
temporanea del file in maniera che non si lavora sull’originale e solo nel caso di
conferma delle modifiche viene riversato il temporaneo sull’originale.
Se il sistema va in crash o se viene fatto uno shutdown di Linux mentre la ses-
sione di vim è aperta, è comunque successivamente possibile recuperare le
modifiche fatte fino a quel momento: una volta riattivato il sistema digitare vim
–r <nome file>
Mentre le prime versioni di vi permettevano di editare solo file ASCII con vim
seguito dall’opzione –b è anche possibile editare file binari o eseguibili.
Per proteggere il file da eventuali digitazioni accidentali lavorando solo in moda-
lità lettura abbiamo tre alternative:
1. Digitare view al posto di vim sul prompt.
2. Digitare il comando set readonly all’interno di vim.
3. Richiamare da prompt vim con l’opzione –R.

Impostazione di vim in sola lettura.

Nei primi due casi è comunque possibile alterare il file se si digita il comando :w!
e se si hanno i diritti di scrittura su di esso. Da questo si evince che il metodo più
sicuro per proteggere un file è sempre la modifica dei diritti di accesso con il
comando chmod.
vim può lavorare in due modalità: editing e command line. La prima modalità
serve a inserire e a modificare il testo, mentre la seconda permette di digitare i
comandi di vim.
159
Capitolo 7

La command line si attiva digitando : (due punti), ma per essere sicuri prima preme-
re il tasto Esc una o più volte finché non si sente un segnale acustico.

La segnalazione che il file aperto è in sola lettura.

• I primi comandi
Per uscire da una sessione di vim è possibile utilizzare i seguenti comandi:
• ZZ o :wq seguito da Invio per salvare le modifiche.
• :q seguito da Invio per terminare la sessione corrente senza salvare nulla.
Se si utilizza :q dopo avere fatto alcune modifiche al file, vim visualizza l’errore “Non
salvato dopo modifica (usa ! per eseguire comunque)” che richiede l’utilizzo di :q!
perché il file è stato editato.

vim avverte che senza il punto escla-


mativo non si può né uscire, né salva-
re il file.

160
concetti avanzati

Per salvare senza uscire dalla sessione corrente di vim utilizzare :w seguito da
Invio, mentre per salvare quanto visualizzato in un file con nome differente digi-
tare :w <nome file> seguito da Invio. Quest’ultimo comando è utile per salvare
più versioni del file corrente su percorsi differenti.
Se si usa, invece, :w! <nome file> seguito da Invio viene copiato il file corrente
sul file con nome <nome file>.
Per esempio se il file corrente si chiama paperino dopo :w! pippo, il file pippo
non avrà più il contenuto originario in quanto il suo contenuto è stato aggiorna-
to con quello del file paperino. In caso di errore è sempre possibile recuperare
la versione iniziale perché vim tutte le volte che si fa un sovrascrittura crea una
copia di backup che ha il nome del file originario seguito dal carattere tilde. Nel-
l’esempio di prima pippo~ avrà il contenuto originario.

• Lavorare con vim in edit mode


Condicio sine qua non per lavorare con vim è la conoscenza degli “hot key” che
l’applicazione ci rende disponibili. Ad esempio per inserire del testo bisogna digi-
tare la lettera i, questo consentirà di scrivere subito prima del cursore.
Digitando, invece, a il testo verrà inserito subito dopo il cursore. Occhio quindi alla
posizione del cursore! Ricordiamoci sin da subito che, come accennato, per ter-
minare la sessione di editing bisogna premere Esc.
Oltre ai tasti Backspace e Canc in modalità inserimento, vim ha molti altri
comandi per cancellare, copiare, incollare e sostituire testo in modalità comandi.
In particolare i seguenti comandi si occupano di eseguire un’azione e devono
essere abbinati con i comandi che riguardano l’area di lavoro:
• Digitare la lettera c per sostituire (change) caratteri. L’editor sostituisce il testo
indicato, e dopo questo comando torna in modalità inserimento.
• Digitare la lettera d per cancellare (delete).
• Digitare la lettera y per copiare (yank). Ce ne occuperemo in dettaglio più avanti.
• Digitare un punto (.) per ripetere l’ultima operazione.

Ecco dunque i comandi che riguardano l’area di lavoro e che si uniscono ai pre-
cedenti:
• Digitare h, j, k, l rispettivamente per indicare un carattere a sinistra, in giù, in su
e a destra. Ad esempio d2l cancella due caratteri a destra. Al posto di dl si può
digitare la lettera x e al posto di dh la lettera X. Infine dd cancella la riga cor-
rente.
• Digitare e, b, w per indicare fino alla fine della parola attuale, fino all’inizio della
parola attuale e fino all’inizio della parola successiva.
• Digitare ^, 0, $ per indicare fino al primo carattere non vuoto della riga attuale,
fino all’inizio della riga attuale e fino alla fine della riga attuale.
• Digitare f<x> per indicare fino alla prossima occorrenza di un certo carattere
<x>. Ad esempio, fe sposta il cursore sulla prossima occorrenza del carattere e.
161
Capitolo 7

• Digitare /<stringa>, ?<stringa> per indicare fino alla successiva occorrenza della
stringa o espressione regolare <stringa> e la stessa cosa a ritroso nel file; ad
esempio, /pippo sposta il cursore fino alla prossima occorrenza della parola pippo.
• Digitare {, } per indicare fino all’inizio e fino alla fine del paragrafo attuale.
• Digitare G, H per indicare fino alla fine del file e fino all’inizio dello schermo.

Tutti i comandi appena visti possono essere preceduti da un numero di ripetizioni che nel
caso di G, invece, indicano un numero di riga all’interno del file.

• Ancora comandi per manipolare il testo


Abbiamo parlato dei comandi “i” e “a”, ma non abbiamo fatto riferimento ad altre
possibilità che vim ci dà.
• Il comando I consente l’inserimento di nuovo testo prima del primo carattere della
riga corrente fintanto che non viene premuto Esc.
• Il comando A consente l’inserimento di nuovo testo dopo l’ultimo carattere della
riga corrente fintanto che non viene premuto Esc.
• Il comando o apre una nuova riga al di sotto della riga corrente e consente l’inse-
rimento di nuovo testo fintanto che non viene premuto Esc.
• Il comando O apre una nuova riga al di sopra della riga corrente e consente l’inse-
rimento di nuovo testo fintanto che non viene premuto Esc.
• Il comando C sostituisce tutti i caratteri dalla posizione corrente del cursore fino alla
fine della riga.

• Operazioni di copy/cut & paste


Prima di tutto per duplicare una singola riga bisogna posizionarsi sulla stessa e
premere yyp. Per copiare una o più righe, invece, bisogna posizionarsi sulla prima,
premere doppio apice+r+numero di righe da copiare+yy (ad esempio per copiare
10 righe digitare “r10yy) e, poi, posizionarsi sulla riga dove si vuole incollare quan-
to salvato e premere p o P a seconda che si vogliano inserire le righe copiate prima
o dopo la riga evidenziata dal cursore.

Copia di righe con il comando yenk (yyp).


162
concetti avanzati

Per fare operazioni di taglia & incolla bisogna utilizzare la lettera d. Quindi per spo-
stare una singola riga bisogna posizionarsi sulla stessa e premere ddp.
Per spostare una o più righe, invece, bisogna posizionarsi sulla prima premere
doppio apice+r+numero di righe da copiare+dd (ad esempio per spostare 50
righe digitare “r50dd) e, poi, posizionarsi sulla riga dove si vuole incollare quanto
salvato e premere p o P.
Si ricordi che vim ha a disposizione ben 27 memorie in cui bufferizzare il testo e
questo ci permette di lavorare con grande libertà. In effetti ci sono 26 memorie
contraddistinte dalle lettere minuscole dell’alfabeto inglese più una anonima.
Questo significa che nei casi esaminati all’inizio abbiamo lavorato sempre sia per
copiare che per tagliare con la memoria anonima.
Per puntare alle memorie non anonime bisogna specificare la lettera dell’alfabeto
corrispondente. Ad esempio vediamo i seguenti casi:
• Digitare “xy30w per copiare nella memoria x le trenta parole che si trovano dopo
il cursore.
• Digitare “hd22w per spostare nella memoria h le ventidue parole che si trovano
dopo il cursore.
• Digitare “cp per incollare dopo il cursore il contenuto della memoria c.

Operazioni di copia e incolla all’interno di due sessioni terminale diverse.

La potenza di vim si vede anche dal fatto che tutto ciò che abbiamo salvato in memo-
ria è utilizzabile nei seguenti casi:
• Per copiare o muovere informazioni da un file aperto con vim ad un altro nella stes-
sa sessione terminale.
• Per copiare o muovere informazioni da un file aperto con vim ad un altro in due o
più sessioni terminale diverse.

163
Capitolo 7

Le informazioni permangono nelle varie memorie di vim anche se viene chiusa la ses-
sione di editing o addirittura il terminale. Linux mantiene sempre attivi questi buffer fin-
tanto che non si termina la sessione corrente del sistema operativo.

• Ritornare sui propri passi


Se si commette un errore di solito è abbastanza semplice tornare indietro a patto che,
naturalmente, si reagisca immediatamente e non dopo altri cambiamenti. Questo perché
vim ha comandi di undo che annullano le modifiche effettuate. Si tratta di u e U. Se si
modifica la riga numero 25 del file corrente e poi si sposta il cursore sulla riga 48 e si digi-
ta U, il cursore ritorna sulla riga 25 e l’ultima modifica viene annullata. Se si digita U di
nuovo si fa l’undo dell’undo: infatti viene ripristinata la modifica che avevamo appena
annullato. Il comando U si applica solo all’ultimo cambiamento effettuato. Il comando u è
molto più potente perché permette di annullare qualsiasi modifica a ritroso. Si tratta, quin-
di, di un undo multilivello con possibilità di annullamento praticamente illimitate.

• Ricerca di parole
Supponiamo di lavorare con un file molto grande e di avere la necessità di trovare alcune
parole. Esistono diverse possibilità ma la più semplice è quella di utilizzare la barra inver-
sa / seguita da ciò che si sta cercando, per cercare il testo in avanti. Per fare la ricerca all’in-
dietro, invece, utilizzare il punto interrogativo seguito dalla parola ricercata. In entram-
bi i casi per proseguire nella ricerca cercando l’occorrenza successiva digitare la lettera n.
Notare che l’editor, se non partiamo dai due punti ma digitiamo direttamente la barra inver-
sa, si posiziona subito sulle varie parole mano a mano che scriviamo i caratteri. Una volta
dato invio vim evidenzia con un colore differente tutte le parole trovate.
Un altro modo per fare una ricerca è utilizzare la sintassi :g/<parola da ricer-
care>/p seguito da Invio, dove la lettera g indica che la ricerca deve essere fatta global-
mente e la lettera p richiede la visualizzazione dei risultati sullo schermo. Si tratta di un
comando del tutto simile alla ricerca tramite grep fatta sul prompt di Linux.

Ricercare parole è veramente semplice con


la barra inversa seguita dalla stringa ricercata.

164
concetti avanzati

• Sostituzione di parole
A volte accade che si debba fare la sostituzione di una parola con un’altra. È il clas-
sico “replace” che si effettua con :%s/<parola da sostituire>/<nuova
parola> seguito da Invio dove se vogliamo fare una sostituzione in tutto il testo
basta aggiungere la lettera g alla fine della precedente sintassi.
Ad esempio se si vuole sostituire la parola margherita con rosa in tutto il testo
bisogna digitare :%s/margherita/rosa/g e poi premere Invio.
Vediamo anche un esempio più complesso. Si tratta di eliminare i caratteri blank
alla fine di ogni di ogni riga sia che siano spazi sia che siano tabulazioni. Il coman-
do da eseguire è :%s/[space tab]*$// seguito da Invio. Complicato?
Effettivamente non è proprio intuitivo. Innanzitutto tra le parentesi quadre bisogna
inserire da tastiera un singolo spazio e un singolo carattere di tabulazione. L’aste-
risco dopo la parentesi quadra e il dollaro successivo dicono a vim di cercare i
caratteri blank alla fine di ogni riga e di sostituirli con “nulla”.

Per sostituire in cascata una determinata stringa in tutto il file si utilizza il comando %s.

Eliminare i blank e le tabulazioni alla fine di tutte le righe.

165
Capitolo 7

• Gestire i file
Un’altra possibilità che ci dà vim è quella di visualizzare più file contemporaneamen-
te. Avendo i file chiamati primo, secondo e terzo digitare sul prompt di Linux vim
primo secondo terzo seguito da Invio per aprirli tutti. Per passare da un file all’altro
utilizzare :n seguito da Invio, mentre per salvare il file corrente chiudendolo digi-
tare ZZ. Una volta chiuso l’ultimo file termina anche la sessione corrente di vim.
Se si devono aprire più file che iniziano con gli stessi caratteri si può utilizzare il
carattere jolly asterisco dal prompt.
Se abbiamo i seguenti file documento1, documento2, documento3, documen-
to4 e documento5, basta digitare vim documento* per aprire una sessione mul-
tipla di vim. Se nella directory corrente non esistono altri file che iniziano con la
lettera d allora potremmo addirittura digitare vim d*
Se vogliamo copiare il contenuto di un file in quello corrente dobbiamo posizio-
nare il cursore dove intendiamo inserire il nuovo file e poi digitare :r <nome
del file> seguito da Invio.

Apertura di più file contemporaneamente.

• Caricare una copia della shell di Linux


Quando si lavora con vim potrebbe essere utile accedere al sistema operativo per
effettuare delle ricerche, eseguire programmi, manipolare file o eseguire altre operazioni.
Il trucco è di digitare un punto esclamativo dopo i due punti eventualmente seguito dal
comando Linux che si vuole eseguire. Un esempio potrebbe essere l’esecuzione del
comando che consente di vedere la costruzione dinamica di un file di log; in questo caso
digitare :!tail –f /home/data/imp/ORAimp.log seguito da Invio.
Se si vogliono eseguire più operazioni sulla shell allora non digitare alcun comando
dopo il punto esclamativo. Abbiamo ora una copia della shell di Linux che potremo

166
concetti avanzati

successivamente chiudere con la sequenza di tasti Ctrl+d, per tornare a vim. In que-
sto caso può essere utile indicare la shell che vogliamo visualizzare. Indicando :sh
seguito da Invio carichiamo la Bourne shell, per caricare le altre shell bisogna per
forza utilizzare il punto esclamativo seguito dal nome della shell. Quindi :!sh seguito
da Invio visualizza ancora la Burne shell, :!csh seguito da Invio visualizza la C shell,
:!tcsh seguito da Invio visualizza la tc shell ed, infine, :!ksh seguito da Invio visualizza
la Korn shell.

Caricare una copia della shell dei comandi.

• Farsi aiutare da Linux


Alcune operazioni relative ai file ASCII creati e manipolati con vim sono più facilmente
eseguibili direttamente da Linux.
Cominciamo con il sort, ossia l’ordinamento di una lista di valori. Se, ad esempio,
abbiamo il file Nomi che contiene una lista di n nominativi incolonnati l’uno dopo
l’altro dobbiamo digitare sul prompt Linux sort Nomi > Temp ; mv –f
Temp Nomi seguito da Invio, dove lo standard output di sort viene scaricato sul
file temporaneo Temp creato al volo che poi viene riversato sul file Nomi. Abbia-
mo utilizzato il punto e virgola per separare i due comandi sort e mv che vengo-
no eseguiti su una sola riga e l’opzione –f di mv per evitare che Linux chiedesse
conferma.
Quanto abbiamo fatto dal prompt del sistema operativo può anche essere ese-
guito all’interno di vim in modalità inserimento (i due punti) anteponendo il punto
esclamativo, rispondendo con un Invio alla richiesta di conferma di Linux e infine
digitando una C (c maiuscola) per ricaricare il file corrente.

167
Capitolo 7

Ordinare una lista con il comando sort.

Un’altra possibilità interessante è quella di creare una rappresentazione tabellare a parti-


re da una normale lista con una sola colonna. Il comando che ci serve questa volta è pr.
Volendo creare una tabella composta da quattro colonne con i campi ordinati alfabeti-
camente digitare sul prompt di Linux sort Nomi | pr –4t > Temp ; mv –f
Temp Nomi seguito da Invio. In questo caso abbiamo utilizzato il carattere di pipe (|)
per creare una pipeline, ossia una serie di comandi in sequenza l’uno dopo l’altro. La
tabella, così creata, contiene caratteri di tabulazione che separano le colonne l’una dal-
l’altra. Se vogliamo convertire le tabulazioni in una stringa di caratteri blank dobbiamo
modificare il comando precedente introducendo un’altra pipe e il comando expand
come segue: sort Nomi | pr –4t | expand > Temp ; mv –f Temp
Nomi seguito da Invio. Ovviamente anche in questi ultimi due casi è possibile eseguire il
comando all’interno di vim caricando una copia di una shell di Linux.

Creazione di una rappresentazione tabellare ordinata.

168
concetti avanzati

Il risultato finale del complesso comando che unisce sort, pr ed expand.

7.2 Linux in rete


Linux si presenta ai propri utenti come un sistema operativo completo da tutti i punti
di vista. Questo implica che può lavorare sia in ambiente stand-alone che in rete for-
nendo, tra l’altro, tutti gli strumenti necessari ad interagire al meglio con Internet. E
non poteva essere altrimenti essendo stata proprio la rete delle reti a partorire Linux.
Senza Internet, infatti, non sarebbe stato possibile creare un prodotto, quale Linux,
che è il frutto dello sforzo e della cooperazione tra menti geniali disseminate in tutto
il mondo.

• Alla base di Internet


Il protocollo di rete più diffuso e che si trova anche alla base di Internet è il
TCP/IP. TCP/IP (Transmission Control Protocol/Internet Protocol) consente in
definitiva la trasmissione dei dati tra i vari computer che fanno parte della rete. In
pratica quello che accade è che ogni periferica connessa alla rete TCP/IP viene
associata ad un indirizzo IP che permette d’identificarla univocamente. Ogni indi-
rizzo IP si può suddividere in due parti: una che si riferisce alla rete e l’altra all’ho-
st. A questo proposito esiste la network mask o netmask che identifica quale por-
zione si riferisce alla rete e quale all’host. I bit della netmask impostati ad uno
indicano la rete mentre quelli a zero l’host. Per esemplificare un indirizzo IP
192.17.83.24 (in base due: 11000000 00010001 01010011 00011000) con
netmask 255.255.255.0 (in base due: 11111111 11111111 11111111 00000000) è
scomponibile in due parti: 192.17.83 che si riferisce alla rete e 24 che identifica il
computer.

169
Capitolo 7

Quando si parla di classe degli host si fa riferimento proprio al netmask. Un host con
netmask 255.0.0.0 è di classe A, uno con netmask 255.255.0.0 è di classe B ed uno
con netmask 255.255.255.0 è di classe C.

• Come si configura Linux per la rete


Come tutte le componenti di Linux anche la rete viene configurata in fase d’installa-
zione del sistema operativo. Analizziamo ora i file di configurazione per il network, che
ricordiamo possono anche essere aggiornati a caldo senza bisogno di reboot.

Il file /etc/sysconfig/network, in questo caso la rete non è configurata.

Il primo è /etc/sysconfig/network che contiene tutte le informazioni di controllo dei file


di rete e dei demoni. Il suo contenuto è veramente intuitivo:
NETWORKING=yes
FORWARD_IPV4=false
HOSTNAME=gioia.italia.com
DOMAINNAME=italia.com
GATEWAY=193.111.189.2
GATEWAYDEV=etho
NISDOMAIN=aragorn
Un altro file molto importante è /etc/hostname che contiene solo il nome primario
dell’host e che viene definito durante la fase di boot in base alla riga HOSTNAME del
file network appena esaminato.
/etc/hosts invece contiene il mapping tra gli indirizzi IP e gli hostname e anche i vari
alias associati. Ad esempio:
127.0.0.1 localhost
192.17.83.24 gioia.italia.com
192.17.83.25 server

170
concetti avanzati

192.17.83.26 router

Il primo indirizzo IP specificato nell’esempio (127.0.0.1) è l’indirizzo di default che


identifica sempre l’host corrente e che permette di fare test simulando una rete atti-
va, anche se questa non è stata ancora configurata.

Il file /etc/hosts che contiene il nome primario dell’host.

Il file hosts, quindi, consente di risolvere solo gli indirizzi più utilizzati. Gli altri vengo-
no risolti tramite il DNS (Domain Name System) che tiene traccia di tutti i nomi di
dominio e indirizzi IP registrati e accessibili via Internet. Ricordiamo che esiste un’ap-
posita organizzazione che si occupa di queste registrazioni (Internic) e che è possibi-
le chiedere la registrazione di nuovi nomi di dominio in qualsiasi istante collegandosi
al sito rs.internic.net seguendo le istruzioni del collegamento registration services.
Il lato client del sistema DNS viene configurato sotto Linux con il file /etc/resolv.conf.
Questo file contiene il nome di dominio dell’host, l’ordine di ricerca e gli indirizzi del
server DNS. Le parole chiave presenti sono:
• nameserver, che contiene l’indirizzo IP del server DNS
• domain, che contiene il nome di dominio DNS per l’host
• search, che definisce l’ordine di ricerca per i nomi di dominio. Si deve specificare in
alternativa a domain. Es. search italia.com francia.com
• sortlist, che specifica l’ordinamento dei nomi di dominio restituiti sotto forma di
coppie network /netmask. Per esempio sortlist 193.118.10.4/255.255.255.0
193.118.15.6/255.0.0.0

171
Capitolo 7

Il file /etc/services contiene il mapping tra i numeri di porta del computer


e i nomi dei servizi che sono attivi sulla porta corrispondente.

Il file /etc/services contiene il mapping tra i numeri di porta del computer e i nomi
dei servizi che sono attivi sulla porta corrispondente. Ricordiamo che il concetto
di porta è molto semplice ed è stato implementato per distinguere i diversi servi-
zi forniti dallo stesso host (è un ulteriore livello di approfondimento rispetto all’in-
dirizzo IP).
Nel file services sono presenti alcuni mapping standard tra porta e sevizio, che
sono i seguenti:
7 echo effettua l’echo di tutto ciò che riceve
13 daytime restituisce data e ora corrente
23 telnet emulazione di terminale remoto
25 smtp trasferimento di posta elettronica
53 domain Domain Name System
80 www traffico Worl Wide Web
110 pop3 Post Office Protocol, versione 3
443 https traffico Web sicuro
I file /etc/host.conf e /etc/nsswitch.conf sono stati creati per definire l’ordine in base
al quale Linux deve consultare i file di sistema. Sono entrambi fondamentali per
risolvere gli hostname, in quanto alcune versioni della libreria libc fanno riferimen-
to ad host.conf mentre altre a nsswitch.conf.

• La risoluzione dei problemi


I problemi che possono riguardare un host sono essenzialmente di due tipi:
• hardware, quando si deteriorano dei componenti come cavi, schede ethernet, rou-
ter, eccetera.
• software, soprattutto in sede di configurazione dell’host.
Linux fornisce tre strumenti veramente utili per l’individuazione dei problemi: ping e
traceroute per testare se un host è in grado di raggiungere un altro sistema e tcp-
172
concetti avanzati

dump per analizzare il flusso del traffico su una rete.


Uno degli strumenti più semplici da utilizzare è il programma ping, che invia un flus-
so continuo di pacchetti ICMP (Internet Control Message Protocol) ad un certo host
e attende una risposta. Alla fine del suo lavoro ping visualizza un rapporto sui risulta-
ti ottenuti. Le sue opzioni più utilizzate sono: -c, per individuare il numero di pacchetti
da inviare (il default è infinito); -i, per specificare quanti secondi ping deve attendere
tra un invio e l’altro; -q, per visualizzare le statistiche solo alla fine delle verifiche. Ad
esempio: ping -c 10 -i 5 -q chiara.italia.com significa che si sta testando la connetti-
vità all’host chiara.italia.com e si vogliono inviare dieci pacchetti, attendendo cinque
secondi tra un pacchetto e l’altro, visualizzando il report alla fine del test.

Utilizzo di ping in quiet mode.

Può capitare che ping riesca a connettersi ad un host, ma che telnet e ftp non rie-
scano a farlo. Questo accade perchè i pacchetti TCP/IP contengono un campo TTL
(Time-To-Live) che viene decrementato di uno da ogni router della rete e il pacchet-
to inviato ad un certo host viene scartato solo se il TTL raggiunge il valore zero.
Poichè ping utilizza un valore di default di TTL che è 255 (il massimo consentito)
potrà in alcuni casi ricevere risposta, al contrario di telnet e ftp che lavorano con un
ftp più basso (30 o 60). Per omogeneizzare il test bisognerebbe utilizzare il parame-
tro -t di ping seguito da un valore di TTL impostato da noi.
Il programma traceroute è senz’altro più sofisticato di ping in quanto è in grado d’in-
viare una serie di pacchetti UDP dotati di un valore TTL via via crescente e intercet-
ta le risposte dei gateway creando una mappa del percorso dei pacchetti da un host
ad un altro. Ricordiamo che UDP (User Datagram Protocol) costituisce uno dei com-
ponenti del livello più basso del protocollo TCP/IP e ha caratteristiche di elevata effi-
cienza in quanto, al contrario di TCP, non deve attendere che i pacchetti restituisca-
no la risposta di essere arrivati a destinazione.

173
Capitolo 7

7.3 NIS e NIS+

Linux fornisce una serie di servizi che potenziano e completano le sue funzionalità di
base. In questo paragrafo tratteremo del Network Information System (NIS) e delle
potenzialità di matrice Client-Server che il NIS offre in un ambiente di rete.

• Le origini
Il NIS è nato in ambiente UNIX nei laboratori della Sun Microsystems che, ricordia-
mo, detiene il copyright di UNIX Sun Solaris, ma anche di tanti altri importanti mar-
chi (primo tra tutti Java).
Come dice il nome stesso il NIS è un servizio software di rete che supporta determi-
nate operazioni e, inizialmente, era stato denominato “yellow pages” (pagine gialle),
ecco perché utti i comandi NIS sono preceduti dal prefisso yp. Il progetto NIS nasce
dalla volontà di unificare determinati servizi di utilizzo comune in rete e di fornirli in
maniera standard ai computer che appartengono a quella rete. Alla base di ciò esi-
ste una logica Client-Server ed ecco perchè nel paragrafo che segue faremo una
rapido riferimento a questo concetto, che tanta fortuna ha avuto nella seconda metà
degli anni ‘90.

• Il concetto di Client-Server e il NIS


Ancora ai nostri giorni capita a chi lavora nel mondo IT e non di rado a chiunque
s’interessi minimamente d’informatica o abbia a che fare con elaboratori, di
entrare in contatto per lo meno per sentito dire, con il concetto di Client-Server.
Si tratta di un concetto usato e abusato nel corso del tempo da esperti o pseudoe-
sperti d’informatica; per poterlo comprendere a pieno e per poter capire come il
NIS abbia a che fare con esso è utile dare una definizione separata delle caratteri-
stiche peculiari di ciò che si definisce Client e di ciò che si definisce Server.
Anzitutto per Client, letteralmente “cliente”, s’intende un soggetto che necessita
di risorse altrui per poter espletare determinate funzionalità e che per attinge-
re a tali risorse deve ricorrere ad un altro soggetto progettato appositamente per
consentire la condivisione delle risorse che detiene e di cui è l’unico “proprieta-
rio legittimo”.
Viceversa per Server, letteralmente “servente”, s’intende un soggetto che ha a
disposizione un certo quantitativo di risorse, che non ha bisogno di ricorrere ad
altri soggetti per gestire ed utilizzare tali risorse e che è in grado di distribuire le
proprie risorse a terzi secondo precisi criteri di ripartizione, che dipendono
esclusivamente da come è stato progettato.
Le precedenti definizioni, volutamente generiche, non permettono di evincere se
si stia parlando di concetti riferiti all’hardware o al software; in effetti si tratta di
un qualcosa che fa riferimento soprattutto al mondo del software, ma che ha
implicazioni non indifferenti anche in quello dell’hardware, vediamo in che ter-
mini.
174
concetti avanzati

Da un punto di vista software è possibile individuare almeno tre grandi catego-


rie di prodotti di tipo Client-Server, si tratta di:

1. Applicativi che possono operare anche esclusivamente in ambiente monou-


tente (su una sola postazione di lavoro)
2. DBMS Server che permettono la gestione di grandi moli di dati
3. Sistemi operativi che supportano reti di tipo distribuito.

Nella prima categoria sono compresi quei programmi, come Microsoft Excel, che
rientrano nella logica Client-Server, in quanto grazie a tecnologie particolari (in
casa Microsoft si parla di OLE, acronimo di Object Linking and Embedding) sono
in grado di fornire i propri servizi ad altri applicativi che ne richiedono le risorse.
I DBMS (acronimo di DataBase Management System) Server sono delle piat-
taforme software, inizialmente destinate solo ad aziende con elevate disponibi-
lità economiche, ma ora abbordabili anche da aziende meno potenti dal punto
di vista finanziario, che permettono di gestire grosse moli di dati in base ad una
architettura di tipo Client-Server.
Anche in questo caso si può parlare di allocazione distribuita delle risorse, in quanto
esiste un database servente che ha lo scopo fondamentale di archiviare informazio-
ni che vengono utilizzate dalle postazioni di lavoro, i Client, a cui fanno capo. In que-
sta categoria di prodotti Client-Server si comincia a vedere anche un maggiore coin-
volgimento dell’hardware alla logica dell’architettura di tipo Client-Server: infatti con-
trariamente alla classificazione precedente, dove, parlando di applicativi, viene coin-
volto generalmente un solo Personal Computer, gli elaboratori utilizzati sono sicura-
mente più di uno. Infine l’ultima categoria si riferisce a quei sistemi operativi, come
Linux e UNIX in generale (ma anche Microsoft Windows NT/2000 o Novell Netwa-
re), che permettono di creare una rete locale di elaboratori; si tratta di network (LAN,
reti locali o WAN, reti geografiche) che mettono in comunicazione tra loro più com-
puter. In questo caso la macchina che “detiene il comando delle operazioni”, ossia
sulla quale è stata installata la versione servente del sistema operativo, è a tutti gli
effetti il Server, mentre gli altri elaboratori assumono il ruolo di Client; questi ultimi
risiedono fisicamente, di solito, su macchine che hanno caratteristiche hardware piut-
tosto limitate, soprattutto in termini di memoria ad accesso causale (RAM) e di
memoria di massa (disco fisso), mentre il Server viene dotato di componenti più sofi-
sticati. Il NIS, come meglio vedremo tra breve, rientra in quest’ultima categoria. Esso,
infatti, permette di definire un server master sul quale accentrare servizi e soprattut-
to i file passwd e group (utenti e gruppi) che più di frequente vengono acceduti e
modificati. Un utente definito sul server NIS è come se fosse stato creato localmen-
te su tutte le macchine che utilizzano quel master e, quindi, è utilizzabile per fare il
login su ognuna di esse.

175
Capitolo 7

• Set-up e configurazione
L’installazione del software NIS, qualora non effettuata all’inizio, deve essere eseguita
dal CDROM d’installazione tramite il Mandrake Control Center o altrimenti tramite il
comando rpm –i seguito dal nome del pacchetto da installare. La configurazione del
NIS implica che si decida subito se ci saranno dei server slave (ossia computer
secondari che allegeriscono i compiti del master) e il dominio NIS. A questo propo-
sito si ricordi che il dominio NIS non ha nulla da spartire con quello DNS anche se
nulla ci vieta di chiamare i due domini nella stessa maniera. Per ragioni di chiarezza
è comunque bene differenziarli all’interno del file /etc/hosts. Il primo comando da
lanciare per configurare il server NIS è “nomedominio” seguito dal nome del domi-
nio scelto. In altre parole digitare sul prompt: domainname <nome_del_domi-
nio_NIS> Da questo momento il sistema NIS è attivo anche se bisogna impostare
i file di start-up per garantire che in fase di ripartenza di Linux il NIS venga opportu-
namente inizializzato. Il file /etc/rc.d/init.d/ypserv, installato con il set-up del NIS, veri-
fica in /etc/sysconfig/network quale dominio utilizzare.
Dunque è proprio in /etc/sysconfig/network che deve essere aggiunta la riga che segue:
NIS_DOMAIN=<nome_del_dominio_NIS> e che identifica il dominio NIS.

Il file ypserv per lo startup del NIS.

• I file da condividere
Il passo successivo consiste nel definire quali file condividere sul NIS. Si ricordi, innan-
zitutto, che i file per essere condivisi devono avere le seguenti caratteristiche:
1. Devono essere tabellari
2. Devono avere una chiave univoca relativa ad ogni riga
3. Devono essere di tipo ASCII (testo).
Se questi criteri sono stati rispettati il file testo verrà poi trasformato in un file di tipo
DBM, ossia di tipo database indicizzato per effettuare ricerche veloci.
Quando i criteri di ricerca sono multipli (le chiavi) verranno generati, per uno stesso

176
concetti avanzati

file testo, tanti DBM quante sono le chiavi. Ad esempio, poichè il file passwd, ammet-
te due chiavi, una per login (nome utente) e l’altra per UID (codice identificativo uni-
voco), vengono generati i seguenti due DBM: passwd.byname e passwd.byuid.
L’identificazione dei file che devono essere condivisi deve avvenire nel file
/var/yp/Makefile dove sono presenti varie opzioni tra cui una lista di file del tipo:
GROUP = $(YPPWDDIR)/group
PASSWD = $(YPPWDDIR)/passwd
SHADOW = $(YPPWDDIR)/shadow
...

Makefile, uno dei file di configurazione del NIS.

Si ricordi che YPPWDDIR è una variabile inizializzata all’inizio del file per puntare a
/etc e non si consiglia di modificarla.
Lo statement GROUP si riferisce al file dei gruppi, PASSWD a quello degli utenti ed
infine SHADOW a quello delle password.
Ovviamente anche altri file possono essere condivisi.
Per ultimare la condivisione verificare che nella sezione “all” siano presenti i file che
vogliamo distribuire, tenendo presente che quelli che in generale vengono distribuiti
in rete sono: ypservers, passwd, group, hosts, spc, services, netid, protocols e mail.
Per inizializzare il database NIS utilizzare il comando /usr/lib/yp/ypinit seguito dal
parametro -m. Se si vogliono specificare server secondari aggiungere il nome (o i
nomi) quando viene richiesto “next host to add:”, per ultimare il tutto digitare Ctrl+D,
attendere la richiesta di conferma e le operazioni di distribuzione dei file sul network.

Nel caso in cui sia necessario inserire un nuovo computer nella lista dei client è sufficiente
aggiungerlo nel file /var/yp/ypservers e lanciare il comando make sempre sotto /var/yp.

177
Capitolo 7

• Avviare i processi del NIS


Per avviare manualmente i processi del NIS utilizzare i comandi che seguono:
/etc/rc.d/init.d/ypserv start
/etc/rc.d/init.d/yppasswd start
Il primo attiva i servizi NIS veri e propri, mentre il secondo consente ai client di modi-
ficare le password degli utenti direttamente sul master NIS. Chiaramente per avviare
automaticamente questi programmi in fase di avvio è necessario creare gli opportu-
ni link simbolici in init.d dopo essersi posizionati in /etc/rc.d/rc3.d:
ln -s ../init.d/ypserv S60ypserv
ln -s ../init.d/yppasswd S60yppasswd
I corrispondenti link simbolici devono anche essere creati in /etc/rc.d/rc0.d per garan-
tire un corretto spegnimento dei processi del NIS:
ln -s ../init.d/ypserv K40ypserv
ln -s ../init.d/yppasswd K40yppasswd

• Un client NIS
Per configurare un client NIS sono necessarie meno operazioni rispetto a quelle rela-
tive al server. Il primo file sul quale intervenire è senz’altro /etc/yp.conf, dove si deve
indicare il nome del dominio NIS e quello del client:
domain <nome_del_dominio_NIS> server <nome_del_client>
Successivamente indicare il nome del dominio NIS nel file /etc/sysconfig/network,
aggiungendo la riga che segue: NISDOMAIN = <nome_del_dominio_NIS>
Infine modificare /etc/nsswitch.conf per definire su quale sistema e in quale ordine
cercare i file. Si potrà avere una lista del tipo:
passwd:files nisplus nis
shadow:files nisplus nis
group: files nisplus nis
hosts: files nisplus nis dns
services: nisplus [NOTFOUND=return] files
...
Dove la prima colonna indica il file da ricercare, mentre la seconda dove cercarlo e
con che priorità.
Vediamo la seconda colonna che opzioni ammette:
• nis: fa riferimento al NIS per reperire l’informazione
• yp: si tratta di un alias di NIS (uguale al caso precedente)
• dns: ricerca l’informazione sul domain name server (applicabile solo agli host)
• files: non fa riferimento ad alcun master, ma semplicemente alle informazioni pre-
senti sulla macchina locale (ad esempio /etc/group)
• nisplus: ricerca il file sul NIS+, un sistema Client-Server simile al NIS
• [NOTFOUND=return]: significa semplicemente che la ricerca viene bloccata se le
informazioni non sono reperibili.

178
concetti avanzati

Anche nel caso di un client bisogna impostare i link simbolici per le operazioni di
start-up in rc3.d e rc0.d. Il file a cui puntare e che si trova in /etc/rc.d/init.d è ypbind
e come al solito digitare come root quanto segue:
cd /etc/rc.d/rc3.d
ln -s ../init.d/ypserv S60ypbind
cd /etc/rc.d/rc0.d
ln -s ../init.d/ypserv K40ypbind
Per verificare se il client NIS funziona non è necessario riavviare il sistema ed è sufficiente:
1. Digitare il comando: nomedominio <nome_del_dominio_NIS>
2. Lanciare lo start del processo: /etc/rc.d/init.d/ypbind start
3. Visualizzare il contenuto del file delle password presente sul master NIS: ypcat
passwd.
Se il file delle password non viene visualizzato e compare un errore del tipo “No such
map passwd.byname. Reason: can’t bind to a server which serves domain.” allora è
necessario ricontrollare i file di configurazione e le loro impostazioni.

• Uno slave per il NIS


Abbiamo già visto in sede di descrizione del master NIS, che c’è un momento in cui è
necessario definire se esistono dei server secondari. E’ il comando ypinit -m che ce
lo richiede ed è quindi qui che va specificato il nome dello slave. Per lanciare il server
secondario digitare: /usr/lib/ypinit -s <nome_del_master_NIS>
Altra operazione fondamentale è quella che permette di mantenere allineati gli
slave al master tramite operazioni di push dei file di map.
Le push possono essere fatte dal master se il parametro NOPUSH=“TRUE” viene
commentato nel makefile (per il commento utilizzare il simbolo “#”) e se la riga
DOMAIN diventa uguale a ‘/bin/<nome_dominio_NIS>‘.
Per testare il funzionamento dello slave lanciare sul master il comando “make all”
nella directory /var/yp ed attendere il push di tutti i file di map verso i server NIS
secondari. Successivamente modificare il file /etc/yp.conf sullo slave in modo che
ypserver sia impostato per puntare al server slave e poi cercare di listare con
ypcat il file passwd. In caso di problemi nel display del file degli utenti, ripercor-
rere i passi precedenti.

• Panoramica sul NIS+


Il NIS+ é simile al NIS, ma ha molte caratteristiche aggiuntive. Non si tratta di
un’estensione del NIS, ma di un programma di servizio nuovo e totalmente rein-
gegnerizzato. Il NIS+ consente d’immagazzinare in unico server le informazioni
relative agli indirizzi delle workstation, relative alla sicurezza, interfaccia Ethernet,
stampanti, servizi di rete e posta elettronica.
La struttura del NIS+ è gerarchica ed è simile al file system di Linux. La struttura
gerarchica consente al NIS+ di essere suddiviso in domini multipli che possono

179
Capitolo 7

essere amministrati autonomamente.


I client che sono stati autorizzati possono così accedere alle informazioni presen-
ti in altri domain in aggiunta a quelle reperibili sul proprio.
Ogni dominio è supportato da un insieme di server.
Quello principale è chiamato master, mentre quelli di secondari sono chiamati
repliche. Le informazioni di rete sono immagazzinate in sedici tabelle standard
presenti in un database NIS+. Ovviamente sia il server master che le repliche
eseguono i programmi propri del NIS+ ed tutti i server mantengono copie delle
tabelle NIS+.

I cambiamenti effettuati sui dati del NIS+ presenti sul master server vengono propagati
automaticamente sulle repliche secondo una logica incrementale (non tutto il master data-
base viene replicato, ma solo le modifiche che non risultano ancora registrate sul NIS+).

Il NIS+ comprende un sofisticato sistema di sicurezza per proteggere le informazioni


che in esso sono contenute. Esso, infatti, utilizza il sistema dell’autenticazione e della
autorizzazione per verificare se una richiesta inviata da un client deve essere esegui-
ta.
L’autenticazione verifica se il richiedente di una certa informazione è un utente vali-
do sulla rete. L’autorizzazione verifica se un certo utente è autorizzato a visualizzare
e/o a modificare le informazioni richieste.
Lo schema di riferimento in seguito alla richiesta di un client è essenzialmente il seguen-
te:
• Richiesta da un client di accesso ad un oggetto NIS+
• Autenticazione: il NIS+ verifica le credenziali dell’utente sulla rete
• Autorizzazione: il server identifica l’oggetto richiesto e decide se inviare una rispo-
sta di accesso negato o se accettare la richiesta del client.

7.4 Programmare la shell con Linux

Molto spesso quando si parla di programmazione si pensa agli ambienti di svi-


luppo ad alto livello di Microsoft e ai sistemi operativi Windows.
Questo ovviamente perché la pubblicità ha effetti importanti anche nel mondo
dell’informatica. L’abilità commerciale di Bill Gates ha consentito, infatti, d’im-
porre i tool e i sistemi operativi Microsoft all’attenzione del mercato mondiale
dell’Information Technology. Linux, pur non avendo la stessa capacità di pene-
trazione nel mercato di altre piattaforme, è in grado di offrire possibilità non tra-
scurabili a chi s’interessi di programmazione e voglia automatizzare operazioni
più o meno complesse. Esistono svariate tecniche per automatizzare operazioni
all’interno di Linux, una del tutto gratuita é la programmazione di shell.

180
concetti avanzati

• La programmazione di shell
La shell è l’interfaccia primaria che interpreta i comandi digitati in una sessione
terminale del sistema operativo.
Come già detto in precedenza, mentre la shell di Windows è solo una (com-
mand.com), Linux e tutti i sistemi operativi di tipo Unix ne dispongono di svaria-
te. A seconda della shell che si utilizza i comandi disponibili sono leggermente
differenti. Le più note sono:
• ash. Shell limitata di tipo sh presente in /bin/ash.
• ash.stati. Simile alla precedente. Si trova in /bin/ash.static.
• bash. Forse la più famosa (la Bourn Again), presente in /bin/bash.
• bash2. E’ la nuova versione della bash. Si trova in /bin/bash2.
• bsh. Semplice link simbolico alla ash che è presente in /bin/bsh.
• csh. E’ la C shell e si trova in /bin/csh.
• ksh. Si tratta della Korn shell. Si trova in /bin/ksh e /usr/bin/ksh.
• pdksh. Link simbolico alla ksh che è presente in /usr/bin/pdksh.
• rsh. Tipica shell per operazioni di rete (soggetta a restrizioni). Si trova in /usr/bin/rsh.
• sh. Link simbolico alla bash e si trova in /bin/sh.
• tcsh. Un’altra shell molto utilizzata e compatibile con la csh. Si trova in /bin/tcsh.
• zsh. Shell compatibile con csh, ksh e sh. Si trova in /bin/zsh.
La programmazione di shell è indubbiamente utile per effettuare in automatico determi-
nate impostazioni e per creare dei veri e propri programmi di utilità interpretati. Un esem-
pio di questi ultimi sono verifiche periodiche del file system alla ricerca di problemi o
anche batch che effettuano la cancellazione ciclica dei file temporanei presenti in /tmp.
Infine si sconsiglia di utilizzare la programmazione di shell e di ricorrere a linguaggi
piú completi (C, C++, Perl, Java, ecc.) nei casi che seguono:
1. Attivitá che utilizzano intensamente il sistema e che richiedono una notevole velo-
cità di esecuzione.
2. Applicazioni complesse basate su programmi strutturati e complessi.
3. Gestione avanzata di file e database.
4. Necessità di generare e/o manipolare interfacce grafiche.
5. Necessità di accesso diretto ai componenti hardware.

• Un primo shell script


Un semplice programma di shell sotto bash potrebbe essere il seguente:
#!/bin/bash
echo ——————————
echo Per favore digitare il proprio nome ...
echo ——————————
echo
read NOME
echo

181
Capitolo 7

echo “Salve $NOME”


echo
Queste poche istruzioni non fanno altro che definire all’interno di una variabile chia-
mata NOME quanto viene digitato sul prompt dall’utente. La funzione read, infatti, è
in grado di visualizzare un prompt e di porsi in attesa. Se si salva il programma ad
esempio col nome saluta.sh lo si può eseguire dopo avergli dato l’attributo di esecu-
zione (chmod +x saluta.sh). La prima riga commentata non è opzionale (nel caso in
cui la shell di default non sia quella che si vuole utilizzare e Mandrake ha proprio bash
come shell predefinita) e indica che il file deve essere eseguito (punto esclamativo).

Esecuzione del primo script

• Le principali istruzioni di shell


Le shell di Linux forniscono per lo più un set completo d’istruzioni che consentono di
sviluppare veri e propri programmi. Per poter fare ciò è necessario conoscere
almeno le istruzioni di base delle shell principali e cioè bash e tcsh.
La prima istruzione da considerare è ovviamente la if. In bash (e in pdksh) la sin-
tassi è la seguente:
if [ condizione ] then
… istruzioni …
elif [ condizione-n ]; then
… istruzioni altrimenti se …
else
… istruzioni altrimenti …
fi
In tcsh al posto di elif si deve digitare else if, non devono specificare punti e vir-
gola e la fi diventa endif.
Un blocco if deve essere la prima istruzione di una riga e deve terminare con un’i-
struzione chiusura. Nell’esecuzione di un blocco if viene analizzata la condizione.
Se la condizione è vera, verranno eseguite le istruzioni successive a then.
Se condizione è la falsa, verranno valutate singolarmente le condizioni elif (else if
in tcsh) eventualmente presenti. Quando viene individuata una condizione vera,
vengono eseguite le istruzioni immediatamente successive all’istruzione then

182
concetti avanzati

associata. Se nessuna delle condizioni elif risulta vera (o in assenza di esse), ver-
ranno eseguite le istruzioni che seguono l’istruzione else.
Dopo l’esecuzione delle istruzioni che seguono then o else, verrà eseguita l’istru-
zione di chiusura (fi o endif in tcsh). Le clausole else e elif sono entrambe facol-
tative. Un blocco if può contenere un numero qualsiasi di clausole elif, nessuna
delle quali deve tuttavia apparire dopo una proposizione else. Le istruzioni if a
blocchi possono essere nidificate.
Un altro blocco d’istruzioni molto utile è la case. In bash (e in pdksh) la sintassi è
la seguente:
case espressione in
elenco espressioni-n | …)
… istruzioni-n …;;
*)
… istruzioni altrimenti …;;
esac
In tcsh la sintassi è abbastanza differente anche se ha lo stesso significato:
switch (espressione)
case elenco espressioni-n | …:
… istruzioni-n …
breaksw
default:
… istruzioni altrimenti …
breaksw
endsw
Se l’espressione valutata corrisponde all’elenco espressioni, associata ad una propo-
sizione, le istruzioni che seguono tale proposizione verranno eseguite fino ai punti e
virgola (o a breaksw in tcsh). L’ultimo blocco di istruzioni verrà eseguito fino a esac (o
endsw).
La proposizione *) (o default) viene utilizzata per indicare le istruzioni da eseguire se
non viene trovata alcuna corrispondenza in una delle altre selezioni.
In ciascuna proposizione case, è possibile utilizzare più espressioni. La riga di seguito
riportata è, ad esempio, valida per bash:
1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10)
echo “Siamo nell’intervallo compreso tra 1 e 10”;;

• Variabili, virgolette e operatori


Le variabili disponibili per programmi di shell sono essenzialmente di tre tipi: di
ambiente (cfr. anche capitolo 6, paragrafo 6.3), incorporate e utente. Le prime
e le seconde sono messe a disposizione da Linux e, quindi, non devono essere
definite. Tuttavia mentre quelle di ambiente in alcuni casi (es. PATH) si possono
modificare da programma, quelle incorporate rappresentano delle vere e proprie
costanti. Le variabili utente sono quelle che vengono definite dal programmatore
183
Capitolo 7

all’interno dello script che sta implementando e come tali sono aggiornabili ma
anche volatili. Infine i programmi di shell non richiedono la definizione del tipo
(numerico, carattere, ecc…) delle variabili.
Le variabili incorporate più importanti ed utilizzate sono quattro:
• $# che indica il numero di parametri posizionali che vengono passati al pro-
gramma.
• $? che rappresenta il valore restituito dall’ultimo comando eseguito dal pro-
gramma. Permette di verificare se si sono verificati degli errori (caso in cui il valo-
re restituito è diverso da zero).
• $0 che restituisce il nome del programma corrente.
• $* che contiene in un’unica stringa tutti gli argomenti passati al programma.
Per assegnare ad esempio zero alla variabile utente var con bash e pdksh s’impo-
sta: var=0, mentre con tcsh: set var = 0. Questo per valori numerici, altrimenti
rispettivamente: var=‘Mia stringa’ e set var = ‘Mia stringa’. Infine per leggere il valo-
re di una variabile bisogna premettere alla variabile il simbolo di dollaro ($var).
Prima di proseguire chiariamo l’uso delle virgolette.
Quelle doppie servono a delimitare stringhe ossia sequenze di caratteri contenen-
ti spazi e possono anche contenere variabili preassegnate. Per intenderci in bash
la echo $var2 sarà uguale alla stringa “La variabile var1 contiene mia prova” se
var1=“mia prova” e var2=“La variabile var1 contiene $var1”.
Le virgolette semplici servono ad impedire alla shell d’interpretare e tradurre il
valore di una variabile. Nel caso precedente se s’imposta var2=‘La variabile var1
contiene $var1’ facendo l’eco di var2 si avrà “La variabile var1 contiene $var1”,
perché non viene risolta la variabile var1.
Infine le virgolette inverse consentono d’immagazzinare il risultato dell’esecu-
zione di un comando in una variabile. Ad esempio var=`ps –eaf | grep apache |
wc -l` immagazzina il numero dei processi che contengono la stringa apache nella
variabile var.

Utilizzo delle virgolette inverse.


Anche gli operatori di confronto variano a seconda della shell attiva. Nella bash
184
concetti avanzati

(e in pdksh) le stringhe si confrontano con:


• = per verificare se due stringhe sono uguali (diventa == in tcsh)
• != per verificare se due stringhe sono diverse (non varia in tcsh)
• -n per valutare se la lunghezza della stringa è superiore a zero (non presente in
tcsh)
• -z per valutare se la lunghezza della stringa è uguale a zero (non presente in tcsh)

I numeri invece in bash si confrontano con (tra parentesi i riferimenti alla tcsh):
• -eq verifica di uguaglianza tra due numeri (==)
• -ne verifica di disuguaglianza tra due numeri (!=)
• -ge per verificare se un numero è maggiore o uguale ad un altro (>=)
• -gt per verificare se un numero è maggiore di un altro (>)
• -le per verificare se un numero è minore o uguale ad un altro (<=)
• -lt per verificare se un numero è minore di un altro (<)

Infine consideriamo gli operatori logici in bash (pdksh) e tra parentesi in tcsh:
• ! per negare un’espressione (uguale in tcsh)
• -a per applicare un AND logico (&&)
• -o per applicare un OR logico (||)

• Istruzioni di shell in ciclo


Le istruzioni di ciclo sono quelle che consentono di ripetere iterativamente alcune
istruzioni. Un esempio classico è la lettura di un file riga per riga e la visualizzazione
delle sue righe in ciclo. Le principali istruzioni di ciclo di Linux sono for e while.
for consente di ripetere un gruppo di istruzioni per il numero di volte specificato.
La sintassi bash (e pdksh) è:
for var in lista
do
… istruzioni …
done
Mentre quella tcsh è:
foreach var (lista)
… istruzioni …
end
E’ inoltre possibile utilizzare l’istruzione break per uscire in qualsiasi momento dal
ciclo for al verificarsi di una certa condizione.
Se vogliamo, ad esempio, rinominare tutti i file .txt in .old nella directory corrente:
#!/bin/bash
for filename in `ls *.txt`
do
mv $filename $filename.old

185
Capitolo 7

if [ $? –ne 0 ] then
echo “fallita la rinomina di $filename”
break
fi
done
Con tcsh, invece, si avrebbe:
#!/bin/tcsh
foreach filename (`ls *.txt`)
mv $filename $filename.old
if ($? != 0) then
echo “fallita la rinomina di $filename”
break
endif
end
Si noti che nel caso si sia verificato un errore viene forzata l’uscita dal ciclo con break.
Cogliamo l’occasione anche per ricordare l’istruzione di uscita incondizionata da un
programma di shell e cioè exit. Con exit si restituisce il controllo o al sistema opera-
tivo o ad un eventuale programma chiamante.
Un’altra istruzione iterativa è la while che ripete un blocco di istruzioni finché viene
verificata la condizione specificata. In ambiente bash e pdksh la sintassi è:
while [ condizione ]
do
… istruzioni …
done
Mentre con tcsh:
while (condizione)
… istruzioni …
end
Vediamo un esempio nel quale in bash viene fatto il display all’interno di un ciclo dei
numeri contenuti in un contatore:
#!/bin/bash
wCtr=0
while [ $wCtr –le 20 ]
do
echo “Il contatore ora vale: $wCtr”
wCtr= `$wCtr + 1`
done
Se si prova il precedente algoritmo si avranno 21 display (da zero a venti) e, quindi,
l’uscita dal ciclo while quando il contatore arriva a 21.

186
concetti avanzati

Esempio di utilizzo del ciclo while.

• Costruire programmi di utilità


Per concludere vediamo com’è possibile costruire un paio di utility di sistema riassu-
mendo alcuni concetti esposti sui programmi di shell.
La prima l’abbiamo chiamata ts, ossia text search, e consente di ricercare un determina-
to testo all’interno di uno o più file presenti in una certo percorso. Lo shell script accetta
fino a tre parametri che devono essere specificati dopo il nome del programma (ts), ossia:
1. Stringa da ricercare. La ricerca verrà effettuata a partire dalla directory corrente e
in tutti i file.
2. Stringa e directory di partenza. La ricerca verrà effettuata a partire dalla directory
specificata e in tutti i file.
3. Stringa, directory di partenza e tipo file. La ricerca verrà effettuata a partire dalla
directory corrente e nei file del tipo specificato (da racchiudere tra doppi apici).
Il programma da salvare col nome ts è il seguente:
#!/bin/bash
if [ $# -eq 0 ]; then
echo
echo “ sintassi: ts [stringa ricercata] [directory di par-
tenza] [tipo file] “
echo “ es.1: ts string “
echo “ es.2: ts string /home “
echo “ es.3: ts string /home \”*.log\” “
echo
elif [ $# -eq 1 ]; then
find . -exec grep -ls $1 {} \;
elif [ $# -eq 2 ]; then
find $2 -exec grep -ls $1 {} \;
else

187
Capitolo 7

find $2 -name “$3” -exec grep -ls $1 {} \;


fi
In esso viene subito verificato se il numero di parametri è uguale a zero. In questo
caso viene prospettato una micro guida prima di ultimare l’esecuzione. Le verifiche
successive controllano il numero dei parametri passati allo script e impostano di con-
seguenza l’algoritmo di ricerca.
Il cuore del programma è l’istruzione che inizia con find, che è un potente coman-
do Linux per la ricerca di file che corrispondono a determinati criteri e che consen-
te di eseguire azioni su di essi. In questo caso viene utilizzato in modalità combinata
con il comando grep, che serve a trovare un determinato testo all’interno di uno o
più file. Dopo find viene riportata la directory da cui si deve iniziare ad effettuare la
ricerca, mentre il parametro –exec indica che il comando successivo, grep, deve
essere eseguito. Grep con il parametro –ls consente di visualizzare il nome dei file.
Infine le doppie parentesi graffe, la barra rovesciata e il punto e virgola fanno parte
obbligatoriamente del comando.

Ricerca di una stringa all’interno di alcuni file.

Il secondo programma, da salvare semplicemente con il nome p, serve o a visualiz-


zare tutti i processi di un certo tipo oppure a contare gli stessi (specificando il secon-
do parametro –c).
#!/bin/bash
if [ $# -eq 0 ]; then
echo
echo “ sintassi: p [stringa processo] -c “
echo “ es.1: p processo “
echo “ es.2: p processo -c “
echo
elif [ $# -eq 1 ]; then
ps -eaf | grep $1 | grep -v grep | more

188
concetti avanzati

else
ps -eaf | grep $1 | grep -v grep | wc -l | more
fi
In breve una spiegazione del nucleo centrale di p.
Sappiamo che il comando ps consente di visualizzare i processi attivi e che abbinato
a grep consente di fare una selezione degli stessi. Ad esempio per visualizzare tutti i
processi che contengono la parola apache digitare sul prompt: ps –eaf | grep apa-
che. Si ricordi che –eaf hanno il significato che segue: “e” specifica le informazioni
sull’ambiente, “a” evidenzia tutti i processi e non soltanto quelli appartenenti all’uten-
te che esegue il comando ed infine “f” mostra le relazioni di parentela tra i processi
(padre/figlio).
Se volessimo anche contare tali processi basta utilizzare il comando di conteggio di
linee e caratteri wc (acronimo di word count). L’esempio precedente diventa: ps –eaf
| grep apache | wc –l, dove l’opzione –l visualizza il numero di linee in output al
comando che precede il secondo pipe |.

La “grep -v grep” permette di non considerare il processo generato dalla grep stessa ed
evitare la sua visualizzazione e il conteggio di un processo aggiuntivo.

189
curriculum autore

Enrico Bottari, nato a Roma nel 1963, è un esperto di microinformatica e di


informatica aziendale. Si è laureato in Economica e Commercio con una tesi
sulle funzioni di internal auditing in un’azienda di servizi. Lavora da 15 anni nel
mondo IT e ha scritto numerosi articoli per varie riviste del settore.

190
191

Potrebbero piacerti anche