Professional Documents
Culture Documents
LXP90
CERTIFICAZIONE
PER UBUNTU
Le procedure
Diventa protagonista nel mondo Linux PRO di installazione
dei pacchetti
LE TECNOLOGIE
DEL FUTURO... ORA!
• Prova in anticipo le soluzioni desktop
che renderanno vincente Linux nel 2010
• La rivoluzione in ambito server si chiama
Cloud Computing: costruisci la tua nuvola
FILESYSTEM VIRTUALI
Un viaggio nei meandri dei filesystem
essenziali per il funzionamento di Linux
Copyright
Sprea Editori S.p.A. Socio unico Medi & Son S.r.L. è titolare esclusivo
di tutti i diritti di pubblicazione della testata Linux Format di FUTURE
MEDIA PUBLISHING. Per i diritti di riproduzione, l’Editore si dichiara
pienamente disponibile a regolare eventuali spettanze per quelle Massimiliano
immagini di cui non sia stato possibile reperire la fonte. Zagaglia
Informativa e Consenso in materia di trattamento dei dati
personali (Codice Privacy d.lgs. 196/03)
Nel vigore del D.Lgs 196/03 il Titolare del trattamento dei dati
LINUX PRO
Responsabile
di redazione
personali, ex art. 28 D.Lgs. 196/03, è Sprea Editori S.p.A. Socio
unico Medi & Son S.r.L. (di seguito anche “Sprea”), con sede in
Cernusco sul Naviglio (MI), via Torino, 51. La stessa La informa che
i Suoi dati, eventualmente da Lei trasmessi alla Sprea, verranno
raccolti, trattati e conservati nel rispetto del decreto legislativo ora CONTATTI
enunciato anche per attività connesse all’azienda. La avvisiamo,
inoltre, che i Suoi dati potranno essere comunicati e/o trattati Suggerimenti/collaborazioni: lxp.suggerimenti@sprea.it
(sempre nel rispetto della legge), anche all’estero, da società e/o
persone che prestano servizi in favore della Sprea. In ogni momen-
to Lei potrà chiedere la modifica, la correzione e/o la cancellazione Abbonamenti: abbonamenti.linuxpro@sprea.it
dei Suoi dati ovvero esercitare tutti i diritti previsti dagli artt. 7 e ss.
del D.Lgs. 196/03 mediante comunicazione scritta alla Sprea e/o Domande tecniche/richieste d’aiuto: linuxpro@sprea.it
direttamente al personale Incaricato preposto al trattamento dei
dati. La lettura della presente informativa deve intendersi quale Domande alla redazione: lxp.redazione@sprea.it
presa visione dell’Informativa ex art. 13 D.Lgs. 196/03 e l’invio dei
Suoi dati personali alla Sprea varrà quale consenso espresso al Sito Web: www.sprea.it
trattamento dei dati personali secondo quanto sopra specificato.
Oppure inviate le vostre lettere a:
L’invio di materiale (testi, fotografie, disegni, etc.) alla Sprea Editori
S.p.A. Socio unico Medi & Son S.r.L. deve intendersi quale espres- Linux Pro, Sprea Editori S.p.A.,
sa autorizzazione alla loro libera utilizzazione da parte di Sprea Via Torino 51, 20063 Cernusco S/N
Editori S.p.A. per qualsiasi fine e a titolo gratuito, e comunque, a
titolo di esempio, alla pubblicazione gratuita su qualsiasi supporto Telefono: 02.92432.1
cartaceo e non, su qualsiasi pubblicazione (anche non della Sprea
Editori S.p.A.), in qualsiasi canale di vendita e Paese del mondo. Il
materiale inviato alla redazione non sarà restituito.
Sommario
LXP 90 Aprile 2010
LINUX PRO
Benvenuti nel novantesimo numero di Linux Pro, la vostra guida definitiva a Linux e al mondo Open Source
In primo piano
Speciale
tecnologia
Desktop e server
08 ci riserveranno
parecchie novità
quest’anno: in uno
speciale di 16 pagine
vi presentiamo quelle
più promettenti,
spiegandovi anche
come provarle subito!
Δ Sawfish 1.6.2
vi spiega come creare un’illustrazione
08 Speciale tecnologia da applicare ai vostri capi
Δ DISTRIBUZIONI
Δ Jolicloud
Le tecnologie desktop e server
d’abbigliamento preferiti Δ Milax 0.5
che ci accompagneranno
Δ Topologilinux 7.0.1
nel 2010 e negli anni futuri
62 /proc e /sys Δ RIVISTA
Δ Choqok 0.6.6
24 Certificazione Ubuntu Sotto esame due dei filesystem virtuali
Δ DestroyTwitter 1.7.2 beta
alla base del funzionamento del Pinguino
Tutte le opzioni per l’installazione Δ Gwibber Δ Spaz
30 Trucchi per sysadmin Ecco le prime righe di codice Δ Easy RPM Builder 0.5.6
Δ Inkscape 0.47
Ecco come leggere, modificare Δ SERVER
e organizzare i libri in formato elettronico 74 Python Δ Djigzo 1.3.1.0
Un lettore di feed RSS animato grazie Δ SendMailAnalyzer 6.2
Δ SISTEMA
39 I test del mese 80 Virtualizzazione Δ Djigzo 1.3.1.0
Tre applicazioni libere da provare! Guida al software presente nel DVD a pagina 92
L’eco
dei LUG
Uno spazio
RISPARMIA!
aperto ai
gruppi di utenti ABBONATI
Linux in Italia
per segnalare A LINUX
appuntamenti,
iniziative e PRO
nuovi progetti
D
specifici nell’ambito
di studio e supporto dedicato si terrà a Cagliari inviare i loro Call for Paper, del Software Libero. I contributi
alle scuole superiori italiane la quarta Conferenza abstract o articoli; entro possono essere inviati in lingua
che utilizzano o vorrebbero Italiana sul Software il primo maggio verrà italiana o in inglese; gli autori
utilizzare Linux all’interno Libero, un’occasione imperdibile comunicato l’elenco dei talk sono invitati a inviare articoli
del loro percorso formativo. per fare il punto della situazione accettati. Gli Autori sono invitati di ricerca originali sotto forma
Il progetto si rivolge sull’adozione del Free Software a inviare contributi scientifici di abstract oppure articolo
a professori e studenti che nella nostra penisola. L’incontro inerenti lo studio del Software completo. Gli abstract
hanno insegnato a utilizzare è dedicato a chiunque sia attivo Libero, la sua applicazione devono essere di massimo
Linux nei loro istituti e a tutti nel mondo del Free Software, in ambiti di ricerca due pagine A4, mentre
coloro che decideranno di nei campi della ricerca, sviluppo, e il contributo a progetti gli articoli completi devono
farlo nel futuro. LPI@School promozione e diffusione. di Software Libero. Ecco essere tra le 8 e le 10 pagine,
(http://scuola.lpi-italia.org) Ovviamente anche i semplici alcuni argomenti possibili, incluse figure e bibliografia.
darà supporto diretto a tutti “curiosi” sono ben accetti. che coprono le attività Sul sito della conferenza
gli istituti, o singoli professori, Gli argomenti trattati saranno di associazioni, aziende, (www.confsl.org/confsl10/
che vorranno attivare molteplici, coprendo tutte sviluppatori, scuola index.php) esiste il template
dei laboratori di insegnamento le possibili aree tematiche legate e altro ancora: della conferenza per l’invio
di Linux nel prossimo anno al Software Libero, dagli aspetti Δ stato delle traduzioni degli articoli finali.
scolastico. Gli Istituti, inoltre, economici, giuridici e tecnici, e degli adattamenti Ulteriori informazioni
potranno aderire al a quelli etici, sociali e filosofici. La per l’utenza italiana; le trovate pubblicate sul sito
programma internazionale partecipazione alla conferenza Δ progetti italiani di sviluppo: appena citato. Gli articoli
“Approved Academic è aperta a tutti e gratuita. novità e stato d’avanzamento; ritenuti più rilevanti saranno
Partner” così da offrire Δ strumenti e infrastrutture raccolti in un volume
ai propri studenti una garanzia Gli argomenti per lo sviluppo di Software pubblicato in occasione
della qualità del loro percorso Fino al 18 aprile 2010 Libero; della Conferenza e disponibile
formativo riconosciuta le persone che intendono Δ sistemi embedded liberi. sia in formato cartaceo che
in tutto il mondo. partecipare attivamente Δ Software Libero nelle elettronico ad accesso libero.
Lingue straniere
Buongiorno. In due parole vi spiego il mio
problema. Circa un mese fa ho voluto far istallare Scriveteci!
un secondo hard disk per installare Linux. Da prima Se avete dei dubbi
mi e stato sconsigliato ma in un secondo momento, di natura tecnica,
dovendo riformattare anche il primo disco per altre o volete semplicemente
ragioni, le persone a cui mi sono rivolto si sono commentare i contenuti
della rivista e del DVD
offerte (a pagamento) di rimettermi su un disco inviate una e-mail
il mio Windows XP originale e sul disco nuovo a linuxpro@sprea.it
Linux. A casa ho scoperto che entrando in Linux oppure spedite una lettera
(Ubuntu) tutto l’ambiente è in inglese. Alla mia al seguente indirizzo:
richiesta di chiarimenti mi e stato detto che Il modo più semplice per avere Ubuntu in italiano Linux Pro
se vi era la possibilità di trasformarlo dovevo è scegliere la nostra lingua in fase di installazione... Sprea Editori S.p.A.
Via Torino, 51
vedere io ma forse era solo in inglese. 20063 Cernusco S/N (MI)
Io, se pur con mille problemi, ho provato a usare Cliccaci sopra e comparirà la schermata che vedi in basso:
il sistema, convincendomi alla fine che avevano clicca sul pulsante Install / Remove Languages…, Invitiamo inoltre tutti
ragione loro e che non mi conviene avere Linux. seleziona l’italiano e togli il segno di spunta dall’inglese. i lettori a partecipare
Poi leggendo la rivista Linux Pro n.89 di marzo ho Il sistema ti chiederà di inserire la tua password e poi al nostro forum che si
letto che parlavate di programmi in italiano, dal che procederà a scaricare da Internet i pacchetti necessari trova all’indirizzo Web
www.linuxpro.it, oppure
mi è venuto il dubbio che il negozio di informatica e li installerà. Fatto ciò, sempre nella stessa finestra, clicca
a collegarsi al nostro
abbia fatto volutamente l’installazione in inglese sul primo menu a cascata in alto e scegli la voce Italiano canale IRC #lxp ospitato
per scoraggiarmi e tornare ai prodotti da loro (Italia). Chiudi la finestra, fai il log out dal menu che appare dalla rete irc.freenode.net.
consigliati. Vi chiedo cortesemente di spiegarmi cliccando sul pulsante in alto a destra sulla scrivania (quello
come fare diventare in italiano Linux. Distinti saluti. che riporta il nome del tuo utente). A questo punto vedrai
Rocco la schermata di login, in cui cliccare sul nome del tuo utente
e inserire la password. Probabilmente, nella parte bassa
Ciao Rocco, in effetti la conclusione a cui sei della schermata, dovrai modificare il layout della tastiera
SPDY
La redazione di Linux Pro è uscita dalla velocità warp per spiegarvi meglio
la proposta di Google per velocizzare la navigazione sul Web
» Cosa
Un altro acronimo, grande!
vuol dire questo?
per ognuno di questi piccoli oggetti.
E non è tutto: HTTP non è stato progettato
creare un solo set di intestazioni (header),
pacchetti di controllo e così via. Ciò
Iniziamo col dire che si tratta di un modo per per minimizzare la latenza, cioè il tempo decrementa notevolmente i bit totali
velocizzare la navigazione sul Web proposto totale che impiega una pagina Web completa di overhead che si muovono in Rete
da Google nel novembre dello scorso anno. ad andare dalla sorgente alla destinazione. per far arrivare la pagina Web nel tuo PC.
Però non si tratta di un acronimo: secondo Grazie ai collegamenti a banda larga
Google SPDY richiama la parola inglese
speedy (veloce) e vuole comunicare,
l’infrastruttura di Internet è divenuta
più veloce, ma anche se hai un canale » Scommetto che così facendo
si riduce anche la latenza…
appunto, il senso di velocità e “mostra come fisico molto veloce, la trasmissione Certamente! Se c’è solo un flusso invece
la compressione può aiutare a migliorarla”. dei file gestita da un protocollo lento di una moltitudine di porzioni dello stesso
fa sì che la visualizzazione delle pagine stream, il numero di azioni da compiere
» non
Perché il protocollo HTTP
va bene? » Eh? Spiegami meglio…
SPDY rimpiazza tutti i flussi HTTP
qualcosa del tipo “Hey, prendi anche questi
dati; visto che hai richiesto quella pagina,
Nei tempi passati non c’era nulla che indipendenti (che scaricano i singoli elementi avrai bisogno tra qualche millisecondo anche
non andava in questo protocollo: HTTP di una pagina Web) con un’unica sessione di questo nuovo file”. Ciò può rendere più
era concepito per richiedere e trasmettere per l’intera pagina, usando lo stesso protocollo rapida la navigazione di alcuni siti Web, ma
un file per sessione, indipendentemente SSL (Secure Socket Layer) usato di norma cosa fare se questi file extra sono sottofondi
dalla sua dimensione. A metà degli anni ’90, per il traffico Internet cifrato. Tutti i componenti musicali o pubblicità che non ti interessano?
quando quasi tutte le pagine Web erano di una pagina Web sono pacchettizzati I server hint (suggerimenti) sono solo
composte quasi interamente da brevi brani assieme e inviati come un unico blocco una versione leggera della stessa cosa, con
di testo, questo metodo era molto efficiente. di dati all’interno dei canali comuni. la quale il server suggerisce al browser che
Le pagine Web moderne, invece, sono le cose potrebbero andare più velocemente
un collage di diversi oggetti, spesso molto
piccoli: fogli di stile CSS, cookie, immagini, » Ma questo non farà risparmiare
spazio, la dimensione del blocco
se quest’ultimo richiede anche questi altri file.
» Anche il 27% non sarebbe male, no? Protocol), SST T (Structured Stream Transport)
Gli amministratori di rete lo ameranno.
Teoricamente sì. In pratica, ci sono diverse » Avere due protocolli
per le pagine Web in competizione
e SMUX X (www.w3.org/TR/WD-mux).
Secondo Google, comunque, la soluzione
ragioni per le quali SPDY potrebbe tra loro sarebbe un incubo, vero? ai problemi inerenti all’HTML offerta
non essere la risposta ai problemi di HTTP. Dunque, un browser potrebbe iniziare con da SPDY è più semplice da mettere
Alcune persone sono preoccupate una richiesta HTTP e poi passare in modo in pratica e più efficiente rispetto all’ottimizzazione
del fatto che la cifratura obbligatoria e la trasparente a SPDY se e quando il server del sottostante livello di trasporto,
compressione possa aumentare in maniera supporta questo protocollo, quindi la tua che è l’approccio alla base degli altri metodi.
sensibile il carico dei server Web e dei questione non sarebbe un problema. L’uso di
terminali, specialmente quelli poco potenti.
La contro obiezione è che molto più spesso
una cache, invece, può essere più difficoltoso.
» SPDY avrà successo?
Sì. Sarà così se modelli di traffico
è la larghezza di banda il vero collo di bottiglia,
piuttosto che i cicli di CPU. Altri hanno paura » Perché?
Le pagine Web statiche possono essere
più accurati confermeranno i primi risultati
e se ci sarà un percorso di aggiornamento
della perdita dei pacchetti, della compatibilità messe in cache da proxy intermedi all’interno flessibile, con un basso impatto,
all’indietro e ai problemi di caching SSL. della rete d’accesso dell’ISP. Ogni volta che di tutti i server Web. Staremo a vedere.
vai sulla pagina di LXP, ad esempio, ottieni Nel frattempo chiunque abbia una presenza
KRunner
L’equivalente per KDE di Gnome Do alla ribalta
KRunner fa parte della distribuzione ufficiale di KDE contenuta in KDE 4.4 presenta
da lungo tempo. Si tratta dello strumento che vedete novità: ad esempio, potete chiud
quando schiacciate Alt+F2, ed è comunemente utilizzato le applicazioni digitando termin
per eseguire applicazioni digitando il loro nome, invece seguito dal nome del software.
di aprirle dal menu d’avvio. A causa della competizione Dopo aver scritto termina, le ap
di Gnome Do, KRunner ha dovuto recuperare il divario che corrispondono al testo digita
negli ultimi tempi, introducendo diversi miglioramenti con vengono elencate nel pannello
il rilascio di KDE 4.4. La prima modifica evidente riguarda dei risultati. Potete cambiare la parola
il posizionamento di KRunner nella parte alta dello schermo, di attivazione modificando le impostazioni
mentre prima veniva visualizzato al centro. In questo del plug-in relativo. Per montare
modo si cerca di evitare di coprire il contenuto di altre o smontare dispositivi removibili
applicazioni aperte mentre lo si utilizza KRunner. Quando è sufficiente digitare monta o smonta
avete terminato, potete usare la stessa scorciatoia per a seconda dell’operazione richiesta,
chiuderlo, cioè Alt+F2. Con KDE 4.4 si ha finalmente con KRunner che elenca in automatico
un motore di ricerca funzionante, quindi provate a effettuare tutti i dispositivi connessi. Infine,
una ricerca digitando un termine in KRunner, con i risultati è stata introdotta la possibilità di gestire
che vengono visualizzati nel pannello inferiore. Il resto i desktop virtuali e le finestre utilizzando KRunner ha un aspetto
è più o meno simile alle vecchie versioni, finché i termini desktop e finestra. più attraente di Gnome Do,
non fate click sull’icona impostazioni, la prima a sinistra. Per un elenco esauriente di tutte ma gli manca il supporto ai plug-in
le parole chiave utilizzabili fate
Altre novità click sull’icona a forma di punto interrogativo.
La finestra che appare contiene le funzioni aggiuntive Le opzioni disponibili sono parecchie e il passo
della GUI essenziale di KRunner, ed elenca le tipologie in avanti è notevole, ma l’ideale sarebbe poter
dei risultati che è possibile ottenere. La versione sfruttare i plug-in già esistenti per Gnome Do.
Innovazione
io comprendere il passato
ambienti desktop rivoluzionari esempio di quanto detto. Appena David Reveman
mai abituati a concetti finì il suo lavoro iniziale su Compiz, le patch vennero
nni quando si iniziarono integrate nei principali ambienti desktop senza grossi
e un mouse? Se Linux fosse stravolgimenti. Gli utenti potevano installare Compiz
e, gli sviluppatori avrebbero e iniziare a ruotare i loro desktop in pochi minuti,
nni prima di annunciare ma il lavoro per integrare questi effetti in
al mondo la loro nuova idea di desktop. La comunità un’esperienza desktop omogenea ha richiesto molto
Open Source, però, non funziona allo stesso modo. più tempo ed è ancora in atto dopo quattro anni dal
L’innovazione si sviluppa attraverso forum, mailing primo rilascio. Questa lentezza è stata causata anche
list e rilasci software. Si va a tentativi e molte dalla comunità, con vari disaccordi, fork, litigi, e così
cose possono andare male. Il compositing è un buon è stato per diversi altri progetti. Per cambiare il modo
in cui le persone usano i loro
desktop, bisogna cambiare
le tecnologie che si trovano
sotto il cofano. La maggior
parte degli sviluppatori
sostiene la necessità
di nuove versioni con API
completamente rinnovate
e nuovi strumenti
per programmatori. Questa
è la teoria alla base delle nuove
librerie e framework di KDE 4,
ad esempio, ma comporta
anche un notevole dispendio
di tempo perché tutti gli
sviluppatori stiano al passo
con le modifiche. Lo sviluppo
di GNOME è più pragmatico.
La versione 2 è stata rilasciata
nello stesso periodo di KDE 3,
nel 2002, ed è ancora oggi
il ramo stabile. Non ci sono
state modifiche rivoluzionarie,
asmoidi, widget con varie funzioni cambiamenti alle API, infinite
ktop sessioni di debug. Si è trattato,
invece, di un lungo e solido percorso che ha portato rivoluzione analoga a quanto avvenuto con KDE 4.
all’attuale versione 2.28 che, pur non avendo subito Inizialmente erano previste pesanti modifiche,
rivoluzioni come KDE, è molto diversa dalla 2.0. identificate dal nome ToPaZ (Tre Punto Zero).
Si prevede, però, che venga continuata la strada
Topaz evolutiva intrapresa da tempo, anche se con qualche
Queste differenze tra i due ambienti desktop interessante novità. Con il rilascio di KDE 4, gran parte
sono dovute alla natura di piattaforma di GNOME. dello sviluppo delle nuove funzioni che avevano
L’utente non ha bisogno di sapere che il gestore il compito di far dimenticare la versione 3 è avvenuto
di fotografie F-Spot è scritto in Mono e utilizza in seguito al rilascio iniziale. Se KDE 4 fosse rilasciato
C#; l’unico requisito importante che deve avere oggi sarebbe etichettato come un grande successo,
un’applicazione GNOME è il rispetto delle linee ma nella realtà dei fatti c’è voluto più di un anno
guida relative all’interfaccia utente. Questo aspetto di bugfix per mettere tutto a posto. Va comunque
è uno dei principali punti di forza di GNOME che detto che gli sviluppatori devono in qualche modo
è rimasto valido anche su altre piattaforme e sistemi soddisfare le aspettative. Quante persone oggi
operativi, e questo tipo di idea non ha bisogno di sarebbero disposte a usare ancora applicazioni di KDE
particolari revisioni quando una nuova versione viene 3? Fortunatamente, con il recente rilascio di KDE 4.4,
rilasciata. GNOME 3.0 è previsto per settembre 2010,
ma come per il ramo 2.x, sarà difficile che ci sia una
la maggior parte dei problemi di usabilità sono stati
risolti e si può sostituire senza remore KDE 3.5. œ
Passo passo Inviare tweet da Gnome Do
Esperienza utente
e finalmente diventare facile da usare
ntano molto sul concetto di risolvere il problema in diversi modi. Per GNOME 3.0
estensione dell’idea di desktop uno degli scopi principali è cercare di migliorare
che le attività sono associate l’esperienza utente attraverso una soluzione chiamata
o. Ad esempio è possibile Gnome Shell. Questa applicazione ha subito un forte
mentazione, con un desktop sviluppo negli ultimi 18 mesi, dopo che lo sviluppatore
o a editor testuali o HTML, Vincent Untz ha scritto alcune riflessioni nate dalle
risorse online e un dizionario di lingua o dei sinonimi discussioni a un hackfest del 2008. Queste osservazioni
e contrari. Impostare questo tipo di ambiente richiede riguardavano la difficoltà nello svolgere alcuni compiti
un certo tempo per modificare il menu di avvio fondamentali come trovare una finestra, lanciare
e diverse altre variabili. Secondo molti sviluppatori applicazioni, gestire gli spazi di lavoro. Gnome Shell
questo processo non è l’ideale, e i desktop del futuro è stato sviluppato per risolvere questi problemi
dovrebbero permettere di essere usati senza che avvantaggiandosi delle ultime novità disponibili
l’utente conosca com’è strutturato il filesystem e dove per Linux. Ad esempio, come già avviene
per Moblin, Gnome Shell sfrutta Clutter,
una libreria grafica per ottenere piacevoli
“Gnome Shell potrebbe cambiare effetti grafici anche su hardware modesto.
radicalmente il vostro modo KDE
di usare il desktop GNOME” Il team di KDE ha lavorato su concetti simili durante
tutto il processo di sviluppo di KDE 4. Va ricordato
sono installate le applicazioni. Lavorare con i propri dati che molte delle idee previste per il primo rilascio
dovrebbe essere il più intuitivo possibile, ed entrambi sono state considerate troppo ambiziose e difficoltose
i maggiori ambienti desktop per Linux stanno cercando da implementare subito. KDE 4.4 ha anche lo scopo
di risolvere alcuni di questi problemi sfruttando
il desktop semantico Nepomuk e migliorando l’usabilità
delle attività desktop. Nepomuk è progettato per
riempire il divario tra contenuto online e contenuto
locale. Molti aspetti tipici del Web sono già integrati
in applicazioni di KDE come Dolphin, dove potete
aggiungere commenti, tag e voti ai vostri file, ma finora
l’utilizzo di queste funzioni è sempre stato limitato.
Con il rilascio di KDE 4.4 è possibile utilizzare queste
informazioni nella ricerca, così come avviene su Internet
con Google. Un altro aspetto importante per la user
experience su KDE è l’utilizzo delle attività desktop.
Come in Gnome Shell, si tratta della possibilità di gestire
i desktop virtuali e le applicazioni in base al tipo di
lavoro necessario. Questa funzione è presente in KDE 4
da un diverso tempo, ma con il rilascio della versione
4.4 le attività diventano un fulcro importante
dell’ambiente desktop, nel tentativo di competere
con Gnome Shell. Il loro utilizzo, però, non è così facile
e intuitivo. Al posto di sostituire il menu di avvio
Strumenti come Gnome Shell renderanno obsoleto il classico menu d’avvio e la gestione dei file sul desktop, le attività di KDE sono
pensate principalmente per gestire ambienti complessi. base alla versione che avete installato) non c’è alc
Infatti il pannello non viene sostituito, ma è possibile finestra aperta. L’unica differenza evidente è il me
avviare un ambiente di lavoro nello stesso modo in cui scuro nella parte alta del desktop e la presenza
si fa click su un segnalibro nel browser. Non è affatto del tasto Attività. Per vedere Gnome Shell in azion
male, ma sono concetti molto diversi tra i due ambienti portate il cursore del mouse nell’angolo del deskto
desktop. Per i più impazienti è possibile provare già in alto a destra. A questo punto il desktop viene
oggi Gnome Shell. Consigliamo a tutti di dare rimpicciolito e lo spazio liberato viene utilizzato
un’occhiata appena possibile, per capire come per visualizzare gli altri desktop virtuali sulla destra
cambierà in futuro GNOME. Gnome Shell è già e un menu d’avvio minimale sulla sinistra. Questo
disponibile attraverso i gestori pacchetti di alcune menu contiene applicazioni e file, e potete sceglie
distribuzioni, quindi l’installazione è semplice. Per di cliccare su un file per aprire l’applicazione
eseguirlo basta digitare nel terminale gnome-shell corrispondente nel desktop attivo, oppure trascina
--replace. Questo comando potrebbe risultarvi l’icona sul desktop nel quale volete avviare il softw
familiare nel caso vi sia capitato di avviare Ogni finestra del desktop virtuale viene aggiornata
manualmente Compiz, poiché l’argomento replace in tempo reale, ed è possibile ingrandirla utilizzand
viene utilizzato per sostituire il window manager in la rotella del mouse dopo aver portato il cursore
entrambi i casi. Quando viene avviato Gnome Shell (in sulla finestra desiderata.
GIMP
Dopo essere stata per anni una delle applicazioni
più amate e odiate, GIMP potrebbe finalmente
risvegliarsi dal torpore e determinare di nuovo la propria
supremazia nel campo dei software di fotoritocco
Open Source. La versione 2.6, rilasciata nell’ottobre
del 2009, è stata un piccolo passo nella giusta direzione,
ma sarà la 2.8 a delineare il percorso futuro. Tra le novità
previste c’è una nuova GUI ridisegnata, che abbandonerà
l’approccio delle finestre multiple. GIMP 2.8 includerà
una modalità a finestra unica, come i suoi concorrenti
commerciali, puntando alla semplificazione. Secondo
le parole di uno degli sviluppatori principali del progetto,
Martin Nordholts, l’interfaccia utente di GIMP è troppo
confusionaria. La causa sono le numerose finestre
utilizzate, quindi una sola finestra dovrebbe risolvere
il problema. Si tratta, però, di un grande lavoro,
con nove compiti diversi per completare il tutto,
che richiederà circa il 10% del tempo di sviluppo della
OpenOffice.org avrà una GUI completamente ridisegnata prossima versione. La maggior parte della comunità,
nei prossimi mesi, a partire dall’applicazione Impress comunque, pensa che valga la pena di compiere questo
Programmazione
Negli ultimi anni i progetti Open Source sono
passato dall’essere completamente affidati
alla comunità all’essere sviluppati e sponsorizzati
da imprese commerciali. Il browser Chrome di Google Si spera che Firefox possa presto migliorare
risiede in questa categoria, così come l’ambiente
di sviluppo di Nokia, Qt Creator. Il risultato di questo
cambiamento è una selezione più ampia di ottimi
browser e di ambienti di programmazione. Se siete
sviluppatori Qt/C++, Qt Creator è la scelta migliore
per inserirsi nel mondo delle applicazioni per dispositivi
mobili. Sempre a tema, KDevelop 4 dovrebbe
essere rilasciato nella primavera 2010. Si tratta
di una delle ultime applicazioni che deve ancora
essere convertita da KDE 3 a KDE 4, con la speranza
che sarà abbastanza buona da durare alcuni anni
prima che gli sviluppatori decidano di ricominciare
da capo di nuovo. KDevelop 4 utilizza CMake
per la gestione dei progetti, e permette di aprire
più di un progetto alla volta. È presente anche
il supporto per vari sistemi di controllo versione,
come Git. La nuova versione, però, non avrà l’ampio Xfce sta diventando sempre più un’alternativa da considerare
supporto di linguaggi di programmazione del rilascio
precedente, concentrandosi su una selezione
più limitata come C++ e PHP. Per quanto
riguarda gli sviluppatori GNOME, l’IDE Anjuta
viene attivamente sviluppato. Inoltre è stata da poco
rilasciata la versione 2.2 di MonoDevelop, l’IDE
specializzato nel linguaggio C#, quindi non resta
che attendere i piani di sviluppo della 2.4.
Sfera di cristallo
Vorremmo sapere da voi come pensate Vincerà l’innovazione di KDE o la solidità
cambierà il desktop su Linux durante di GNOME? Se avete voglia di dirci
Finalmente la GUI di GIMP cambierà quest’anno. Quali rivoluzioni arriveranno? la vostra, scriveteci a linuxpro@sprea.it!
volto con la prossima versione 2.8
Cloud Computing
nte al momento è a portata di tutti
modello che prevede in base al tempo utilizzato. Dal momento che i provider
di fuori dei sistemi client, fatturano il servizio per il tempo di utilizzo
i su Internet presso e per la tipologia di risorse richieste, il cloud computing
servizio specifico. L’utente non è indicato per attività tradizionali di erogazione di
onosce alcun dettaglio tecnico pagine Web e siti dinamici. Il costo sarebbe infatti troppo
ica offerta dal provider alto. Un housing tradizionale risulterebbe certamente più
del servizio e non deve preoccuparsi di nessun aspetto conveniente per queste applicazioni. Il cloud computing
di configurazione fisica, manutenzione e upgrade è adatto per problematiche di elaborazione dati o per
dei server. Questi dettagli sono curati dal fornitore, gestire picchi momentanei di lavoro. In questi casi il costo
sgravando l’utente dai costi di gestione di una server risulta molto conveniente dal momento che si viene
farm. L’utente detiene comunque un certo grado fatturati per il numero di ore di utilizzo dell’infrastruttura.
di libertà nella gestione “software” dei server. Le modalità Nulla vieta di creare un’infrastruttura cloud all’interno
permesse sono però a discrezione del fornitore. Nei della propria organizzazione. La scelta risulta di pregio
due casi presentati in queste pagine si ha, per esempio, in aziende che utilizzano i server sfruttando le CPU
la libertà di creare l’immagine del sistema operativo in maniera intensiva, per esempio se l’organizzazione
in maniera del tutto autonoma. Questo però è del tutto crea ricchezza elaborando dati per i propri clienti.
facoltativo. È infatti possibile utilizzare un’immagine Nelle realtà in cui i server sono impiegati per servizi
precostruita dal fornitore o da una terza parte. L’aspetto di infrastruttura (mail, fax centralizzato, file condivisi, ecc.)
interessante del cloud computing è la scalabilità non si avrebbero particolari vantaggi da questa struttura.
e il provisioning. Se le esigenze di elaborazione crescono, Nelle pagine seguenti verrà illustrato il servizio offerto
è possibile richiedere più capacità di elaborazione dal da Amazon, pioniere nella fornitura commerciale
fornitore in maniera istantanea. Si possono quindi gestire di servizi cloud e riferimento di mercato. Viene anche
picchi di lavoro in maniera del tutto trasparente. Non si illustrata la soluzione di Canonical che permette di creare
deve acquistare nulla e configurare nulla. Il provider della gratuitamente un ambiente cloud grazie a Ubuntu
nuvola è in grado di fornire le unità di calcolo a richiesta. ed Eucalyptus. L’aspetto interessante del sistema di
Naturalmente il servizio sarà fatturato di conseguenza Canonical è la compatibilità con l’infrastruttura di Amazon.
Amazon EC2
Amazon Elastic Compute Cloud (EC2) è un’alternativa
flessibile ai servizi di server hosting tradizionali.
Essenzialmente non è nulla di più che un insieme
di server su cui girano delle macchine virtuali tramite
l’hypervisor Xen. Il modo però con cui si lavora con
questo servizio è peculiare e comodo. È possibile lanciare
le proprie macchine virtuali in pochi minuti e spegnerle
a piacere e queste saranno fatturate sulla base di tre soli
parametri: il numero di ore in cui le macchine hanno
girato, il traffico di rete generato e il tipo di istanza
(disponibile in varie taglie da “piccola” a “grande”).
Si tratta a tutti gli effetti di un sistema di computing
on-demand: se il server deve gestire un picco di lavoro,
è sufficiente aumentare il numero di istanze in base
Il nostro primo login in Ubuntu su Amazon EC2 alle necessità. Questa flessibilità è possibile anche perché
Amazon non richiede pagamenti anticipati, a differenza
di quanto accade per forme tradizionali di hosting.
AMI ufficiali di Ubuntu Non stupisce, quindi, che molte startup e aziende
che erogano servizi Web 2.0, come Facebook, usano
EC2 per le proprie applicazioni Web. In qualità di utenti
Versione Disponibilità x86 x86_64 di EC2, si deve creare o scaricare una cosiddetta
8.04 (Hardy) Europa ami-30c0e844 ami-3ac0e84e Amazon Machine Image (AMI). Questo è un package
preconfigurato che contiene il sistema operativo
8.04 (Hardy) US ami-5d59be34 ami-2959be40 e il software, che si può istanziare come macchina
8.10 (Intrepid) Europa ami-80c0e8f4 ami-84c0e8f0 virtuale su EC2. Ubuntu ha AMI ufficiali per le proprie
release server 8.04, 8.10 e 9.04. I server virtuali
8.10 (Intrepid) US ami-5059be39 ami-255bbc4c di Ubuntu seguono il normale ciclo di vita di Canonical.
Questo significa che una release standard è mantenuta
œ
di chiavi SSH per accedere sulla propria istanza EC2: se si vuole eseguire una Ubuntu Hardy a 32 bit nella zona
ec2-add-keypair lxp-keypar > ~/.ec2/lxp-keypair.perm di disponibilità americana (si può scegliere tra Stati Uniti
0
Tecnologie del futuro
Large 4 EC2 Compute Unit 7.5 GB 850 GB 64-bit m1.large $0.40 $0.44
Extra large 8 EC2 Compute Unit 15 GB 1,690 GB 64-bit m1.xlarge $0.80 $0.88
High-CPU Medium 5 EC2 Compute Unit 1.7 GB 350 GB 32-bit c1.medium $0.20 $0.22
High-CPU Extra Large 20 EC2 Compute Unit 7 GB 1,690 GB 64-bit c1.xlarge $0.80 $0.88
128 2
Compatibilità con EC2: un’ottima idea AVAILABILITYZONE |- c1.medium 0004 / 0004 1
256 5
Rob Tweed, direttore della compagnia britannica M/Gateway AVAILABILITYZONE |- m1.large g 0002 / 0002 2
Developments Ltd ha lavorato con Canonical per aggiungere 512 10
un clone Open Source del database di Amazon (SimpleDB), AVAILABILITYZONE |- m1.xlarge g 0002 / 0002 2
M/DB, nel UEC Image Store. Come parte del lavoro, 1024 20
Rob Tweed ha pensato che sarebbe stato opportuno imparare
AVAILABILITYZONE |- c1.xlarge g 0001 / 0001 4
UEC. Qui di seguito ci sono alcune osservazioni circa Ubuntu
Enterprise Cloud: “Basare una nuvola privata sullo standard
2048 20
de facto delle API di Amazon è un’ottima idea. Per esempio Se si ottiene qualcosa di simil
la capacità di puntare sulla stessa interfaccia client, è presentato qui in alto, signifi
per esempio ElasticFox, sia su Amazon che sulla nuvola locale sta funzionando! Il nome “zoo” è l’etichetta che
su UEC e far funzionare i server nella stessa maniera è stata fornita alla nuvola nella fase di installazione
è un’esperienza notevole. ElasticFox è comunque una grande
del front-end e l’indirizzo 192.168.1.140 è l’IP
interfaccia per il cloud computing. Un’area che ho trovato
confusionaria è l’impostazione delle credenziali di sicurezza,
della macchina. Questi valori cambieranno su ogni
delle chiavi, ecc. Ho anche scoperto in maniera molto diretta installazione. La parte più interessante dell’output
che il cluster controller non gradisce essere installato precedente sono i VM types. Questa lista mostra
in VMware. Ho avuto parecchi problemi di rete che sono quante macchine di ogni tipo possono essere
scomparsi quando ho traslocato tutto su macchine dedicate”. lanciate sulla nuvola. I valori dipendono dal numero
e dalla potenza dei nodi. Questo esempio mostra
una rete abbastanza scarsa, in grado di far
Eucalyptus farà funzionare una macchina virtuale funzionare solo quattro macchine, tra le più piccole,
per core all’interno del nodo. Anche i nodi contemporaneamente. Ma se si compra una
dovrebbero essere relativamente ben equipaggiati, seconda macchina, si installa il software e si registra
con un hard disk veloce come requisito più il sistema come nuovo nodo UEC, i numeri crescono
importante (dal momento che Eucalyptus impegna automaticamente grazie alla fl essibilità della nuvola.
intensamente il disco). Un terzo componente Il modo più semplice per installare un’immagine UEC
che non si dovrebbe ignorare è la rete: le immagini e farla funzionare sulla propria nuvola è attraverso
occupano centinaia di megabyte di spazio disco l’interfaccia Web. Basta navigare sull’indirizzo IP
e questi sono copiati dal front-end ai nodi impostato, per esempio https://192.168.1.140:844
su cui girano. Una rete Fast Ethernet funzionerà, 3, e accedere con username admin e password.
ma serviranno alcuni minuti per far partire Si deve quindi cambiare questa password di default
le macchine virtuali. Per avere tempi nella pagina seguente e inserire l’indirizzo e-mail
di start migliori serve una rete Gigabit. che servirà per le notifi che. Una volta dentro
l’interfaccia Web si deve cliccare sulla linguetta
Primi passi Store. Questa mostra una lista di image uffi ciali
Se l’installazione di Ubuntu Enterprise Cloud che Canonical rende disponibili per l’uso su Ubuntu
è andata a buon fi ne, allora l’infrastruttura Enterprise Cloud. Nel momento della stesura di
è praticamente pronta per essere usata. questo articolo, la lista è limitata alle versioni a 32
Prima però bisogna ottenere le credenziali
di admin sulle macchine front-end:
cluster: ~$ mkdir ~/.euca
e 64 bit di Ubuntu 9.10 RC Server e all’appliance
MediaWiki in demo. Si deve cliccare Install œ
cluster: ~$ chmod 700 ~/.euca
cluster: ~$ cd ~/.euca
cluster: ~$ ~/.euca$ sudo euca_conf
_
--get-credentials mycreds.zip
cluster: ~$ ~/.euca$ unzip mycreds.zip
cluster: ~$ ~/.euca$ cd
Questo farà in modo che tutte le credenziali siano
memorizzate nella directory .euca della propria
home. Poi bisogna prima impostare tutte le variabili
d’ambiente di cui Eucalyptus ha bisogno:
cluster: ~$ source ~/.euca/eucarc
Se si vuole che questo accada ogni volta
che si fa login, bisogna inserire la riga precedente
alla fi ne del fi le ~/.bashrc. Per verifi care che tutto
sia impostato correttamente, si può richiedere
il dettaglio della disponibilità della nuvola:
cluster:~$ euca-describe-availability-zones
verbose
AVAILABILITYZONE zoo 192.168.1.140
AVAILABILITYZONE |- vm types free / max cpu
ram disk Potete installare un’immagine nella vostra cloud
AVAILABILITYZONE |- m1.small 0004 / 0004 1 usando direttamente quelle presenti nell’Ubuntu Cloud Store
Disco 5400 RPM IDE 7200 RPM SATA Disco 5400 RPM IDE 7200 RPM SATA
Networking 100 Mbps 1000 Mbps Networking 100 Mbps 1000 Mbps
esta
stal
ta la
are i proggrammi
ta puntata
p imp
im
grrammi
eret
ete come funziona il sistema
pacc
cchetti di Ubunt
ntu e ome
me personalizzare le lingue di sistema
Agli alb
albori ux l’unico modo per installare degli stessi
stessi. Questa fase è detta: risoluzione
L’autore program mmi dipendenz
denze;
alla com
ompilaz 4 impossib
ssibile la distribuzione di software
Luca Cipriani (e comportaa tututtora a sorge
rgenti non disponibili);
luca.cipriani@ 1 ogni prog
ogram 5 re i pro
programmi presso i siti che ne
redomino.com per le qu
quali s nel ca
caso in cui si dovrà installare
Rubrica curata
docummenta vrann
nno visitare decine di siti.
da Redomino Labs
in collaborazione 2 noon es mitazi
zioni, gli sviluppatori
con LPI Italia.
co o ag
aggio PT (AAdvanced Packaging
so
ono ta su Debian, ha
3 og estio
one dei pacchetti.
p
pres varri componenti
ed amministrarlo.
i i t l
e chiavi, l identificativo
Il potere della Super Mucca e altre amenità ta di creazione della stessa.
hiav
avi è il seguente:
Spesso molti sviluppatori amano scherzare $ sudo
d aptitude
i d moo $ sudo apt-key add file_chiave.asc
assieme agli utenti inserendo funzionalità $ sudo
d aptitude
i d -v moo re la chiave di cui sopra
divertenti (dette Easter eggs, o uova di $ sudo
d aptitude
i d -vv moo
Pasqua) all’interno del codice dei programmi $ sudo
d aptitude
i d -vvv moo $ sudo apt-key del 437D05B5
da loro creati. Un classico ed esilarante $ sudo
d aptitude
i d -vvvv moo attenzione
enzione al fatto che in questo caso
cas n
esempio è dato da apt-get. Digitando $ sudo
d aptitude
i d -vvvvv moo
$ sudo apt-get --help $ sudo
d aptitude
i d -vvvvvv moo
o il file GPG, ma l’id della chiave da elim
elimin
potete notare all’ultima riga la strana scritta E buon divertimento! Δ pt-cdrom om
Questo APT ha i poteri della Super Mucca. Apt-cdrom
pt-cdrom è uno strumento essenziale per creare crea
Ora non resta che trovare un modo di vedere dei repository se non si ha una connessionee a Int
la Super Mucca digitando il comando oppure se la connessione
sione stessa è molto le
lenta
$ sudo apt-get moo Per aumentare le p performance
ormance di un rrepos
Il successore di apt-get, ovvero aptitude
(che non è incluso negli obiettivi
su CD, consiglia
gliamo o la seguente proced
procedura
della certificazione), non ha i poteri vi permetter
erà di famil
miliarizzare con apt-cdr
cdrom
della Super Mucca come indicato comando dd d Innanzitutto
nanzitutto inserite il CD o il DVD
D
in fondo a quanto stampato dal comando supponenndo chee il vostro lettore CD sia mappat
mapp
$ sudo aptitude --help cdrom, cr
crea e un’immagine ISO del CD con il co
Q
Questo Aptitude
A i d non ha h i Poteri
P i $ sudo dd if=/dev/cdrom
della Super Mucca.
Anche in questo caso si cela uno scherzo
of=/home/vostro_utente/ubuntu-repo.iso
per l’utente, si provi a digitare in successione nte dovete montare in loopba pback
i seguenti comandi La Super Mucca di apt-get comand
mando mount:
$ sudo mount -o loop /home/vostro_utente/
Alien
No, non è il titolo del noto film di fa
il nome di un comando spesso utilis
di pacchetti dal formato .rpm al for
fare questa conversione? Semplice é alcuni
pacchetti non sono presenti in form b, nonostante
nostante
questa tendenza stia cambiando. Q o coma
omando Δ deei pulsanti
ulsanti in basso a sinist
sin
ha moltissime opzioni e l’uso avanz è ris riservato add aalcuni filltri;
ai manutentori di pacchetti, le opzio di base Δ unna descrizione
crizione del pacch
pac
convertono un file .rpm in pochi sec ndi di digitando in bassso a deestra.
$ sudo alien --to-deb pacchetto_versione.rpm Nella se ionne Impostazio oni
È possibile anche fare il contrario, o vero
o convertire di geestione dei repository che
un pacchetto .deb in .rpm con l’opz e ana naloga: di nnuovvi senza
enza modificare a m
$ sudo alien --to-rpm pacchetto_versione.rpm Si po
S ossonoono anche importare le
che gestiscono i repository. Sele S
Apt-ftparchive unn gruppo di pacchetti, avrete una u
Può accadere che delle intere strut degli
gli stessi, divisi per categorie. Ques Q
LAN o aule di formazione) abbiano i cercare
ercare del software di cui non si con
un repository software via rete; per r laa rricerca è assai utile il pulsante Cerca
Ce
creare un repository che utilizzi il pr i strumenti,
rumenti, potete personalizzare i pa etri di
il comando apt-ftparchive. Il com ome, e, descrizione e nome, respons
respo (creatore
reatore
non è parte dell’esame LPI 199, pe hetto),
tto), versione, dipendenze
dipendenz e cchet etti forniti.
sul funzionamento potete consultar ce è assai utile poiché in ntu sono
so presenti
oppure il link http://hausheer.oso chetti,
tti, non sono altro
a dei
ei pacchetti
ruppano
pano altri
altr pa etti. P Perciò installando
Synaptic pacchetti,
het altà ssi stanno installando
Da qualche tempo su Ubuntu è dis tete cessi ssivamente rimuovere
di pacchetti grafico chiamato Ubun ere i progra
programmi installati.
che, seppur essendo piuttosto intui la lista a destra,
e completo come il celebre Synap
“ufficiale” di Ubuntu. L’interfaccia è
e il comando di avvio è
$ sudo synaptic
Come visibile in Fig.3 la GUI è divis
Δ un menu; gg , p g
Δ una barra degli strumenti ; apt-get update
Δ una categorizzazione dei pacchetti sulla sinistra; apt-get upgrade
Δ una lista di tutti i pacchetti della categoria selezionata Ricordiamo che usare il pulsante Aggiorna è necessario
visibile a destra; nel caso in cui si modifichino i repository.
DEM
O 2 e un DVD-ROM
DVD IL GIOCO COMPLETO
te conne
sso
nalmen zione Spreate.
IN ITALIANO
o funzio
con più di
lica en
Support a una pubble separatamni
allegatonon vendibi . declina ogdel
Editori Editori S.p.A l’utilizzo
Sprea abilità circa in questo
po ns uto
res conten
softwareM.
DVD-RO
0 0
01
1-02-2
0
1
indd
166 nbody.
_dvd_o
gmc166
■ NAPOLEON:
ETO
GIOCO COMPL
TOTAL WAR ■
esso
onalmente conn
Supporto funzi pubblicazione Sprea
allegato a una ibile separatamente.
Editori non vendS.p.A. declin
a ogni
Sprea Editori circa l’utilizzo del
responsab ilità to
nuto in ques
software conte
DVD-ROM.
BIOSHOCK 2 ■
Game
- © 2009 Nordiceted by
ersTM - Cold War
Codename: PanzH & Cie. KG. Published and Mark n Software
Production Gmb and developed by Stormregio
ALIENS VS PRED
s reserved.
Atari Europe SASUand InnoGlow Kft. . All right : Panzers
Deve lopm ent Kft. n and Code name
rd, Stormregio of Stormregion Software n"
Powered by Gepa tered trademark
s
GameSpy Desig
Logos are regis GameSpy and “Powered by tries, Inc. All other ar.com
Development Kft. s of GameSpy Indus epanzerscoldw
ctive
teredd trademark the property of their respe e Xbox
are regisstere
www.codenam
ed
tered trade marks are di Wind ows Vista
regis il pulsante Start po Microsoft, e ‘Games for
owners.. Windows,
ATOR ■ STAR TREK
grup
hi registrati del Start di Windows Vista sono
360 sonoo marc del pulsa nte
Windows’ s’ e il logo
Microsoft.
ti su licenza di
utilizzati
ONLINE ■ CIVIL
IZATION V ■ FALLO
UT: NEW VEGA
€ 7,90
UTER N°166 - MENS - ANNO XIV-10
GIOCHI PER IL MIO COMP
S
10:18:30
io.
necessarrio. (A. Savinio) 25-01-2010
del superfluo sul necessa
si misura dalla vittoria
Il progresso della civiltà
1
odename.indd
gmc166_dvd_c
14:19:45
11-02-2010
D.indd 1
Chiedila subito
Per essere sempre informato
GMC166_cover_DV
al tuo edicolante!
sulle novità del mondo dei videogiochi:
IL NUOVO PORTALE
DI RIFERIMENTO
www. .it PER I GIOCATORI!
Premiata Amministreria
Dr Chris Brown
Dottor Brown Tecniche esoteriche per i sysadmin direttamente
Il Dottore si occupa di formazione, scrittura
di articoli e consulenze su Linux. dai recessi più impenetrabili della sala server
Trova che il suo PhD in fisica delle particelle
non sia di alcun aiuto in questo tipo di lavoro.
Gianni il datagramma
Internet Guardiamo il Web attraverso gli occhi di un umile richiesta HTTP GET
Vi presento Gianni. Lui è un datagrammaa e questa è la sua
storia. È un pacchetto che fa parte di una richiesta HTTP, una
degli innumerevoli milioni che ogni giorno attraversano senza
Ciao Gianni
paura Internet, ma potrebbe benissimo essere una risposta
Se Gianni avesse ragionato un po’ meglio si sarebbe reso conto
SMTP o una richiesta ICMP echo o persino un modesto del fatto che, se il firewall della macchina di destinazione avesse
segmento TCP SYN. La sua storia sarebbe praticamente bloccato la porta 80, lui non sarebbe nemmeno stato spedito,
identica. Gianni ha cominciato la sua vita alle 13:34:07 perché non sarebbe stato possibile creare la connessione TCP.
di lunedì 14 dicembre, quando Michele (una persona in carne Ma dovete capire che è difficile ragionare lucidamente quando
e ossa) ha cliccato su di un link nel suo browser per visitare si è solo un piccolo datagramma che guarda in faccia l’oblio.
il sito Web di Linux Pro. Il browser di Michele ha creato Gianni
allo scopo di recuperare quella pagina. Alla nascita Gianni
era lungo 522 byte. Cominciava con il testo GET / HTTP/1.1 ed era grato di ciò. Pensava che essere tagliato, trasmesso
e finiva con una riga vuota perché, beh, le intestazioni HTTP a pezzi e ricostruito dall’altra parte doveva essere una cosa
sono fatte così. In effetti era tutto intestazione e niente corpo, che, come minimo, lo faceva piangere.
cosa che a Gianni sembrava un po’ strana, ma il browser
gli aveva assicurato che era normale per una richiesta GET Il tempo passa
di HTTP, quindi alla fine aveva concluso che era ok. Costruito Gianni venne passato giù allo strato IP, che prontamente
il pacchetto, il browser lo ha passato alla pila del protocollo gli aggiunse un’altra intestazione che conteneva
TCP/IP della macchina di Michele, con l’istruzione precisa gli indirizzi IP di provenienza e di destinazione e un
di spedirlo alla porta 80 della macchina con indirizzo IP campo detto time to live (tempo di vita), che Gianni
81.29.213.100. Lo strato TCP della macchina di Michele trovò leggermente inquietante. Era nato solo da poche
ha preso il datagramma e gli ha aggiunto un’intestazione. decine di microsecondi e già sembrava che i suoi giorni
Gianni era molto soddisfatto dell’intestazione TCP che gli era fossero contati! Ora era diventato lungo 574 byte.
stata aggiunta davanti, con i suoi campi dai nomi altisonanti Gianni era orgoglioso delle sue luccicanti nuove intestazioni
come window size e e sequence numberr e i suoi misteriosi perché ora chiunque poteva dare loro uno sguardo e sapere
flag g dai nomi secchi come SYN, PSH e FIN. Ma si rendeva dove si supponeva fosse diretto. Era grato di questo perché,
conto che i campi più importanti della sua intestazione TCP francamente, non aveva assolutamente idea di come arrivarci
erano i numeri delle porte di provenienza e di destinazione. coi suoi mezzi e doveva chiedere la strada a ogni passo.
Lo strato TCP sembrava piuttosto preoccupato per Gianni, Lo strato IP passò Gianni ancora più giù nella pila del
tanto da segnarsi su un quaderno l’ora in cui Gianni lasciò protocollo, dove venne incapsulato dentro una trama
la macchina. Gianni pensò che è davvero bello fare parte Ethernet pronta per essere trasmessa sulla rete locale
di un protocollo orientato alle connessioni e provò dispiacere verso il gateway di default. Questa trama conteneva gli
per quei datagrammi UDP privi di connessione, con le loro indirizzi Ethernet di provenienza e di destinazione, entrambi
brevi e patetiche intestazioni, cose di cui non valeva nemmeno lungi sei byte, perciò Gianni adesso era lungo 588 byte
la pena di occuparsi. Gianni era ora lungo 554 byte. e cominciava a sentirsi notevolmente più pesante. Il vero
Era quasi sicuro di essere sufficientemente breve e proprio processo di trasmissione gli apparve piuttosto
per non essere frammentato durante il cammino strano. Dato che c’era solo un singolo bit in transito
in un qualsiasi istante, Gianni non si sentì in nessun momento
davvero “sul filo”; piuttosto trovò sempre più di se stesso sulla
macchina di destinazione e sempre meno sulla macchina
di provenienza. Il posto dove si trovava ora Gianni era il router
ADSL di Michele. La trama Ethernet gli venne strappata via
e, con suo grande orrore, il router iniziò a cambiare l’indirizzo
di provenienza nell’intestazione IP e la porta di destinazione
nell’intestazione TCP. Il router liquidò le sue proteste dicendo
mestamente “Spiacente amico, ma arrivi da un indirizzo IP
privato. È contrario ai regolamenti lasciarti andare su Internet
combinato così. Non sei instradabile, mi dispiace”. Gianni
fu quindi incapsulato di nuovo per essere trasmesso
sul collegamento ADSL fino al primo gateway gestito dal
fornitore di servizi internet di Michele. Tutta la faccenda del
gateway (togliere la trama esterna, prendere una decisione
sull’instradamento, incapsulare) si ripeté molte volte tanto che
Gianni stava cominciando a perdere il conto. Aveva notato
che il campo time-to-live e era iniziato a 64 microsecondi
e stava gradualmente riducendosi. Gianni si chiedeva cosa
sarebbe successo se fosse sceso a zero. Sarebbe comparsa
Gianni e la sua intestazione TCP sono evidenziati in giallo dal cyberspazio una signora con la falce per portarlo
via in /dev/null? Sarebbe stato doloroso? Mentre Gianni Int. Pacchetto Int. Pacchetto
Int. IP TCP Strato IP Int. IP
proseguiva il suo viaggio attraverso i core gatewayy di Internet HTTP TCP HTTP
cominciò a chiedersi cosa fosse tutta quella storia della
*orientato alla connessione* di TCP. Nessuno dei gateway
a cui aveva chiesto sapeva nulla sulla connessione di cui
Internet
si supponeva che lui facesse parte. “È per te come per tutti
gli altri” dicevano, “noi vi instradiamo e poi ci dimentichiamo
completamente di voi”. Solo quando raggiunse lo strato TCP
del server di LXP capì che senso avesse fare parte Ogni strato deve
di una connessione. Almeno lì sembrava che lo aspettassero. a Linux Pro. Prima che potesse iniziare il suo viaggio ci sono aggiungere
In effetti erano così contenti di vederlo che mandarono subito state richieste e risposte DNS, richieste e risposte ARP la sua intestazione
un acknowledgmentt alla macchina di Michele per dire che era e tre pacchetti TCP per impostare la connessione. In effetti per riuscire a fare
il suo lavoro.
arrivato sano e salvo. Lo strato TCP dal lato di Michele trasse Gianni era uno dei 52 pacchetti che sono stati generati Le intestazioni
un sospiro di sollievo e cancellò Gianni dalla sua lista. per la richiesta HTTP GET, semplicemente per caricare sono poi rimosse
“Un altro che ce l’ha fatta, capo” disse al kernel. la homepage di Linux Pro sul computer di Michele. E con a destinazione
Wireshark k abbiamo catturato oltre 1.000 pacchetti
Il gioco dell’attesa durante il processo di caricamento del sito Web. Oggi
Al momento di arrivare all’interfaccia di rete della sua abbiamo visto la vita del datagramma Gianni. La prossima
destinazione (il server Web di Linux Pro) Gianni aveva volta che cliccate su un link pensate per un attimo a Gianni
attraversato 15 gateway ed era vecchio di 74 millisecondi: e ai suoi amici che viaggiano nel cyberspazio per noi. LXP
non una brutta età per un datagramma, pensò. Calcolò
che aveva passato meno di un millisecondo effettivamente
‘in viaggio’, mentre gli altri 73 erano stati spesi aspettando A cosa servono gli strati?
in una coda o in un buffer di uno dei gateway.
Un’esperienza che somiglia, in miniatura, a quella di un Dal punto di vista dell’amministratore di un sistema Linux ci sono quattro strati (o livelli)
qualsiasi viaggio in aereo dei nostri giorni. Ma Gianni non della pila del protocollo di rete che bisogna conoscere. Lo strato superiore è detto
era ancora arrivato completamente a destinazione ed ebbe dell’applicazione ed è quello con cui interagiscono client, server e applicazioni. Qui risiedono
uno strano presagio quando entrò nella catena INPUT i protocolli che fanno il lavoro che ci interessa: recuperare pagine Web, spedire e-mail, cercare
di Netfilter sul server Web di Linux Pro. Avrebbe trovato indirizzi IP, sincronizzare l’orologio della macchina, eseguire login remoti e così via. Al di sotto
di questo primo strato troviamo quello del trasporto e i protocolli TCP e UDP. Questi protocolli
una regola ACCEPT T che gli corrispondeva? Era abbastanza
implementano il concetto di porta numerata, così che i pacchetti possano essere consegnati
sicuro che la politica di default fosse DENY Y perché, quando a un specificato punto finale su un computer, quello su cui il server che ci interessa sta
si trovava ancora nella coda di spedizione della macchina ascoltando. Nel caso di UDP (User Datagram Protocol) questo è più o meno tutto quello
di Michele, aveva sentito delle storie davvero deprimenti che questo strato fa. UDP offre un servizio di consegna best effortt e non contiene nessun
di pacchetti ICMP port unreacheablee provenienti esausti meccanismo per verificare che i pacchetti siano effettivamente arrivati né per rispedirli
dal campo; storie di coraggiosi datagrammi che avevano nel caso siano andati persi. TCP (Transmission Control Protocol) è molto più sofisticato.
Oltre a usare i numeri di porta per identificare il punto di destinazione, TCP usa uno schema
combattuto duramente lungo innumerevoli gateway
di acknowledgmentt (ricevute) positivi e di ritrasmissioni, nel tentativo di fornire un servizio
per poi finire respinti senza lasciare traccia dalla coda di ‘garantito’ anche nel caso in cui il sottostante strato di rete perda dei pacchetti. TCP
ingresso della macchina di destinazione. Mentre lo stavano ha anche un elaborato meccanismo per regolare il flusso dei dati sulla rete. Inoltre è orientato
elaborando nella catena INPUT, passandolo da una regola alle connessioni e usa un protocollo che prevede lo scambio di tre pacchetti (il famoso
all’altra senza che nessuna gli corrispondesse, Gianni three-way handshake) per stabilire la connessione prima di un qualsiasi scambio di dati.
cominciava a perdere la speranza. Alla fine però una regola Notiamo comunque che, come ci ha mostrato la storia di Gianni, solo i due punti estremi sanno
qualcosa della connessione. Stabilire una connessione TCP non implica di riservare una qualsiasi
ebbe pietà di lui e a Gianni fu concesso di procedere in su
risorsa di comunicazione sui gateway che si trovano tra i due estremi della connessione.
verso la sua destinazione. Lo strato IP rimosse gentilmente
la sua intestazione IP e lo passò su allo strato TCP, che Andiamo più a fondo
lo diresse verso la sua destinazione finale, la porta 80, Immediatamente al di sotto dello strato di trasporto si trova lo strato di rete e il protocollo IP.
dopo aver staccato l’intestazione TCP, lasciando in evidenza IP ha un solo scopo: instradare i pacchetti attraverso Internet in modo che arrivino alla macchina
l’originale intestazione HTTP. A questo punto Gianni giusta. Non ha niente a che fare con i numeri di porta e non ha nessun meccanismo per
verificare l’arrivo dei pacchetti o per ritrasmetterli. Spingendosi ulteriormente in giù sotto
si ricordò chi era e perché era venuto. Era ora in grado
lo strato di trasporto si trova una miriade di protocolli. Hanno a che fare con il trasporto fisico di
di consegnare la sua richiesta GET T al molto disponibile un flusso di bit da un computer a un altro. Quaggiù troviamo cose come le famiglie di protocolli
server Web Apache. “Ok Gianni”, disse gentilmente il server, 802.3 (Ethernet) e 802.11 (Wi-Fi). A questo livello si nasconde una notevole complessità, ma
“ora me ne occupo io...”. La storia di Gianni ora è finita, ma fortunatamente la maggior parte degli amministratori di sistema non avrà bisogno di interagire
non è affatto unica. Non era il primo datagramma a essere con questi protocolli, a parte quando gli tocca tirare i cavi di rete nelle canaline dell’ufficio!
generato quando Michele ha cliccato sul link che punta
Universo ebook
Il libro elettronico in tutte le sue sfaccettature: i lettori di ebook, i programmi
di conversione e le applicazioni per modificare gli ebook su GNU/Linux
La rivoluzione era nell’aria: in una manciata di anni,
L’autore dal vecchio vinile si è passati al CD e quindi ai file Come funziona
MP3, dalle ingombranti videocassette VHS
l’inchiostro elettronico?
Alessandro Di Nicola si è arrivati ai luccicanti dischetti Blu-ray e allo streaming L’inchiostro elettronico della tecnologia e-inkk è formato
Utilizza GNU/Linux video su Internet. L’unico medium rimasto finora immutato da microsfere posizionate dentro lo schermo. Negli attuali
dal 1995 e collabora nei secoli è il libro a stampa. Finora, perché tutto fa pensare display monocromatici all’interno di queste microsfere sono
attualmente con riviste presenti particelle bianche e particelle nere, caricate
che il tempo del libro elettronico sia finalmente giunto.
sull’Open Source e, in differentemente. Grazie all’uso di campi elettrici, quindi,
generale, di argomento La tecnologia adottata negli schermi dei lettori di ebook,
viene modificata la posizione delle particelle così da stabilire
IT.
T Ha pubblicato per chiamata e-ink, k è matura, i dispositivi per leggere sono quale colore deve risultare visibile sul display.
le Edizioni FAG i libri ormai distribuiti anche negli esercizi commerciali a più ampia
Linux Ubuntu per l’uso diffusione e grandi nomi come Amazon e Sony si sono buttati
desktop e Linux Ubuntu con entusiasmo in questo nuovo e stimolante mercato. In e al tempo stesso un notevole risparmio energetico.
per server e reti.i
queste pagine, dunque, verranno puntati i riflettori sul vasto Grazie all’assenza di retroilluminazione, poi, è possibile
Homepage: www.
alessandrodinicola.it. e per molti aspetti sconosciuto universo del libro elettronico, leggere sul display di un lettore di ebook in pieno sole
sia per ciò che concerne l’hardware attualmente in potendo contare su una visibilità eccellente, mentre
commercio sia per ciò che riguarda il software che è possibile per sfogliare un ebook di notte bisogna solitamente
installare su GNU/Linux: si comincerà presentando i diversi munirsi di una fonte di luce artificiale, proprio come
lettori di ebook (chiamati anche e-reader) disponibili nel avviene con i libri di carta. Anche l’angolo di visuale
mercato italiano, quindi si scoprirà come convertire e leggere che si ottiene con i display e-ink, un angolo di ben 180
gli ebook con l’applicazione Calibre e e infine si modificheranno gradi, avvicina l’uso di questi dispositivi alla piacevole
i libri elettronici tramite Sigil, un avanzato editor lettura a cui i libri cartacei ci hanno da tempo abituati.
di ebook. Come distribuzione GNU/Linux di riferimento
per le prove è stata scelta la diffusissima Ubuntu,
nell’ultima versione 9.10 Karmic Koala.
Cybook Opus
La tecnologia e-ink
Tutti i lettori di ebook che troviamo attualmente in commercio
(alcuni dei quali li trovate descritti nei box presenti in queste
pagine) hanno almeno un elemento in comune: l’adozione
della tecnologia e-ink. Si tratta di un vero e proprio inchiostro
elettronico che presenta come dispositivo di visualizzazione
uno schermo riflettente, a differenza dei normali display
per PC che sono di tipo retroilluminato (in questi, cioè,
viene impiegata una luce posteriore per illuminare quanto
visualizzato sul display). Questa differenza fa sì che lo schermo
di un lettore di ebook, riflettendo la luce come le pagine
di un volume cartaceo, risulti meno stancante per la vista
rispetto al monitor di un computer. Quando una pagina e-ink
viene visualizzata, questa viene letteralmente stampata sullo
schermo: a questo punto lo schermo viene spento, dato
che non è richiesto alcun aggiornamento della pagina,
con il risultato di ottenere una pagina visivamente stabile Piccolo, veloce e con un display ad alta risoluzione. Ecco, in sintesi,
le caratteristiche del Cybook Opus. Il display da 5” possiede
un’eccellente visibilità grazie ai 200 dpi e la CPU a 400 MHz
I principali formati per gli ebook permette al lettore di rispondere con estrema rapidità ai comandi.
Ruotando lo schermo è possibile passare automaticamente
dalla modalità di lettura verticale a quella orizzontale.
I formati di file con cui vengono distribuiti gli standard Open eBook. Sia EPUB che Δ Produttore: Bookeen
ebook sono numerosi e, certo, il loro numero Mobipocket sono formati di tipo reflowable, Δ Web: www.bookeen.com
può disorientare l’utente alle prime armi. Tra nei quali cioè il testo viene dinamicamente Δ Caratteristiche: Display e-ink 5” risoluzione 600x800
tutti questi spicca EPUB, un formato libero adattato allo specifico dispositivo su cui viene 200 dpi, 4 livelli di grigio, 1 GB di spazio, alloggio SD Card,
e aperto che costituisce lo standard dell’IDPF volta per volta visualizzato. Infine, per gli CPU Samsung ARM 400 MHz, durata della batteria
(International Digital Publishing Forum) per ebook è possibile usare dei formati di file non ricaricabile 8000 pagine girate. Formati EPUB, PDF, HTML,
i libri elettronici. Altro diffuso formato per specificamente pensati per i libri elettronici: TXT. Dimensioni 108 x 151 x 10 mm, Peso 150 g.
gli ebook è Mobipocket, basato sul vecchio HTML, RTF, DOC o anche ASCII semplice. Δ Prezzo: € 249,00
Netgear WNDR3700
Un router Wi-Fi a doppia banda per l’utente esigente
un controllo d’accesso più granulare
e anche velocità d’accesso migliori.
Probabilmente un futuro
upgrade del firmware
potrebbe comunque
migliorare la situazione.
Per accedere
da Linux all’unità
a disco si usa
il protocollo SMB
– per Windows
esiste anche
un client apposito,
oppure tramite HTTP/FTP
(anche dall’esterno via Internet).
Mentre per i sistemi Windows
esiste una procedura automatica
per la prima configurazione,
I led sul fronte del WNDR3700 indicano l’attività gli utenti Linux e Mac devono
del Wi-Fi sulle due bande disponibili, del disco USB accedere alla ricca interfaccia
eventualmente collegato e di Internet. Inoltre Web del router per configurarlo,
c’è un pratico pulsante per attivare e disattivare il Wi-Fi
che risponde all’indirizzo www.
routerlogin.net. Ricordiamo
etgear, società molto Enterprise tramite server Radius).
N
di modificare immediatamente
nota per i suoi prodotti Oltre alle due connessioni la password di default dell’utente
per il networking, ha principali, è possibile impostarne admin (che è “password”) onde
messo in commercio altre due, una per banda, di tipo evitare manomissioni da parte
da un po’ di tempo quello che “guest”, da far usare agli ospiti, di furfanti. Tutte le operazioni da
forse è il suo router wireless ad esempio, aprendo solo seguire (l’ordine di collegamento
più “equipaggiato”, il RangeMax la navigazione su Internet dei cavi e quello delle
Dual Band Wireless-N Gigabit ma non facendoli accedere alle impostazioni da sistemare)
Router WNDR3700. risorse di rete condivise. Inoltre sono ben spiegate dal manuale
è possibile definire la “qualità in PDF presente nella confezione Le porte Ethernet sul retro
Doppia banda del servizio” per le reti Wi-Fi, e, volendo, si può sfruttare sono di tipo Gigabit. Inoltre
Come si deduce dal nome, ottimizzandole per particolari una procedura guidata avviabile abbiamo apprezzato
questo router – compatibile flussi (ad esempio quello video dall’interno dell’interfaccia Web. la presenza del pulsante per
con i protocolli 802.11 b/g/n nel caso si voglia fare streaming). Aprendo la confezione, si vede l’accensione e lo spegnimento
del dispositivo, non sempre
- è in grado di operare Oltre al collegamento senza fili, che Netgear ha addirittura presente nei router
contemporaneamente sulle il WNDR3700 dispone di quattro numerato i vari componenti
bande di frequenza a 2,4 GHz porte Gigabit, per realizzare presenti (router, cavo di
e 5 GHz impostando due
reti diverse, una su una banda
una rete cablata dalle massime
prestazioni. Sempre per quel che
alimentazione, cavo di rete) per
facilitare il primo collegamento
Giudizio
e una sull’altra. In tutti i casi riguarda gli stream audio/video, anche a chi è poco esperto. Netgear WNDR3700
le prestazioni dei collegamenti il router è compatibile con L’interfaccia Web offre una Produttore: Netgear
sono più che buone (non al top le specifiche UPnP e DLNA, quindi miriade di funzioni (attivazione Web: www.netgear.it
in tutti i casi, ma quasi), con il è possibile collegare dispositivi e controllo del firewall SPI/NAT/ Prezzo: 159,90 € IVA inclusa
singolo collegamento sulla banda multimediali in maniera semplice. DMZ, uso di un DNS dinamico, Caratteristiche 9
a 5 GHz la distanza coperta un controllo – seppur solo Facilità d’uso 9
è, come al solito, inferiore Mi faccio il NAS di base – dello sfruttamento Prestazioni 8
a quanto accade con i 2,4 GHz; La porta USB sul retro consente della banda Internet, QoS Qualità/prezzo 8
la condizione d’uso ottimale di collegare un disco esterno di base, logging, controllo della
Un router Wi-Fi praticamente
prevede l’impiego di chiavi USB USB e trasformarlo in un NAS, potenza del Wi-Fi e altro ancora) completo di tutto. Avesse
di Netgear, come la WNDA3100 un disco di rete. Le funzioni in grado di soddisfare anche anche il modem ADSL integrato
(€ 49,90). Ovviamente e la velocità d’accesso messe gli utenti più esigenti. Il prezzo sarebbe quasi perfetto.
è possibile proteggere il Wi-Fi a disposizione vanno benissimo in un po’ sopra la media è giustificato
Il voto di
con chiavi WEP, WPA e WPA2
(di tipo TKIP e AES, oppure
ambito home, mentre per un uso
più professionale servirebbe
dalle tante caratteristiche
tecniche del dispositivo. LXP Linux Pro 8
40 LXP90 APRILE 2010
Inkscape Test
Inkscape 0.47
di Photoshop in un software
di illustrazione vettoriale
ha un grande impatto sul modo
di lavorare con le immagini.
Combinato con una funzione
di importazione decente,
Inkscape porta la grafica vettoriale sotto Linux su un nuovo livello Inkscape non vi costringe
a passare spesso per GIMP.
Questo è tanto più vero perché
il menu Filtri include una
selezione di strumenti artistici
da usare sulle immagini bitmap,
anche se non hanno molte
opzioni. Un buon range di tool
tipografici significa che potete
usare Inkscape per creare
locandine, poster e depliant.
Il rendering dei font è grandioso,
con un anti-aliasing intelligente
anche quando si fa lo zoom.
L’interfaccia sarà più
confortevole per gli utenti
abituati a CorelDraw, piuttosto
che Illustrator; la gestione
dei colori, la manipolazione degli
oggetti e la gestione dei livelli
sono simili a quelli del prodotto
di Corel. Nell’interfaccia
di default le varie toolbar sono
quasi tutte attive, mentre i vari
dock compaiono sulla destra.
Questa disposizione può causare
confusione nei principianti,
ma dopo qualche minuto ci si
L’importazione di file PDF o SVG funziona alla grande, anche con il testo fa l’abitudine. Un altro sintomo
della potenza e della complessità
XP segue con piacere industriale SVG, e che il tool Inkscape vi consente di costruire dell’applicazione sono le sue
Q è impossibile da
recensire senza tirare
in ballo il problema
dei brevetti e delle questioni
da vari brevetti e leggi. Includere
queste tecnologie senza pagare
una licenza costituisce
un’infrazione alla legge in molti
sistema audio, è l’eccellente
chiarezza e profondità del suono
surround – è probabilmente la
miglior riproduzione del Dolby
per un anno dall’acquisto,
o più a lungo se stipulate
un contratto extra – si arriva
fino a 5 anni spendendo 19
legali. La ragione per cui nessuna paesi del mondo. Fluendo 5.1 che sia mai uscita dalle euro. Alcuni utenti troveranno
distro Linux viene rilasciata con è coinvolta nello sviluppo nostre casse. Fluendo ha troppo semplice la GUI basata
la capacità di riprodurre i DVD e nella commercializzazione l’opzione di passare l’audio su GTK. I controlli per la
come invece fa il programma delle tecnologie GStreamer, digitale alla vostra scheda audio riproduzione sono quelli di base
Fluendo DVD Player è che per cui la creazione di un buon e fare il downmix da 5.1 canali e il software si occupa solo
gli “standard” applicati player per Linux fa parte del suo a stereo se preferite (anche se dei DVD, non di altri tipi di file
è raro che un DVD multimediali. Un player in grado
non abbia anche la traccia di gestire anche altri formati
audio a due canali). (tutti opportunamente licenziati,
ovviamente) darebbe più valore
Secondo alla spesa per il suo acquisto. LXP
le regole
Un altro dettaglio
che si nota è che
il player Fluendo rispetta
Giudizio
le regole, incluso il non Fluendo DVD Player
saltare i bit iniziali Sviluppatore: Fluendo
di un DVD. Dopo aver Web: www.fluendo.com
sopportato i vari loghi per Prezzo: € 19,99
una durata spesso Caratteristiche 7
eccessiva, vi ritrovate Facilità d’uso 8
davanti il menu del DVD. Prestazioni 8
Questi menu funzionano Qualità/prezzo 7
proprio come sono stati La tecnologia è grande,
pensati e potete usare il ma l’aspetto di Fluendo DVD
mouse per cliccare sulle Player potrebbe essere migliore.
varie voci, oppure la
Il voto di
Volete il miglior audio possibile? Bene, con Fluendo il Dolby 5.1
è il più limpido mai sentito sotto Linux. Withnail and I @ Anchor Bay
tastiera per spostarvi di
elemento in elemento. Linux Pro 7,5
42 LXP90 APRILE 2010
In libreria Test
L
la stampa, la gestione server questa sarebbe
Nuove ha mandato dei caratteri (argomento un’ottima scelta, per l’utente
da qualche tempo non sempre trattato nei libri desktop avremmo preferito
in libreria questo per principianti ma interessante che il libro fosse basato
volume pensato per chi si e utile), la realizzazione su una versione più recente
avvicina per la prima volta a di documenti e la fruizione/ della distro, anche se quanto
Linux e in particolare a Ubuntu. creazione di musica e video, spiegato rimane valido tuttora.
Dopo la necessaria compreso l’uso dell’iPod. In definitiva, questo volume
introduzione al mondo Insomma, ci sono tutti gli rappresenta una discreta
del Pinguino e del argomenti per l’uso “normale” introduzione a Ubuntu, ma non
Software Libero, l’autore di un computer basato è perfetta in tutti i suoi aspetti.
procede per gradi su Linux. Le spiegazioni però
mostrando prima come non sempre ci sono sembrate
usare Ubuntu dall’interno
di Windows con Wubi, poi
sufficientemente approfondite,
tutto è reso in modo discorsivo
Giudizio
llustra il funzionamento e chiaro, ma a volte sarebbero Ubuntu Linux Facile
ella scrivania di GNOME, state necessarie informazioni e per tutti
desktop di default più dettagliate. Il lettore Autori: Rickford Grant
Ubuntu, e come terzo si fa sicuramente un’idea Editore: Tecniche Nuove
rgomento tratta la di quali strumenti può usare per ISBN: 978-88-481-2338-9
Pagine: 335
nfigurazione e l’uso degli compiere le varie operazioni, Prezzo: € 34,90
umenti per accedere a ma non sempre ottiene
Un volume dal prezzo un po’
ernet. I capitoli successivi direttamente dal libro tutte alto visto che non sempre offre
ttano l’installazione le istruzioni per farle. L’autore spiegazioni con il giusto livello
programmi, ha basato il suo testo su Ubuntu di approfondimento. Basato su
personalizzazione 8.04 LTS (una versione di una vecchia versione di Ubuntu.
ll’ambiente, la gestione Ubuntu il cui supporto da parte
Il voto di
file e l’uso di vari
ammi per la grafica,
degli sviluppatori terminerà
solo nel 2011): se per l’ambito Linux Pro 6,5
S quando un libro si
propone come “la guida
definitiva” a qualcosa
più “sbrigativo” e meno ricco
rispetto ai migliori titoli che
abbiamo letto nel corso degli
anni. Eppure The Definitive
Guide to Plone punta a fornirvi
da costruire un prodotto finale
coerente e ben fatto. Nel testo
trovate le classiche cose
che si dicono su Python, incluso
il suggerimento di studiare
grandioso, ricco di scenari
reali che vi aiutano a capire
alcuni dei possibili usi di Plone.
Vai su www.linuxpro.it/abbonamenti
Sottoscrivendo l’abbonamento ricevi a casa
il tuo mensile preferito e puoi gestirlo come vuoi tu dal WEB
Per informazioni: scrivete ad abbonamenti.linuxpro@sprea.it o telefonate il giovedì dalle 10 alle 14 al numero 02/87158225
Test Confronto
COME ABBIAMO
CONDOTTO I TEST
Tutte le applicazioni sono state
testate su un PC Dual Core
con 4 GB di RAM, usando come Se non siete capaci di andare a pranzo senza avvisare
distribuzione Fedora 12 standard.
Non sono stati eseguiti test
tutto il mondo, abbiamo i programmi che fanno per voi
particolari per questo confronto,
dal momento che questi client
non hanno requisiti significativi
in termini di utilizzo della CPU;
le caratteristiche dei programmi
sono state provate utilizzandole
in maniera normale per un
periodo di alcune settimane.
La tabella alla fine del confronto
fornisce una buona idea delle
caratteristiche di ciascuno.
Valori come l’utilizzo della RAM
sono calcolati facendo la media
della RAM consumata durante
l’esecuzione di tutti i client
contemporaneamente, e sono
stati riportati solo come
riferimento. Metà dei client provati
si appoggia alla piattaforma
Adobe Air. Per questi test
abbiamo eseguito sia l’ultima
versione stabile che la beta
più recente; alcuni client
hanno funzionato meglio
nel primo caso, altri viceversa.
C che il cosiddetto
microblogging sarebbe
diventato così
popolare? Il 2009 è stato
un anno in cui il questo
caratteri, in tale spazio
è possibile far stare diverse
cose, se ci si prova. Con
il microblogging l’abbreviazione
degli URL ha trovato una nuova
multi-piattaforma, molti
scritti in Adobe Air, per cui
semplicemente non c’era spazio
in queste pagine. Tra questi
abbiamo scelto i più diffusi,
fenomeno è esploso, nicchia di mercato, esattamente definiti da Twitstats. Sono
in particolare attraverso Twitter. come i servizi che offrono rimasti gli strumenti dedicati
Alcune personalità di spicco hosting per le immagini: perciò al microblogging per il normale
hanno iniziato a farsi idolatrare ci sono molte più funzionalità utilizzo desktop, di cui
un po’ anche digitalmente, da aspettarsi da uno strumento parleremo nelle prossime
allo stesso tempo sviluppatori dedicato al microblogging pagine. Si comincia!
e aziende di ogni sorta hanno di quelle che si potrebbero
iniziato a invitare i propri clienti immaginare. Avendo spazio
a “seguire” tutte le novità che per testare solo otto candidati, LA NOSTRA
li riguardano su Twitter; c’è poi abbiamo dovuto tracciare SELEZIONE
sempre meno gente che resiste e seguire delle linee guida. Δ p p g
alla irresistibile tentazione Abbiamo ignorato i client
Δ DestroyTwitter
y » 47
di raccontare a tutti che sta a linea di comando (bti
in fila dal dottore usando è probabilmente il migliore, Δ Twitux » 48
il proprio telefono cellulare. se vi serve uno strumento Δ Gwibber » 48
di questo tipo), i browser Web
Cip cip! e le relative estensioni,
Δ Choqok
q » 49
Con il passare del tempo e altri software che possono Δ TweetDeck » 49
Twitter non è diventato solo interfacciarsi con Twitter Δ Mitter » 50
più popolare, ma anche più ma il cui scopo principale non
complesso. Anche se mette è il microblogging. Ci sono Δ Mixero » 50
Spaz
Promettente client basato su Adobe Air
al momento potreste avere bisogno è che l’interfaccia utente a volte
DestroyTwitter
antipatica circa la configurazione
di questa applicazione è che
la maggior parte delle modifiche
richiede il riavvio del programma,
il che rende la fase iniziale
Scuro, pieno di stile, e con moltissime funzionalità avanzate di sperimentazione abbastanza
noiosa. A differenza di TweetDeck,
facile capire come mai facile attribuire gli occasionali intera può causare problemi. Per la modalità a colonna multipla
Twitux
Client GTK senza fronzoli
witux è uno dei primi rispondere ai vostri amici,
Choqok
Il client per KDE
uò anche darsi generale vi saranno tutti familiari
P che vi si annodi
la lingua cercando
di pronunciarne
il nome, ma Choqok
è la stella nascente dei client
se usate altre applicazioni KDE,
questo lo rende per molti aspetti
più semplice da usare
e perfettamente adatto al
desktop Linux. Anche la licenza,
di microblogging nel mondo libera, aiuta immensamente,
di Linux. Questa piccola anche se non è trasparente
meraviglia fa buon uso e aperto quando si tratta
del toolkit di KDE per di gestire i vostri dati personali.
presentarvi un’interfaccia Ad ogni modo, Choqok non ha
a linguette e multi-account bisogno di punti simpatia. Ha un
lineare e semplice, insieme di funzionalità completo,
ma con molte funzionalità, è stabile, è performante e fa
impacchettate in un design il suo lavoro. La sistemazione L’aspetto familiare dell’interfaccia migliora l’usabilità
pulito e non ingolfato. Alcune di a linguette fa risparmiare spazio
queste funzionalità non si fanno ed è più veloce di una a colonne qualcosa come Gwibber
nemmeno notare, come la
decifrazione automatica di tutti
multiple. Supporta anche
Identi.ca, gestito da pochi client
o TweetDeck. Inoltre alcune
funzionalità a volte non sono
Verdetto
quegli URL abbreviati: passate non specificamente sviluppati facilissime da usare: caricare Choqok 0.6.6
il mouse sopra uno di essi per Linux. Comunque, non sono un’immagine cliccando su un Web: http://choqok.gnufolks.org
e apparirà un tooltip con l’intero tutte rose e fiori. Anche se usare pulsante e usare la finestra di Licenza: GPL
indirizzo del sito. Choqok prende diversi account è facile grazie navigazione dei file va bene, ma Bello, configurabile e ricco
punti anche semplicemente per alle linguette, non supporta altri perché non supportare anche il di funzionalità ben sviluppate.
essere una applicazione Linux servizi, come Facebook, perciò trascinamento? C’è molto spazio
Il voto di
nativa. I suoi menu, i suoi font,
i suoi pulsanti e il comportamento
se state cercando un client più
generale dovreste considerare
per migliorare, ma già così
è un’eccellente alternativa. Linux Pro 9
TweetDeck
Il famoso campione dei client Twitter multipiattaforma
weetDeck, come mentre li inserirete. Potete dei gruppi
Mitter
Python e GTK uniscono le forze
per dominare il mondo di Twitter
Q che, similmente
a Twitux, ha l’obiettivo
di essere semplice,
leggero e facile da usare.
decodifica trasparente degli
URL abbreviati, né essi sono
cliccabili direttamente; però
cliccando su un Tweet
Anch’esso usa GTK, anche con il pulsante destro
se questa volta via Python, si ha l’opzione di seguire i link,
è un applicativo che si apriranno nel browser Mitter è abbastanza basilare: buono per seguire
multipiattaforma (installando predefinito. Per quanto riguarda ciò che succede, ma non troppo per partecipare
un’opportuna versione di la personalizzazione, beh,
Python su OS X o su Windows), non ce n’è nessuna. Il menu anche essere il client più prono
il che è un possibile motivo delle impostazioni permette a errori vari tra cui freeze, Verdetto
della sua crescente diffusione. di inserire nome utente fallimenti nei caricamenti,
Mitter attualmente evita e password, ed è tutto. Non e simili. Mitter non ha le stesse Mitter 0.4.5
le funzionalità più complesse cambierete il font, non userete credenziali di leggerezza di Web: http://mitter.googlecode.com
richieste dagli utenti di Twitter dei temi, non potrete niente. Il Twitux, anche perché servono Licenza: GPL
più accaniti, ma non che rende meno comprensibile Python e svariate altre librerie Mitter potrebbe ottenere
è comunque ridotto all’osso il motivo per cui richiede tutta per farlo funzionare. ottimi risultati con qualche
come altri client. Anche questa memoria per funzionare, Fa comunque un lavoro simile sforzo in più.
se non offre nessuna scelta anche se ciò potrebbe avere a a Twitux, con la prospettiva Il voto di
nei servizi utilizzati, supporta
l’abbreviazione degli URL,
che fare con le librerie caricate.
Purtroppo, Mitter è risultato
tuttavia che altre funzionalità
saranno aggiunte nel tempo.
Linux Pro 4
maggiore di gruppi, non potrete nuova timeline. Siccome
P (fortuna?
Magia? Buona
programmazione?)
Mixero sembra soffrire meno
dei suoi rivali dell’effetto Adobe
essere gestite separatamente
dall’applicazione, oppure
sincronizzate con il vostro
account Twitter. Twitter
attualmente permette a ogni
Twitter e Facebook multipli,
anche se diventa un po’ difficile
gestirli tutti in maniera efficace.
Una bella soluzione al crescente
ammontare del “rumore” nella
muovendoci sopra il mouse,
inoltre supporta delle notevoli
funzionalità di traduzione.
L’interfaccia, disponibile anche
in italiano, può sembrare un po’
Air. Risulta infatti più responsivo utente di avere fino a 15 liste, timeline è quella di poter aprire strana ad alcuni, e non c’è molto
e con meno imperfezioni grafiche perciò se vi serve un numero una finestra separata per una spazio per personalizzarla,
delle altre applicazioni Air che ma diventa decisamente
abbiamo testato. E il tutto senza facile da usare dopo un po’.
nemmeno dichiarare il supporto Definitivamente è tra i client
per Linux! Una visualizzazione da provare prima di prendere
a schermate affiancate, dove una decisione finale.
il controllo è effettuato attraverso
quella nel centro, è certamente
una cosa insolita per i client
Twitter, ma dopo un po’ di utilizzo
Verdetto
diventa abbastanza naturale. Mixero 0.53.4
Il lato sinistro mostra la timeline, Web: www.mixero.com
mentre il lato destro è usato Licenza: Proprietaria, gratuito
per la gestione di utenti e gruppi. Il client Twitter
Mixero implementa bene le liste, per chi ama distinguersi.
in una specie di struttura
Il voto di
a directory all’interno della
visualizzazione a linguette.
Interfaccia in italiano! Eccentrica ma molto usabile
quando si inizia a esplorarla Linux Pro 8
50 LXP90 APRILE 2010
Confronto Test
Il verdetto Voto
Choqok 9 9
on tutti usano Twitter essere in grado di comportarsi
Toolkit Adobe Air Adobe Air Adobe Air PyGTK GTK KDE Adobe Air PyGTK
Memoria 85 MB 57 MB 71 MB 23 MB 4 MB 23 MB 56 MB 17 MB
Identi.ca/Laconi.
ca
8 4 8 4 4 8 4 8
Facebook 4 8 8 4 8 4 4 8
Notifiche visuali 4 4 4 4 4 4 4 8
Notifiche audio 4 4 4 4 4 4 8 8
Dm 4 4 4 8 4 4 4 8
Accorciamento
URL
4 4 4 4 4 4 4 4
Pubblicazione
immagini
4 4 4 8 4 4 4 8
Visione immagini 4 4 4 8 4 4 4 8
Traduzioni 4 8 8 8 8 8 4 8
Gestore di foto
DigiKam
Δ VERSIONE 1.1.0 Δ WEB www.digikam.org
hiunque scatti altre cose, ad esempio gestire beta della release 1.0.0, e la
C
ed esportazione. Il plug-in Kipi
fotografie con una ora supporta una varietà i metadati introdotti con altri versione 1.1.0 ne ha introdotte
fotocamera digitale di risorse di rete e KIO-based, software (perfino Adobe un paio nuove (oltre a un gran
sa che un buon tool sia come input che come Lightroom che al momento numero di bugfix). Per
per l’organizzazione delle foto output, rendendo semplice non esiste per Linux). In DigiKam installarlo conviene sfruttare
è vitale se si vuole fare la condivisione o il recupero ci sono così tante opzioni, filtri il proprio gestore di pacchetti
qualcosa con queste immagini delle immagini dalla rete, e feature che non è possibile (se aggiornato); la compilazione
– se si prova a copiarle via Samba o SSH ad esempio. illustrarle tutte in questa pagina. del codice sorgente è sempre
semplicemente dalla scheda Ciò porta a ritrovarsi con una possibile ma non certo facile,
di memoria al desktop, Condividi le foto marea di menu e sottomenu e richiede un discreto numero
finiscono di sicuro in una La funzione di esportazione via nel programma, tanto di dipendenze. Fortunatamente
cartella sperduta con nomi e-mail è particolarmente utile, da ritrovarsi in alcuni casi il tool per la compilazione
di file assolutamente non solo perché vi consente lo schermo completamente cmake vi indica cosa manca
insignificanti. La prima di inviare in un attimo le foto ingombrato da essi. Molte in modo chiaro. Ovviamente
generazione di applicazioni a tutti i vostri amici, ma perché delle funzioni presenti erano è tutto un po’ più facile
che ha provato ad affrontare molti servizi online di hosting già disponibili con la versione se agite sotto il desktop KDE.
questo problema si era di foto includono la possibilità
concentrata sulla gestione delle di caricarle via e-mail. Anche
dozzine di formati e protocolli se molte applicazioni per le foto
differenti, e spesso chiusi, hanno strumenti di base per
coinvolti nel semplice l’editing, di solito le operazioni
trasferimento delle immagini possibili sono molto limitate.
e nella loro trasformazione DigiKam non può di certo
in qualcosa di utile. Oggigiorno competere con GIMP,
invece quello che serve un tool ma ha diversi tool specifici
che aiuti a gestire il workflow per la modifica degli scatti,
delle foto. Questo tipo ad esempio per la riduzione
di software non scarica solo del rumore che consente di
le foto dalla fotocamera: rimuovere gli artefatti dalle foto
le corregge, le ordina, consente di scarsa qualità, oppure una
di inserire tag e di creare funzione per il tone mapping
un database degli scatti, in grado di produrre una sorta
rendendone facile la ricerca. di immagini HDR (High
Uno dei miglioramenti più Dynamic Range) partendo
significativi di DigiKam riguarda dalle vostre foto. DigiKam
le procedure di importazione ha imparato a fare bene anche DigiKam può importare anche le foto in formato RAW
Drum machine
Hydrogen
Δ VERSIONE 0.9.4 Δ WEB www.hydrogen-music.org
P sintetizzatore di batteria
ha il nome del primo
elemento chimico della
tavola periodica degli elementi?
È altamente infiammabile?
che volete da qualche parte nella
timeline per inserirlo. I due menu
a cascata subito sopra quest’area
controllano la risoluzione
e la lunghezza del pattern su cui
software è nei dettagli
relativi al suono che
offre. I singoli strumenti
possono essere corretti,
modificati o sostituiti.
Contiene un singolo protone? Il state operando. Una breve nota Sono inclusi un drumkit
nome suona bene? Probabilmente per i principianti: se possibile, standard e una pseudo
non saprete mai la risposta a dovreste creare pattern tutti emulazione del TR808
queste domande, ma di sicuro se vi della stessa lunghezza, altrimenti DrumSynth. Uno
serve una drum machine, questo è potreste trovarvi in difficoltà dei problemi con
il programma che fa per voi. Dopo nel gestirli successivamente. i sintetizzatori
qualche attimo di studio si riesce Premete la barra spaziatrice di batteria è che,
ad addomesticare l’interfaccia per avviare la riproduzione del alle orecchie degli
di Hydrogen senza troppi pattern attuale; potete anche appassionati, la natura
problemi, comunque l’utente ha a mandarlo in loop quando sarete precisa, robotica, dei
disposizione un manuale multilingue soddisfatti del vostro lavoro. suoni prodotti appare
e anche un tutorial. Quest’ultimo Dopo aver creato alcuni loop L’impressionante livello di controllo senz’anima. Hydrogen
sfrutta delle schermate prese che includono diversi strumenti, degli strumenti vi permette di creare include una funzione
da un tema della GUI delle versioni potete iniziare a metterli assieme delle sonorità davvero ricche casuale che “umanizza”
precedenti, ma dovrebbe essere per creare una canzone. Questo il suono, che non solo
comunque semplice da seguire. avviene nella parte alta della della timeline così da creare la interviene sulla temporizzazione,
Di fondo, se avete un po’ di pratica finestra principale, e funziona in musica per livelli. In questo modo ma simula anche la velocità delle
con le vecchie applicazioni modo simile alla parte inferiore. è semplice generare una sonorità percussioni. Questo vuol dire
SoundTracker, dovreste essere Le righe rappresentano i pattern ed è possibile creare dei gruppi, che i colpi di batteria non sono
operativi in poco tempo. che avete creato, e cliccando in rendendo più facili i cambiamenti più tutti assolutamente identici,
un punto della timeline li attivate globali. Per ora, comunque, dando un tono più realistico
Prendi il ritmo o li disattivate. Dovete sapere nulla che non si trovi anche al prodotto finale. Come
La parte bassa dello schermo che è possibile aggiungere più di in programmi meno potenti, ma ci si aspetterebbe da un tale
mostra il pattern attuale. Vi basta un pattern nella stessa posizione dove Hydrogen fa la differenza software, il back-end supporta
molti hardware audio e anche
molto middleware, inclusi MIDI,
L’interfaccia di Hydrogen Jack, PortAudio, ALSA e OSS.
Hydrogen si collega al vostro
equipaggiamento MIDI
Sequencer senza fiatare se volete
Il sequencer è un modo veloce
per mettere assieme una traccia
comandarlo da qualche altro
di batteria. Cliccate sui quadrati strumento. Dal punto di vista
per abilitare un particolare dell’output, potete salvare le
pattern (potete riprodurne vostre musiche anche in formato
più di uno assieme). Wav. Questo è forse l’unico
aspetto poco apprezzabile
Tempo
Il controllo del tempo principale,
del software, visto che non c’è il
con il quale modificare il timing supporto per altri formati, anche
delle tracce. se è semplice trasformare un file
Wav con una delle tante utility
Strumenti audio esistenti per Linux. Anche
Gli strumenti disponibili appaio se non volete fare un remake
qui – oltre a quelli di partenza dei successi dei New Order,
potete aggiungerne altri.
dovreste comunque provare
questo software anche solo
Editor dei pattern
per ascoltare le tracce demo
Modificare un pattern cliccando Editor degli strumenti Mixer
nel posto giusto e avviate la Potete agire sui singoli strumenti direttamente Il desk per il mixer simulato è perfetto per incluse e far godere le vostre
riproduzione premendo lo Spazio. con il mouse, agendo sui valori ADSR. aggiustare i volumi degli strumenti in uso. orecchie grazie alle meraviglie
prodotte dal Pinguino. LXP
Modificare i file
di sistema
Ecco come operare al meglio con i file di sistema FACILE
Root, su e sudo
La maggior parte dei sistemi Linux hanno differenti
classi di utenti, e il tipo di utente che si è determina
ciò che si può fare al vostro computer. Ad esempio, un
utente normale può aggiungere, modificare e rimuovere
file all’interno della sua home directory, ma al di fuori
di questa posizione è limitato negli interventi che può
eseguire sui file. Allo scopo di modificare qualunque file
al di fuori della vostra home dovete acquisire i privilegi di
amministratore (root o superuser). Ci sono diversi modi
per ottenerli. La prima opzione è effettuare il logout e
Prima che il mondo informatico diventasse poi rifare il login usando il nome utente root e la relativa
a finestre, gli utenti dei computer dovevano password. Questo è il metodo più brutale e rappresenta
configurare praticamente ogni aspetto decisamente un pericolo di sicurezza, visto che potreste
del sistema usando dei semplici file di testo. mandare in crash il sistema cancellando o spostando
file necessari per Linux, senza alcun impedimento. Se
siete più che sicuri di quello che state per fare e dovete
modificare una gran numero di file di sistema, questa
è una buona strada, altrimenti dovreste evitarla come
la peste perché il rischio di fare danni è molto alto.
Il comando su (aprite un terminale, digitate su, premete
Invio e inserite la password di root) vi assegna i privilegi
di root per la durata di una sessione di terminale, quindi
ogni comando che inserirete avrà i privilegi più alti.
Ad esempio, digitando nautilus verrà lanciato il file
manager di GNOME con i diritti di superutente attivati,
il che vuol dire che potete aprire o cancellare qualunque
cosa nel filesystem. Inoltre, se avviate dei programmi
da questa istanza di Nautilus, anche questi avranno
i privilegi di root. Anche in questo caso la possibilità
di fare danni è alta, quindi agite con cautela. La terza
opzione, sudo, fornisce un insieme limitato di privilegi
di root e l’amministratore di sistema (o chi sviluppa
la distro) può restringere il suo campo d’azione.
Questo comando non è attivo per tutta la durata
della sessione di terminale, ma solo per il tempo
Eseguendo Nautilus usando sudo potrete modificare necessario all’applicazione o al servizio che dovete
i file di sistema – fate attenzione!!! avviare. Ad esempio, digitate sudo nautilus
per aprire il file manager come superutente. o il cambiamento delle impostazioni di sistema.
Quando usate sudo vi viene chiesta la vostra password: Non tutte le distro sono create con le stesse
in questo modo acquisite maggiori privilegi, ma quando impostazioni. Ad esempio, se state usando Ubuntu
chiudete il file manager (o in generale dopo un certo l’utente root non è proprio abilitato, il che vuol dire
periodo) la sessione come root termina. Questo che i primi due metodi spiegati non sono direttamente
è il modo di default impiegato da Ubuntu e Mac OS X accessibili. Altre distro possono non attivare sudo,
per controllare l’accesso a opzioni come l’aggiunta lasciandovi libere solo le prime due vie, a meno
e rimozione di software, la creazione di utenti che non definiate voi stessi la sua attivazione.
Non toccatelo!!!
Ci sono dei simpatici burloni in giro che potrebbero seconda parte del comando (nell’esempio /dev/sda).
suggerirvi di usare i comandi seguenti. Non fatelo, Δ un_comando > /dev/sda Questo comando
perché la perdita dei dati sarebbe garantita! scriverà dei dati grezzi sul dispositivo a blocchi indicato
Δ rm -rf / Questo comando cancella tutti i file nella radice dalla seconda parte del comando e molto
del sistema, uccidendo il vostro PC. probabilmente distruggerà i dati presenti sul disco.
Δ mv /home/[nomeutente]/* /dev/null Questo comando Δ chmod -R 777 In questo modo si rendono
sposterà il contenuto della vostra home directory tutti i file leggibili, scrivibili ed eseguibili,
in una cartella che non esiste. Risultato: perderete tutti i vostri file. il che vuol dire che alcuni file di sistema
Δ mkfs.ext3 /dev/sda Così si riformatta il disco indicato dalla potrebbero non volersi più avviare.
Progettare
prodotti per geek INTERMEDIO
œ
(Livello D Scala livello) a 1980x1980. Attivate Fate click una volta al centro della finestra immagine.
per questo livello la casella Blocca trasparenza a nella finestra Livelli. Questo effetto è destinato a essere molto leggero sullo sfondo.
Facciamo i conti
con /proc e /sysfs
Pensavate che “everything is a file” (tutto è un file) fosse un vecchio detto senza senso
di UNIX? Rifletteteci dopo aver letto questo articolo che vi introdurrà nel mondo
dei filesystem virtuali che permettono ai vostri sistemi di funzionare
La directory /proc (un modo contratto per è garantita in quanto queste utility sono in grado di
intendere il filesystem dei processi) costituisce operare interamente in userspace interagendo con /proc,
fondamentalmente un mito: in realtà infatti piuttosto che lavorare in kernel space. Nelle vecchie
non esiste da nessuna parte. Si tratta di un filesystem versioni di UNIX (come anche in BSD e Solaris), /proc è
virtuale generato al boot e aggiornato in seguito strettamente un legato ai processi, in Linux invece è stato
per mezzo dell’interazione con il kernel. Non utilizza esteso anche ai dati che non fanno parte dei processi,
spazio su disco (perché, come abbiamo detto, non esiste rendendolo estremamente flessibile. Questo significa che
veramente!) ma utilizza solamente una piccola quantità in alcuni casi è possibile utilizzarlo sia per apportare
di memoria. Ogni volta che viene richiesta la lettura cambiamenti che per leggere i dati. Verrà infatti spiegato
di un file, le informazioni vengono recuperate in seguito che è possibile effettuare modifiche sui file
da /proc che interagisce direttamente con il Kernel di /proc tali che permettano di cambiare al volo
per poi far ritornare le informazioni a voi sotto forma di il comportamento del sistema, tuttavia non è possibile
file. Questo lo rende un potente mezzo di comunicazione cambiare i dati dei processi semplicemente modificando
tra le diverse parti del sistema, oltre che consentirvi di file e directory all’interno di questo filesystem virtuale.
controllare il vostro lavoro seguendo passo passo ciò che Molto probabilmente questo è proprio il metodo migliore,
succede all’interno del PC. È infatti largamente utilizzato tramite il quale si ottengono oltretutto i migliori risultati.
da moltissime utility, inclusa la versione GNU di ps con Vi consente infatti, utilizzando le componenti modificabili
il vantaggio di lavorare in totale sicurezza. Tale sicurezza di /proc, di effettuare cambiamenti al volo sul vostro sistema.
/proc e i processi
Esistono sostanzialmente due sezioni da tener presenti in questione: non abbiate paura se a volte vedete anche
all’interno di /proc: i dati dei processi e i dati del sistema. del codice binario insieme al testo... molto spesso si tratta
Per iniziare a osservare come /proc gestisce i processi di file di testo facilmente leggibili. Queste informazioni
iniziate con il digitare su un terminale ls /proc. Vedrete potranno esservi utili nel caso abbiate intenzione di fare
un lungo elenco numerato di directory: questi sono il debug di qualche programma che presenta
i vostri processi, una directory per ogni id di ogni dei problemi in fase di avvio: potrete controllare
processo. Guardate la vostra lista dei processi (utilizzando se il percorso del comando è stato specificato
ps -A) e scegliete un processo. Qualora non siate loggati correttamente o se eventualmente c’è qualche cosa
come root, o non stiate utilizzando sudo, sarete in grado di strano nella linea di comando. Questo potrebbe essere
sì di visualizzare tutte le directory di tutti i processi il caso di un qualche processo avviato da script all’interno
ma non potrete vederne il contenuto; in questo caso di /etc/init.d/ o /etc/rc.d/. Per esempio, una delle nostre
potete benissimo utilizzare ps -u per visualizzare macchine su cui gira Nagios 3, presenta in /proc/2607/
solamente i vostri processi e infine selezionarne cmdline questa riga (i caratteri particolari sono
uno. Tuttavia, se non avete accesso a tutti i file a causa di l’interpretazione in ASCII delle diverse parti binarie):
un errore sui permessi, selezionate un processo diverso /usr/sbin/nagios3^@-d^@/etc/nagios3/nagios.cfg^@
e riprovate. Il processo che useremo da esempio è: Come potete vedere, Nagios sta caricando il file
juliet 25175 0.0 0.0 18044 1552 pts/31 Ss di configurazione /etc/nagios3/nagios.cfg che potrebbe
Jul14 0:00 /bin/bash fornirvi utili informazioni qualora abbiate problemi
che corrisponde alla directory /proc/25175/. Adesso di configurazione. Il file environ, analogamente, fornisce
utilizzate il comando ls -l per vedere il contenuto della le variabili d’ambiente con cui sta girando il processo
directory relativa (il flag -l vi darà alcune informazioni (si tratta nuovamente di un file testo/binario, che tuttavia
accessorie, come il target dei link, che spesso risultano è abbastanza facilmente leggibile a occhio) ed è
molto utili). Il file cmdline vi fornirà informazioni circa particolarmente utile per effettuare tutte le diagnosi
INTERMEDIO il comando che avete usato per lanciare il processo del caso. Per osservare alcune differenze che potrebbe
Linux (in questo caso potete controllare il file /etc/lilo/lilo. Il lock ADVISORY (differentemente dal lock MANDATORY)
conff per trovare la configurazione corrispondente, oppure, non impedisce agli altri processi di accedere ai dati,
per chi utilizza grub, /boot/grub/menu.lst) con la partizione mostrando oltretutto se il lock è stato impostato nell’accesso
iniziale di root montata inizialmente in sola lettura (ro, come in lettura o scrittura. La quinta colonna rappresenta il process
è normale che sia). root=302 indica invece che la partizione ID del processo che detiene il lock, e la colonna successiva
del root ha major number 3 e minor number 2. Per trovare il file ID, nella forma di major-device:minor-device:inode.
a quale partizione tali parametri corrispondono, potete Le colonne finali mostrano l’inizio e la fine della sezione
tranquillamente vedere il contenuto di partitions: di lock: quindi nelle prime quattro linee è preso in esame il file
major minor #blocks name per intero (da 0 alla fine dell’archivio). Quanto detto adesso
3 0 39082680 hda è sicuramente un concetto più teorico che pratico, potrebbe
3 1 9767488 hda1 risultare però utile qualora stiate, per esempio, tentando
3 2 14651280 hda2 di recuperare dei file cancellati a partire dal numero di inode.
3 3 14161297 hda3 Per cercare quali filesystem il vostro sistema è in grado di
3 4 498015 hda4 supportare, controllate /proc/filesystemss che sarà in grado
Da qui si comprende che la partizione di root è hda2 di elencarvi i filesystem disponibili e li evidenzierà con nodev
(anche dff potrà fornirvi tale informazione). L’ultima opzione nel caso siano virtuali o di rete. Questo file è utile se state
in /proc/cmdline dice al kernel di utilizzare /dev/hdc come tentando di collegare dischi provenienti da altri sistemi (locali
dispositivo IDE-SCSI. La directory acpi// contiene tutte o remoti) e intendete sapere rapidamente se saranno
le informazioni di ACPI (Advanced Configuration and Power in grado di funzionare senza dover ricompilare il kernel.
Interface). Quello che contiene al suo interno dipenderà Il file kcoree fornisce ulteriori informazioni di memoria.
ovviamente dal supporto hardware sulla macchina in Purtroppo non è parsabile a occhio, tuttavia risulta utile
questione. acpi/thermal_zone// può contenere informazioni se abbinato a dei debugger come GDB. Il file /proc/kmsg
provenienti dai sensori di temperatura interni se esiste un si occupa dei messaggi del kernel. Se provate infatti
eventuale supporto sul vostro calcolatore (sfortunatamente ad accedere a questo file loggati come root, potrete
tali dati non sono presenti sul nostro desktop!). Esiste inoltre dare un’occhiata alle comunicazioni avvenute con il kernel.
un file chiamato apm che vi consentirà di accedere alle Ovviamente, se non ci sono state molte attività avvenute
informazioni di Advanced Power Management, sempre che con quest’ultimo dal boot del PC, il file risulterà vuoto.
il vostro sistema le abbia abilitate (è il tipico caso dei portatili).
Anche in questo caso è proprio da qui che apm -v v prende Cambiare la configurazione di rete
le informazioni necessarie (metodo estremamente utile La directory net// offre informazioni di basso livello ai vari
per monitorare lo stato della batteria qualora non abbiate comandi per monitorare il traffico di rete, come il comando
installato un ambiente grafico sul vostro portatile). route. Nella maggior parte dei casi è preferibile ottenere
queste informazioni dagli stessi comandi piuttosto che
Blocchi utilizzare /proc/net. Sebbene, infatti, i dati contenuti all’interno
Il file lockss mostra i file che sono attualmente bloccati della stessa directory net/ siano file di testo, il loro contenuto
dal sistema (usualmente in scrittura). Qui di seguito risulta molto prolisso anche se spesso è facile capire a cosa
alcuni esempi: si riferisca ciascuna colonna, grazie anche a comode
1: FLOCK ADVISORY WRITE 4056 03:02:588739 0 EOF intestazioni. La directory /proc/sys// è in genere molto utile
2: FLOCK ADVISORY WRITE 2747 03:02:596797 0 EOF durante la configurazione di una rete poiché proprio a questa
3: POSIX ADVISORY WRITE 2728 03:02:596796 0 EOF directory corrispondono le variabili del kernel. Come detto
4: POSIX ADVISORY WRITE 2705 03:02:642377 0 EOF in precedenza, il metodo di comunicazione utilizzato da /proc
5: POSIX ADVISORY READ 2507 03:02:572375 4 4 agisce in entrambi i modi (processi e sistema): così come
I lock marcati come FLOCK K vengono generati dalla system è possibile accedere alle informazioni, potete anche
call flock. I lock POSIX dalla nuova system call lockf. cambiarle editando dei file, sempre che i permessi su tali file
lo permettano. /proc/sys è la directory principale sulla quale
Questa immagine potete applicare quanto appena detto. Per esempio, date
piena di fascino uno sguardo a /proc/sys/net/ipv4, qui dentro risiedono sono
e con informazioni alcuni valori di rete che volendo potete editare (se
abbastanza
ovviamente possedete i privilegi di root). Date un’occhiata
sconcertanti,
mostra il contenuto anche a /proc/sys/net/ipv4/tcp_keepalive_time.
di /proc/vmallocinfo Questo file imposta il tempo (in secondi) che le routine di TCP
impiegano per inviare il primo keepalive probe. Il default
è 7200 secondi (2 ore), se volete che il keepalive venga
attivato prima, basterà che editiate questo file di conseguenza.
L’intervallo con il quale vengono inviati i pacchetti di keepalive
dopo il primo è gestito da /proc/sys/net/tcp_keepalive_
intvl (75 secondi di default), e il numero di keepalive scartati
perché la connessione venga marcata come inattiva è settato
in /proc/sys/net/ipv4/tcp_keepalive_probess (questo è 9
di default). Qualora abbiate una connessione un po’ instabile,
quest’ultimo valore potreste incrementarlo fino a 15 o 20:
echo 20 > /proc/sys/net/ipv4/tcp_keepalive_probes
(ovviamente come root). Notate che se state cambiando
le impostazioni in questo modo, non dovete utilizzare
un editor, basterà il semplice il comando echo o della shell, cambiato in questo modo. /prc/sys/kernel/ctrl-alt-del
come mostrato sopra. Questo eviterà che il kernel vi cambi
il valore al volo mentre lo state editando, cosa che potrebbe
vi permette di abilitare la risposta alla combinazione di tasti
Ctrl+Alt+Canc. Il valore 1 imposta uno shutdown sicuro
Tip
accadere nel momento in cui aprite il file in lettura, (analogo a uno shutdown -h now), mentre il valore
Potete utilizzare sysctl
considerate infatti che questi file in realtà non esistono 0 imposta uno shutdown immediato (analogo a uno per manipolare
ma servono solo a leggere o scrivere valori sul kernel. spegnimento “brutale” del PC). Ovviamente il valore 1 i parametri del kernel.
Allo stesso modo, potete utilizzare catt (concatenandolo è sicuramente preferibile (dopo tutto, se avete veramente Per ottenere
con lesss se necessario) per vedere il contenuto di questi file. bisogno di uno shutdown immediato, tanto vale che la lista completa
Per abilitare l’IP forwarding, cambiate il valore in /proc/sys/ stacchiate l’alimentazione). Potete usare /proc/sys/kernel/ dei parametri, digitate
sysctl -a | less.
net/ipv4/ip_forward a 1 (oppure a zero per disabilitarlo). hostname e per configurare il vostro hostname di rete,
echo 1 > /proc/sys/net/ipv4/ip_forward state però attenti: nel caso utilizzato un DHCP, potreste
Ci sono molti altri file con i quali potete fare esperimenti. avere un conflitto!
In sostanza, se un file ha l’attributo di scrittura settato, potete
cambiarlo, ma state attenti che potreste compromettere Riconoscimento dei device
il vostro sistema facendo ciò. La buona notizia è che tutti /proc/sys/ non è il solo posto in cui potete editare i parametri
i cambiamenti fatti utilizzando questo metodo saranno del kernel. Un altro posto utile a tale scopo è /proc/scsi/scsi
azzerati al prossimo riavvio. Qualora vogliate rendere che vi permette di configurare e gestire dispositivi SCSI
permanenti i cambiamenti, potete utilizzare sysctl. hot-swap. Per fare ciò avete bisogno di conoscere
È in genere però buona norma utilizzare il metodo diretto (la alcune informazioni:
scrittura su /proc/sys prima di rendere effettivi i cambiamenti). Δ l’ID dell’adattatore (il primo è 0);
Ci sono ovviamente molte altre variabili dentro /proc/sys che Δ il canale SCSI utilizzato (il primo è 0);
possono essere utilizzate. Cambiando ad esempio /proc/sys/ Δ l’ID SCSI del device;
fs/file-max x potete modificare il numero di descrittori Δ il LUN number (il primo è 0).
di file aperti disponibili sul sistema. Potrebbe infatti capitare Una volta a conoscenza di queste informazioni
di vedere su sistemi molto utilizzati errori del tipo potete utilizzare
can’t open file: maximum number of open files echo “scsi add-single-device a b c d” > /proc/scsi/scsi
has been reached per aggiungere il vostro disco al sistema. Dopo di che potete
In questo caso sarà conveniente incrementare tale numero montare il filesystem, formattarlo e farci sostanzialmente tutto
(4096 di default). Usualmente però il valore di default ciò che volete. Utilizzate fdisk -l se desiderate conoscere di
è adeguato per quasi tutti i sistemi per cui vi consigliamo quale device si tratti. /proc racchiude tantissime informazioni
vivamente di cambiarlo solo qualora vi si presenti il tipo e ovviamente in questo articolo non abbiamo potuto coprire
di errore appena descritto. Potete fare la stessa cosa anche tutto. Vi invitiamo tuttavia, per maggiori chiarimenti, a dare
per gli inode con /proc/sys/fs/inode-max, sebbene il numero un’occhiata al manuale di proc per capire fino a fondo cosa
totale degli inode disponibili sul sistema non possa essere contiene, cosa è possibile modificare e fino a che punto.
sysfs
Fino al kernel 2.6.x, le informazioni sui device erano Questo
tutte contenute anche in procfs. Tuttavia, dal ciclo è il contenuto
di sviluppo del kernel 2.5, queste informazioni sono di sysfs su una tipica
macchina desktop
state spostate in sysfs. Quest’ultimo è anch’esso
un filesystem virtuale e permette di esportare device
e informazioni sui driver dal kernel space allo user
space. Ogni qual volta un nuovo driver o dispositivo
viene aggiunto, automaticamente viene creata una
nuova directory dentro /sys. Ad esempio, la directory
/sys/devices/ è organizzata per rispecchiare il layout
fisico dei vari dispositivi in modo tale da poter vedere
i legami tra padri e figli. /sys/bus ha una struttura simile
che termina con link simbolici (che mostrano a quali
particolari bus i singoli device appartengono). Un altro
modo per ottenere informazioni sui dispositivi in uso Altre informazioni
è tramite /sys/class/ (che poi è forse l’approccio più
utile e comprensibile). Alcuni attributi contenuti al suo Sfortunatamente la documentazione di /proc può essere
interno sono anche editabili, per esempio la rotazione un po’ carente in alcuni casi. Il nostro consiglio è quello
della console del framebuffer è regolata da /sys/class/ di partire prima dal manuale, per poi cercare in /usr/src/linux/
graphics/fbcon/rotate: se impostata a 2 anziché Documentation/. Alternativamente, potete cercare
a 0, la console risulterà capovolta (ovviamente questo direttamente dentro /proc o su Google utilizzando come campo
di ricerca il nome del file o della directory che state cercando.
funzionerà solo se tale impostazione è supportato
Esiste anche un utile articolo a riguardo su http://tinyurl.com/
del vostro kernel). Non tutti i device posseggono c6yhwa che si concentra su cosa è possibile cambiare
attributi modificabili, vi consigliamo tuttavia di farvi al volo da dentro /proc. Infine c’è sempre il validissimo supporto
un giro all’interno della directory /sys o di ottenere di www.kernel.org per tutto ciò che concerne il kernel.
maggiore informazione da www.kernel.org. LXP
DIGITALE
WINDOWS XP - NO HACKER! € 9,90
WEB 2.0 MARKETING E PUBBLICITÀT € 9,90
JAVASCRIPT - CREARE PAGINE WEB INTERATTIVE € 12,90
VISUAL BASIC 2005 E IL FRAMEWORK .NET 2.0 € 12,90
IL FOTORITOCCO € 12,00
GRATUITE!
DIGITALE DIVX E XVID SENZA SEGRETI € 8,90
e junk m PROJECT MANAGEMENT € 9,90
€ 9,9 WEB 2.0 AJAX € 12,90
IL REGISTRO DI WINDOWS XP € 8,90
WINDOWS VISTA- IL REGISTRO DI SISTEMA € 8,50
PER L’AMMINISTRATORE DI RETI WINDOW VISTA - IMPOSTAZIONI TRUCCHI E SEGRETI € 8,50
WINDOWS VISTA - GUIDA BLU € 12,90
WINDOWS XP - 500 TRUCCHI € 9,90
ADOBE PHOTOSHOP RITRATTI PERFETTI € 12,00
LE INQUADRATURE € 9,90
RECUPERA E SALVA I FILE PERSI O CANCELLATI € 8,50
Totale quantità Totale Ordine
SCELGO IL SEGUENTE METODO DI SPEDIZIONE:
Indica con una ˝ la forma di spedizione desiderata
Spedizione tramite posta tradizionale al costo aggiuntivo di € 2,90
Spedizione tramite Corriere Espresso al costo aggiuntivo di € 7,00
TOTALE COMPLESSIVO €
NOME
COGNOME
VIA
N° C.A.P. PROV.
CITTÀ
T
TEL.
E-MAIL
Δ Carta di Credito
N.
(Per favore riportare il numero della Carta indicandone tutte le cifre)
NAVIGA SICURO WINDOWS VISTA Scad. CVV
IN INTERNET IL REGISTRO DI SISTEMA (Codice
d di tre cifre che appare sul retro della carta di credito)
Informativa e Consenso in materia di trattamento dei dati personali - (Codice Privacy d.lgs. 196/03) Sprea Editori S.p.A. Socio Unico
Medi & Son S.r.l. con sede in Cernusco sul Naviglio (MI), via Torino, 51, è il Titolare del trattamento dei dati personali che vengono
raccolti, trattati e conservati ex d.lgs. 196/03. Gli stessi potranno essere comunicati e/o trattati da Società esterne Incaricate. Ai sensi
degli artt. 7 e ss. si potrà richiedere la modifica, la correzione e/o la cancellazione dei dati, ovvero l’esercizio di tutti i diritti previsti per
Legge. La sottoscrizione del presente modulo deve intendersi quale presa visione, nel colophon della rivista, dell’Informativa com-
pleta ex art. 13 d.lgs. 196/03, nonché consenso espresso al trattamento ex art. 23 d.lgs. 196/03 in favore dell’Azienda.
PHP
Sviluppo di una Web Application
L’ambiente PRO
dentro il
di sviluppo Codice d
’esempio
DIFFICILE
Listato 1
<!DOCTYPE
!DOCTYPE html h l PUBLIC “-//W3C//DTD
“ //W3C//DTD XHTML 1 1.0
0
Strict//EN” “http://www.w3.org/TR/xhtml1/DTD/xhtml1
Strict//EN http //www.w3.org/TR/xhtml1/DTD/xhtml1
-strict.dtd”><html xmlns=“http://www.w3.org/1999/xhtml”>
<head>
h d
<meta
meta http-equiv=“content-type”
h equiv
http i “content type” content=“text/html;
content “text/html;
/h l
charset=iso-8859-1”>
<title>Esempio
il E i di AApplicazione
li i ZZend
d FFramework</title>
k /il
<link
li k href=“/zf/css/stile.css”
link h
hreff “//zf/css/stile.css
f/ / il ” media=“screen”
media
di “screen”
rel=“stylesheet” type=“text/css” />
</head>
/h d
<body>
b d 6 Ma guarda che bella applicazione!
<div
di id
id=“testa”>
“ ”
#
#...qui
i cii va l’i
l’intestazione
i d
della
ll pagina...#
i #
Listato 2
<div
di id
id=“menu”>
“ ”
<?php
? h /* application/layouts/scripts/layout.phtml
li i /l / i /l h l
#
#...qui
i lle vocii d
dell menu principale...#
i i l #
Q
Questa riga
i scrive
i il d
doctype nell’html
ll’h l ddella
ll pagina
i */ ??>
</div>
/di
<?php
? h echo
h $$this->doctype()
hi d () ??>
</div>
/di
<html
h l xmlns=“http://www.w3.org/1999/xhtml”>
l “h // 3 /1999/ h l”
<head>
h d
<div
di id
id=“lato”>
“l ”
<meta http-equiv=“content-type”
h i “ ” content=“text/html;
“ /h l charset=iso-8859-1”>
h i 8859 1”
#
#...qui
i lle vocii d
dell menu llaterale...#
l #
<title>Esempio
il E i di A
Applicazione
li i ZZendd FFramework</title>
k /il
<?php
? h echoh $
$this->headLink()->appendStylesheet(‘/zf/css/stile.css’)
hi h dLi k() dS l h (‘/ f/ / il ’) ??>
</div>
/di
</head>
/h d
<body>
b d
<div
di id
id=“main”>
“ i ”
# quii il contenuto dell’area
#....e d
dellll’area
<div
di id id=“testa”>
“ ”
di lavoro...#
<img
i width=’200’
id h ’200’ src=“/img/phppreno.gif”>
“/i / h if”
</div>
/di
<div
di id id=“menu”>
“ ”
<?php
? h
</body>
/b d
$
$sss=new Zend_Session_Namespace(“globale”);
Z d S i N (“ l b l ”)
</html>
/h l
if (i(isset($sss->user))
($ ))
{?>
{?
<aa href
h f “ ?php
href=“<?php
? h echo h $ $this->url(array(‘controller’
$this
hi url(array(
l( (‘controller
ll ’ => ‘‘prenotazioni’,’action’
prenotazioni
i i’,’action
i ’ =>
di ognuna un file index.phtml per ora vuoto. ‘index’),’default’,true) ?>”>Prenotazioni</a>
La configurazione a cui dovreste arrivare è quella <aa href
h f “ ??php
href=“<?php h echoh $ $this->url(array(‘controller’
$this
hi url(array(
l( (‘controller
ll ’ => ‘‘pagamenti’,’action’
pagamentii’,’action
i ’ =>
‘index’),’default’,true) ?>”>Pagamenti</a>
di Fig.5. A questo punto inserite il codice del Listato 4
<aa href
h f “ ?php
href=“<?php
? h echo h $ $this->url(array(‘controller’
$this
hi url(array(
l( (‘controller
ll ’ => ‘‘configurazioni’,’action’
confifigurazioni
i i’,’action
i ’ =>
nella IndexAction di IndexController e il codice ‘index’),’default’,true) ?>”>Configurazioni</a>
del Listato 5 nella vista a esso associata, views/scripts/ <aa href
h f “ ?php
href=“<?php
? h echo h $ $this->url(array(‘controller’
$this
hi url(array(
l( (‘controller
ll ’ => ‘i‘index’,’action’
index
d ’,’action
i ’ => ‘l‘logout’),
logout’)),
index/index.phtml. Cosa avete fatto? Avete gestito ’default’,true) ?>”>Esci</a>
il primissimo evento della vostra applicazione, ovvero <?php
? h }
il momento in cui l’utente si collega. Infatti collegandosi ??>
</div>
/di
a http://localhost/zf automaticamente viene invocata
</div>
/di
la IndexAction dell’IndexController nella quale:
Δ definite un testo con nome programma
e versione usando la variabile APPLICATION_VER
definita in index.php; Δ nel caso in cui il form esista, segno che non è stata
Δ definite una variabile $sss come oggetto effettuata la procedura di login, viene visualizzata
Zend_Session_Namespace utile ad aprire uno spazio nell’area main un messaggio di avviso.
in sessione e memorizzare variabili che dovranno essere In Fig.6 vedete il risultato delle vostre fatiche mente
condivise tra le varie componenti dell’applicazione; in allegato nel DVD trovate una cartella con tutta
Δ se in questo spazio è già stata impostata la variabile la struttura di cartelle e file visti.
user significa che l’utente ha già eseguito la procedura
di login e quindi al testo viene aggiunto il nome utente Conclusioni
e un collegamento alla procedura di logout; Dopo un’attenta analisi del problema, lo sviluppo
diversamente viene creato un form di login composto di una base dati opportuna e alcune riflessioni sulle soluzioni
da due campi (utente e password) e un pulsante di tecniche da adottare, siete arrivati al fatidico momento dello
submit che rimanda all’action valida di IndexController; sviluppo. Da questo momento dovrete macinare codice
Δ sia la variabile $testo che l’eventuale $form su codice per programmare tutti i controller e le action
vengono esplicitamente passate alla vista
la quale a sua volta le visualizza nell’area a lato;
della Zend Application. Appuntamento al mese prossimo
per una puntata tutta PHP e Zend Framework! LXP œ
LXP90 APRILE 2010 71
Tutorial PHP
Listato 3
body
b d { width:100%;
id h 100% content: url(img/as.png)
l(i / )}
width:
id h 99%
99%; margin:10px;
i 10
color:#FFFF00;
l #FFFF00 text-decoration:
d i none; } #main::after
# i f {
f
font-family:
f il verdana,
d arial,
i l hhelvetica,
l i sans-serif;
if di l bl
display: block;
k
b k
background-color:#001100;
d l #001100 #lato a:active{
#l i { li h i h 0
line-height: 0;
f
font-size:
i 100%
100%; } color:#00FF00;
l #00FF00 text-align:left;
li l f
text-decoration:
d i none; } b k
background: d url(img/bd.png)
l(i /bd ) bottom
b
#testa {
# right no-repeat;
width:100%;
id h 100% #lato a:hover{
#l h { content: url(img/bs.png)
l(i /b )}
color:#FFFF00;
l #FFFF00 color:#FFFFFF;
l #FFFFFF
b k
background-color:#00BB00;
d l #00BB00 } b k
background-color:#009900;
d l #009900
#main
# i a{{
text-decoration:
d i none;
color:#FFFF00;
l #FFFF00
#menu {
# f
font-weight:bold;
i h b ld }
width:80%;
id h 80% b d 1 groove;
border:1px
color:#FFFF00;
l #FFFF00 fform llabel
b l{ width:100%;
id h 100%
b k
background-color:#00AA00;
d l #00AA00 float:left;
l f margin:10px;
i 10
padding:10px;
ddi 10 margin-left:15%;
i l f 15% text-decoration:
d i none; }
text-indent:12%;
i d 12% } width:100px;
id h 100 }
#main
# i a:active{
i {
#menu a{{
# fform { color:#00FF00;
l #00FF00
color:#FFFF00;
l #FFFF00 } text-align:left;
li l f text-decoration:
d i none; }
li h i h 200% }
line-height:200%;
#menu a:active{
# i { #main
# i a:hover{
h {
color:#00FF00;
l #00FF00 } fform iinput { color:#FFFFFF;
l #FFFFFF
b k
background-color:#BBFFBB;
d l #BBFFBB } b k
background-color:#009900;
d l #009900
#menu a:hover{
# h { text-decoration:
d i none;
color:#FFFFFF;
l #FFFFFF f
form select
l { f
font-weight:bold;
i h b ld }
b k
background-color:#009900;
d l #009900 b k
background-color:#BBFFBB;
d l #BBFFBB }
padding:13px;
ddi 13 } #main
# i tr{{
#main
# i { b k
background-color:#009900;
d l #009900 }
#lato {
#l b k
background-color:#007700;
d l #007700
float:left;
l f color:#FFFFFF;
l #FFFFFF
#main
# i th{
h{
width:12%;
id h 12% text-align:center;
li
b k
background-color:#005500;
d l #005500 }
min-width:150px;
i id h 150 margin-left:15%;
i l f 15%
h i h 500
height:500px; margin-top:5%;
i 5%
b k
background-color:#00AA00;
d l #00AA00 margin-right:5%;
i i h 5% #lista iinput {
#li
b d
border-style:double;
l d bl margin-bottom:5%;
i b 5% } b k
background-color:#22AA22;
d l #22AA22
b d
border-color:#FFFF00;
l #FFFF00 b d
border-style:hidden;
l hidd }
f
font-size:75%;
i 75% } #main::before
# i b f {
di l bl
display: block;
k #lista fform {
#li
#lato a{{
#l li h i h 0
line-height: 0; text-align:left;
li l f
color:#FFFF00;
l #FFFF00 text-align:left;
li l f /*li h i h 100% */
/*line-height:100%;*/
b d 1 groove;
border:1px b k
background: d url(img/ad.png)
l(i / d ) top right
i h no-repeat; b k
background-color:#33AA33;
d l #33AA33 }
Listato 4 Listato 5
public
bli ffunction
i iindexAction()
d A i () creata una form
f <div
di id
id=“lato”>
“l ”
{ // di iinserimento
//---di i credenziali
d i li d’d’accesso.
// S i
//---Stringa d
da visualizzare
i li $f
$form= new Zend_Form();
Z d F ()
nella
ll colonna
l di SX con versione
i applicativo
li i $f
$form->setMethod(‘post’);
M h d(‘ ’)
<?php
? h
$
$testo=“PHPPreno
$testo “PHPP
PHPPreno <br/>Vers
<br/>Vers.
b/ V $f
$form->setAction(‘/zf/index/valida’);
A i (‘/ f/i d / lid ’)
echo h $$this->testo;
hi
”.APPLICATION_VER.“<br/><br/>”; $f
$form->addElement(‘text’,
ddEl (‘ ’ ‘‘user’,’
array(‘label’
(‘l b l’ => ‘Utente:’,
‘U ’ if (i(isset($this->form))
($ hi f ))
////---Inizializza
I i i li S
Inizializza Sessione
i globale
l b l ddell’applicazione
dellll’applicazione.
li i ‘
‘required’
i d’ => true, {
Verrà riproposta in quasi tutte le action ‘ lid
‘validators’ ’ => array(‘alnum’),
(‘ l ’) echo h $$this->form;
hi f
$ = new Zend_Session_Namespace(“globale”);
$sss Z d S i N (“ l b l ”) ‘i ’
‘size’ => 10,
10 }
‘fillters’’ => array(‘StringTrim’)));
‘fi (‘S i T i ’))) ??>
if (i(isset($sss->user))
($ )) $f
$form->addElement(‘password’,
ddEl (‘ d’ ‘‘password’, d’ </div>
/di
{ array(‘label’
(‘l b l’ => ‘Password:’,
‘P d’
////---Se
S l’l’utente
Se l utente è giàià impostato
i aggiorna
i ‘
‘required’
i d’ => true,
stringa da visualizzare con nome utente ‘i ’
‘size’ => 10,
10 <div
di id
id=“main”>
“ i ”
$
$testo=$testo
$testo $testo.
$ “<br/><br/>User:
“<br/><br/>User:
b/ b/ U ”. ‘ lid
‘validators’ ’ => array(‘alnum’),
(‘ l ’) <?php
? h if (i(isset($this->form))
($ hi f ))
$sss->user
$sss >user.“<br/><br/><a
<br/><br/><a href=’“
href .$this
$this->> ‘fillters’’ => array(‘StringTrim’)));
‘fi (‘S i T i ’)))
{
view->url(array(‘controller’
view >url(array( controller => > ‘index’,’action’=>
index , action > $f
$form
$form->addElement(‘submit’,’login’,array(‘label’
>addElement(
ddEl (‘submit
b i ’,’llogin
i ’,array((‘llabel
b l’
echo
h “E’ E necessarioi effettuare
ff il LOGIN
’logout’),’default’,true).”’>Logout</a>”; =>’LOGIN’));
per utilizzare il software”;
} ////---Passa
P lla fform alla
ll view
i }?>
}?
else
l $ hi
$this->view->form=$form;
i f $f
{ }
</div>
/di
// Se
//---Se
S l’l’utente
l utente non è impostato
i significa
signifi
i ifica ////---Passa
P il testo alla
ll view
i
che bisogna $ hi
$this->view->testo=$testo;
i $
// Eff
//---Effettuare il llogin.
i All’
All’uopo viene
i }
Δ CLUTTER_EASE_OUT_EXPO
Tip Δ CLUTTER_EASE_IN_OUT_EXPO Documentazione
Δ CLUTTER_EASE_IN_OUT_CIRC
Questi modelli calcolano tutte le fasi intermedie Clutter è veramente grande. L’unico suo elemento
Volete trovare
un elenco completo
di ogni frame dell’animazione. La modalità lineare che al momento è davvero insufficiente è la documentazione per
delle istruzioni è una progressione lineare, mentre le altre sono il modulo Python. Anche se le classi e i metodi sono largamente
per l’animazione variazioni che producono differenti effetti. Ora identici a quelli dell’implementazione C della libreria, ci sono
di Clutter? Provate immaginate di avere un oggetto in posizione 0,0 alcune sottili differenze e qualche volta la semantica delle
a leggere la operazioni in Python può mandarvi in confusione. I tool di
e di animarlo per un tempo pari a 2.000 millisecondi
documentazione C, introspezione di Python, in questi casi, possono esservi d’aiuto,
fino a fargli raggiungere la posizione 100,0, quindi in particolar modo la funzione dir() che potete richiamare
che è più aggiornata:
http://clutter-
facendolo spostare solo lungo l’asse x. Con la modalità per qualunque oggetto, perfino un modulo. Provatela su Clutter
project.org/docs/ lineare dopo un secondo l’immagine si troverebbe per vedere tutti i tipi di dati statici e i metodi disponibili:
clutter/stable/ in posizione 50,0. L’animazione prende la posizione dir(clutter) oppure, su un metodo, dir(clutter.Text).
clutter-Implicit- attuale come punto d’inizio, mentre quello di fine
Animations. è dato dai valori forniti. Qualunque proprietà
html#Clutter. ‘rotationangle-y’, 360 )
che non è supportata non viene animata; tutto
AnimationMode.
il “materiale di scena” (gli oggetti da animare) devono <clutter.Animation object
j at 0xa3f85f4
essere associati a un valore che definisce la posizione (ClutterAnimation at 0xa4bb2c8)>
finale. Tutto sarà più chiaro dopo che avrete visto >>> ident.animate(clutter.EASE_IN_SINE,2000,’x’,0,
_ _
alcuni esempi (avete lasciato aperto lo stage, vero?): ‘rotationangle-y’, 0 )
>>> ident.set_anchor_point(60,30) <clutter.Animation object
j at 0xa3f85f4
>>> ident.set_position(60,30) (ClutterAnimation at 0xa4bb3ae)>
>>> ident.animate(clutter.LINEAR,2000, Questa volta il piccolo logo compie una “danza”
‘rotation-angle-y’,720) e poi ritorna alla sua posizione originale.
<clutter.Animation object
j at 0xa3f861c
(ClutterAnimation at 0xa4bb050)> Andiamo al cuore
>>> ident.animate(clutter.LINEAR,2000, Bene, animare un logo è una buona cosa,
‘rotation-angle-y’,720) ma in realtà ciò che volete vedere sono le news
<clutter.Animation object
j at 0xa3f85f4 recuperate dal feed RSS. In totale ci saranno tre attori
(ClutterAnimation at 0xa4bb0c8)> sullo schermo (il logo, il titolo della news e un breve
La seconda volta che effettuate la rotazione, riassunto). Anche se Clutter può gestire l’animazione
non succede nulla. Questo perché il valore contemporanea di diversi attori, diventa difficile
per lo spostamento indicato è lo stesso del punto per il programmatore controllare i movimenti
precedente – il valore fornito non è la “quantità” dell’intero gruppo di attori. La parola chiave,
di spostamento da eseguire, ma solo la posizione in questo caso, è proprio gruppo. Clutter ora supporta
in cui l’oggetto si deve fermare all’interno i container, e tra questi c’è il container Group (gli altri
dello stage. Quando si definisce la seconda sono simili ai container GTK e li useremo di sicuro
animazione, quindi, l’oggetto si trova già in futuro). Per prima cosa dovete definire un nuovo
nella posizione finale, quindi rimane li dove si trova. gruppo, poi individuarne gli elementi che ne faranno
Potete ovviamente animare più oggetti alla volta: parte e aggiungerli. Per evitare un po’ di confusione,
>>> ident.animate(clutter.LINEAR,2000,’x’,100, importerete di nuovo il logo come nuovo oggetto:
>>> group1= clutter.Group()
>>> ident1=clutter.texture_new_from_file(img)
>>> head1=clutter.Text()
>>> head1.set_position(130, 5)
>>> head1.set_color(blue)
>>> head1.set_text(f.entries[0].title)
>>> body1=clutter.Text()
>>> body1.set_max_length(75)
>>> body1.set_position(130, 22)
>>> body1.set_size(250, 100)
>>> body1.set_line_wrap(True)
>>> body1.set_text(f.entries[0].summary)
>>> group1.add(ident1, head1, body1)
>>> group1.show_all()
>>> stage.add(group1)
Con questo codice avete creato una nuova immagine
con il logo e due oggetti testo – uno per il titolo della
news(head1) e uno per il sommario (body1). Avete
impostato il testo di entrambi per la prima voce
recuperata dal feed e li avete posizionati accanto
al logo. Dal codice sembra che abbiate posizionato
I feed RSS sono presenti su moltissimi siti: per trovarli vi basta in modo assoluto gli oggetti testo head1 e body1,
cercare la piccola icona arancione con tre archi bianchi al suo interno ma queste posizioni sono relative al gruppo. Quando
L
LINUX PRO 82 - SETTEMBRE 2009
LINUX PRO 80 - LUGLIO 2009
TOTALE COMPLESSIVO €
CERTIFICAZIONE
PER UBUNTU
Come configurare
Diventa protagonista nel mondo Linux PRO al meglio l’hardware
SCELGO IL SEGUENTE METODO DI PAGAMENTO E ALLEGO: LINUX PRO - Aprile 2010 - N°90
Indica con una ˝ la forma di pagamento desiderata
Scad. CVV
(Codice
d di tre cifre che appare sul retro della carta di credito)
LINUX PRO 89 - MARZO 2010 Informativa e Consenso in materia di trattamento dei dati personali - (Codice Privacy d.lgs. 196/03) Sprea Editori S.p.A. Socio Unico Medi & Son S.r.l. con sede in Cernusco sul Naviglio (MI), via Torino,
51, è il Titolare del trattamento dei dati personali che vengono raccolti, trattati e conservati ex d.lgs. 196/03. Gli stessi potranno essere comunicati e/o trattati da Società esterne Incaricate. Ai sensi degli
artt. 7 e ss. si potrà richiedere la modifica, la correzione e/o la cancellazione dei dati, ovvero l’esercizio di tutti i diritti previsti per Legge. La sottoscrizione del presente modulo deve intendersi quale presa
visione, nel colophon della rivista, dell’Informativa completa ex art. 13 d.lgs. 196/03, nonché consenso espresso al trattamento ex art. 23 d.lgs. 196/03 in favore dell’Azienda.
Virtualizzazione
Un viaggio nell’affascinante mondo del virtuale
Virtualizzazione facile!
Una pratica guida all’uso di più sistemi operativi in modalità virtuale
<name>RHEL5</name>
<uuid>2cadb958-6533-f728-e86a- Per saperne di più...
421ec96ecfd3</uuid>
<memory>1024000</memory> Δ Per alcune ottime panoramiche delle tecnologie per la virtualizzazione,
<os> provate www.ibm.com/developerworks/library/l-linuxvirt/index.html,
<type arch=‘x86_64’ machine=‘pc’>hvm</type> www.vmware.com/pdf/virtualization.pdf e http://virt.kernelnewbies.org.
Δ È a disposizione un dettagliato tutorial su VMBuilder all’indirizzo
<boot dev=‘hd’/>
https://help.ubuntu.com/community/JeOSVMBuilder.
</os> Δ Libvirt è descritta su http://libvirt.org.
<devices> Δ Come al solito, leggete le pagine man per i comandi virt-install, virsh, kvm-qemu e VMBuilder.
<emulator>/usr/bin/kvm</emulator>
<disk type=‘file’ device=‘disk’>
<source file=‘/var/lib/libvirt/images/RHEL5.img’/>
<target dev=‘hda’ bus=‘ide’/> Supporto di rete
</disk> Le macchine virtuali necessitano di connettersi a reti virtuali.
<disk type=‘file’ device=‘cdrom’> Libvirt vi permette di creare bridge virtuali e altro hardware di
<target dev=‘hdc’ bus=‘ide’/> rete e connetterlo in una serie di tipologie. In un’installazione
<readonly/> pulita, libvirt creerà una singola rete chiamata “default”.
</disk> Potete vederne la definizione XML con virsh:
<interface type=‘network’> $ sudo virsh net-dumpxml default
<mac address=‘54:52:00:66:7a:66’/> Connecting to uri: qemu:///system
<source network=‘default’/> <network>
<target dev=‘vnet0’/> <name>default</name>
</interface> <uuid>a77f2c3f-e951-26c0-4c7d-
<input type=‘mouse’ bus=‘ps2’/> eb23ace76051</uuid>
<graphics type=‘vnc’ port=‘5900’ autoport=‘yes’ <forward mode=‘nat’/>
keymap=‘en-us’/> <bridge name=‘virbr0’ stp=‘on’ forwardDelay=‘0’ />
</devices> <ip address=‘192.168.122.1’
</domain> netmask=‘255.255.255.0’>
Alternativamente potete esaminare direttamente <dhcp>
il file XML in /etc/libvirt/qemu/RHEL5.xml. <rangeg start=‘192.168.122.2’
In questo file stanno le definizioni dettagliate della VM: end=‘192.168.122.254’ />
il suo nome e UUID, la memoria allocata, l’emulatore </dhcp>
necessario per lanciarla, la posizione dell’immagine </ip>
del filesystem, la rete connessa e molto altro. </network>
Virsh può essere usata anche per: Alternativamente visualizzate il file /var/lib/libvirt/network/
Δ lanciare, sospendere, fermare e riprendere default.xml con il vostro editor preferito. Questo file
macchine virtuali; definisce una rete chiamata defaultt che occupa il blocco
Δ migrare macchine virtuali a host diversi; di indirizzi IP 192.168.122.0/24. La macchina host avrà
Δ creare, eliminare ed elencare reti virtuali; un’interfaccia virtuale connessa a questa rete all’indirizzo
Δ gestire spazi per archiviare le immagini delle VM. 192.168.122.1. Un servizio chiamato dnsmasq
In tutto, virsh accetta circa 90 comandi. Lanciatelo senza ascolterà su questa interfaccia per fornire servizi DHCP
argomenti per ottenere un interprete di comandi interattivo. e cache DNS sull’intera rete. LXP
Installare Windows
Il protocollo SNMP
Parte 1 Sviluppare un’interfaccia per il monitoraggio dei dispositivi di rete
Tabella 1
ID OGGETTO NOME TIPO DESCRIZIONE (RFC 1213)
1.3.6.1.2.1.1.1 sysDescr OCTECT STRING Nome completo e identificativo della versione del tipo
di hardware di sistema, del software del sistema operativo
di funzionamento in rete.
1.3.6.1.2.1.1.2 sysObjectID OBJECT IDENTIFIER ID assegnato dal fabbricante dell’oggetto che fornisce un mezzo
facile e privo di ambiguità per determinare quale tipo di box
deve essere gestito.
1.3.6.1.2.1.1.3 sysUpTime TimeTicks Il tempo (in centesimi di secondo) a partire dal momento
in cui la porzione di gestione della rete del sistema è stata
reinizializzata l’ultima volta.
1.3.6.1.2.1.1.4 sysContact OCTECT STRING La persona da contattare per questo nodo da gestire insieme
alle informazioni per contattarla.
1.3.6.1.2.1.1.5 sysName OCTECT STRING Un nome assegnato amministrativamente per questo nodo
da gestire. Per convenzione, questo, è il nome del dominio
completamente qualificato per il nodo.
1.3.6.1.2.1.1.6 sysLocation OCTECT STRING La locazione fisica del nodo.
1.3.6.1.2.1.1.7 sysService Integer32 Un valore codificato che indica il set di servizi disponibili a questo
nodo: fisico (per esempio un ripetitore), link dati/sottorete
(per esempio un bridge), Internet (per esempio un gateway),
end to end (per esempio un host), applicazioni.
Background
Il Simple Network Management Protocol (SNMP) permette
il monitoraggio e il controllo di dispositivi di rete quali
workstation o server, router, switch, bridge e hub da un
computer centrale che esegue il software per la gestione
di rete. Oggi SNMP viene utilizzato per configurare periferiche
remote (inviando, ad esempio, informazioni di configurazione
a ciascun device della rete), monitorare le prestazioni della 2 Comunicazione fra entità di gestione ed entità da gestire
rete (quali ad esempio la velocità di elaborazione, la velocità
della rete, il throughput e le prestazioni del sistema), rilevare processo che comunica con l’entità di gestione, compiendo
errori di rete o accessi non autorizzati (è possibile richiedere azioni locali sul dispositivo sulla base dei comandi dell’entità
l’invio di un messaggio al verificarsi di un evento specifico, di gestione. Generalmente un agente memorizza e recupera
come l’arresto e all’avvio di una periferica, il verificarsi i dati di gestione sulla base delle richieste dell’entità
di un errore di collegamento a un router o un tentativo di gestione e può inoltre comunicare in maniera asincrona
di accesso non autorizzato), controllo dell’utilizzo della rete (generando una trap, ovvero una risposta senza la ricezione
(verificando, ad esempio, gli utenti o i gruppi che accedono). di alcuna richiesta) con il manager (presente sull’entità
di gestione) per informarlo di eventi urgenti o del verificarsi
Le componenti di una situazione eccezionale che ha portato variazioni nei
L’architettura di un sistema di gestione della rete è composta valori degli oggetti MIB. Questo è l’unico caso in cui l’agente
da tre componenti principali: l’entità di gestione, il dispositivo avvia una comunicazione SNMP e fornisce una forma
da gestiree e il protocollo di gestionee della rete. L’entità di protezione avanzata. Nel modello SNMP tutta l’intelligenza
’
di gestione è tipicamente un calcolatore in cui un software è mantenuta nelle entità di gestione in modo che gli agenti
(il manager) provvede alla raccolta, l’elaborazione e l’analisi siano i più semplici possibile, allo scopo di minimizzare l’effetto
delle informazioni di gestione (quali ad esempio la quantità sui dispositivi su cui girano. Solitamente gli agenti SNMP
di spazio libero su disco rigido o il numero di sessioni attive). di un apparato di rete sono implementati nel firmware dello
Da qui partono le azioni per controllare il comportamento stesso. Il protocollo di gestione della rete, funzionante tra
del dispositivo da gestire. Generalmente un manager esegue l’entità di gestione e i dispositivi da gestire, permette all’entità
delle interrogazioni agli agenti, chiede il valore delle variabili di gestione di chiedere lo stato dei dispositivi e indirettamente
o, se dispone dell’accesso in scrittura, può chiedere agire su di essi attraverso il relativo agente. Il protocollo
una modifica alla configurazione dell’agente. Esso funziona SNMP è basato su UDP/IP (User Datagram Protocol/Internet
da interfaccia fra l’amministratore di rete e il sistema da Protocol) e quindi inaffidabile in quanto non viene creato
amministrare. Il dispositivo da gestire può essere un host, un un canale di comunicazione tra i due interlocutori; allo stesso
bridge, un hub, una stampante, un modem. In un dispositivo tempo, però, si garantiscono migliori performance e minore
da gestire ci possono essere diversi oggetti su cui intervenire. overhead. La semplicità di SNMP e la comunicazione priva
A questi oggetti sono associate informazioni raggruppate di connessione producono anche un grado della robustezza.
in una sorta di database detto MIB B (Management Information Né il manager né l’agente confida sull’altro per la sua
Base, Base di Informazioni per la Gestione). In ogni dispositivo
da controllare è presente un agente di gestione, cioè un
operazione. Così, un manager può continuare a funzionare
anche se un agente remoto fallisce. L’agente ascolta richieste œ
LXP90 APRILE 2010 85
Tutorial SNMP
3 L’attuale
struttura MIB
provenienti dal manager sulla porta UDP 161 mentre considerata come una password. Questo nome veniva
il manager ascolta eventi critici (che vengono notificate inserito nei messaggi SNMP inviati tra periferiche gestite
tramite trap) sulla porta 162. tramite SNMP. I nomi di comunità sono formati da 32
caratteri e sono case sensitive. Generalmente vengono
La sicurezza offerta da SNMP definite tre comunità: la prima permette di lavorare
La prima versione del protocollo SNMP offriva un bassissimo in sola lettura, quindi consentendo solo interrogazioni
livello di sicurezza. Un amministratore poteva accedere agli agenti (il cui nome di comunità deve corrispondere
agli oggetti (sia in GET che in SET) indicando il nome a quello della management station che ha fatto la richiesta);
della comunità (community) che pertanto poteva essere la seconda consente, tramite gli agenti SNMP, di effettuare
operazioni in lettura/scrittura sul dispositivo, quindi di variarne
le impostazioni sempre previo controllo di sicurezza; infine
la terza permette a un agente di inviare un messaggio
trap SNMP alla management station secondo la propria
configurazione. Spesso i nomi di default delle community
sono publicc per le comunità di sola lettura e write e o private
per quelle in lettura/scrittura. Ovviamente, per quanti
utilizzano la versione 1 o 2 di SNMP, è bene modificare
queste impostazioni di default per motivi di sicurezza. L’ultima
versione, su cui porremo particolare enfasi, offre invece
un livello di sicurezza più evoluto attraverso l’autenticazione,
la cifratura e il controllo sugli accessi.
Le informazioni di gestione
L’insieme delle informazioni prelevabili dall’agente viene
definito MIB. Il MIB non è una struttura piatta ma gerarchica.
È importante capire che esso non è un database nel senso
stretto del termine. In realtà non memorizza dati: è solo
la descrizione di “cosa” il manager può richiedere all’agente
posto sul dispositivo da gestire. Un esempio di un oggetto
che può essere recuperato è un contatore che tiene traccia
del numero di pacchetti spediti e ricevuti su un link in un nodo,
in modo da permettere al manager il monitoraggio del carico
in quel punto della rete, oppure un contatore che indica
il numero dei datagrammi IP che sono scartati a causa
di un errore nell’intestazione, o ancora informazioni descrittive
come la versione del sistema operativo, informazioni di stato
che indicano il funzionamento di un dispositivo, una variabile
4 Struttura del protocollo SNMPv3 che rappresenta lo stato di un link in modo, ad esempio,
Tabella 2
ID OGGETTO NOME TIPO DESCRIZIONE (RFC 2013)
1.3.6.1.2.1.7.1 udpInDatagrams Counter32 Numero totale dei datagrammi IP consegnati agli utenti UDP.
1.3.6.1.2.1.7.2 udpNoPorts Counter32 Numero totale dei datagrammi UDP ricevuti per i quali non esiste
applicazione alla porta di destinazione.
1.3.6.1.2.1.7.3 udpInError Counter32 Numero dei datagrammi UDP ricevuti che non possono essere
consegnati per motivi diversi dalla mancanza di un’applicazione
alla porta di destinazione.
1.3.6.1.2.1.7.4 udpOutDatagrams Counter32 Numero totale di datagrammi UDP inviati da questa entità.
1.3.6.1.2.1.7.5 udpTable SEQUENCE of UdpEntry Una sequenza di oggetti UdpEnytry, uno per ciascuna porta
che attualmente è aperta da un’applicazione, che fornisce
l’indirizzo IP e il numero di porta usati dall’applicazione.
Tipi di dati
Essendo lo SMI basato sul principio di semplicità ed espandibilità, - Object identifier: usato per l’identificazione di ogni oggetto;
in un modulo MIB, gli oggetti rappresentati possono essere solo - Sequence, Sequence-of: usato per imporre una struttura
di tipo scalare (interi, stringhe, ecc) o tabelle bidimensionali tabulare su un raggruppamento ordinato di oggetti MIB.
di scalari. I tipi base definiti da SMI sono composti Δ Application: contiene tipi di dato rilevanti per una particolare
da due grandi famiglie: Universal e Application. applicazione. Attualmente SNMP, mediante la RFC 1155,
Δ Universal: tipo di dati indipendenti dall’applicazione, definisce i seguenti tipi di dato comuni a molte applicazioni:
universali; tra di essi troviamo: - Ipaddress: indirizzo internet a 32 bit, nell’ordine dei byte di rete;
- Integer: intero a 32 bit con valore compreso tra -231 - Counter: contatore che può essere incrementato e che riparte
e 231 -1; da 0 in caso di raggiungimento della soglia massima;
- Unsigned: intero a 32 bit senza segno nella gamma - Gauge: contatore che può essere incrementato e ridotto,
tra 0 e 232 -1; e, raggiunto il massimo, resta bloccato fino a un reset manuale;
- OctectString: stringa di byte che rappresenta dati arbitrari - Timeticks: numero di secondi a partire da un inizio concordato;
in forma binaria o di testo, di lunghezza fino a 65536 byte; - Opaque: necessario per passare dati arbitrari codificati
- Null; mediante OctetString.
Δ Att (Address Translation): contiene informazioni relative sui mezzi di trasmissione utilizzati da ogni interfaccia
alla conversioni degli indirizzi (ad esempio da logico a fisico). di rete. Qui vengono mantenute, ad esempio,
Esiste per compatibilità con MIB-I; le statistiche delle schede Ethernet;
Δ IP: contiene informazioni relative al protocollo IP. Tratta Δ SNMP: mantiene le statistiche svolte dallo stesso
il traffico IP uscente ed entrante, il numero di pacchetti SNMP. Vi si trovano informazioni circa il numero
scartati, contiene statistiche relative alla frammentazione e il tipo di messaggi inviati.
dei dati e il loro riassemblaggio; Ogni gruppo contiene al suo interno oggetti (o variabili)
Δ ICMP: contiene informazioni relative al protocollo ICMP. semanticamente correlati fra loro. Ogni oggetto viene
Riguarda i messaggi di errore relativi a tale protocollo. identificato univocamente ponendo uno 0 alla fine dell’OID
Mantiene un contatore per ogni messaggio ICMP spediti; che lo identifica. Questo sta a significare che il nodo indicato
Δ TCP: contiene informazioni relative al protocollo TCP. è una foglia dell’albero. Nelle tabelle 1 e 2 vengono mostrati
Gli oggetti di questo gruppo esistono solo per la durata alcuni oggetti dei gruppi system e UDP. Gli sviluppatori
della sessione TCP. Tiene sotto controllo il numero totale possono definire rami privati che includono oggetti
e corrente delle connessioni aperte e i segmenti inviati per i propri prodotti. I moduli MIB che non sono standardizzati
e ricevuti;n UDP: mantiene il numero dei datagrammi UDP tipicamente sono posizionati nel ramo sperimentale.
inviati e ricevuti e il numero dei segmenti che non sono stati
spediti a causa, per esempio, del numero di porta sconosciuto; Struttura dei messaggi SNMP
EGP: contiene informazioni relative al protocollo EGP Manager e Agente comunicano tra loro usando diverse
(External Gateway Protocol), il protocollo utilizzato PDU (Protocol Data Units, unità dati di protocollo)
da un router per scambiare informazioni tra Autonomous che vengono incapsulate in segmenti UDP secondo quanto
System. Tiene traccia di quanti pacchetti siano usciti, stabilito dalla RFC 1906. Nella versione 1 dell’SNMP
entrati o rinviati tramite forward correttamente il numero delle PDU era 5 (GetRequest, GetNextRequest,
e di quanti sono entrati e scaricati; SetRequest, Response e Trap) cresciuta fino a 7
Δ Transmission: sperimentale, contiene informazione con SNMPv2 e SNMPv3. In queste due ultime versioni sono
state aggiunte le PDU GetBulkRequest e InformRequest.
Δ GetRequest, GetNextRequest, GetBulkRequest sono
messaggi che vengono inviati da un’entità di gestione
all’agente del dispositivo da gestire per richiedere il valore
di un oggetto MIB. Richiedono, come argomento, l’OID
dell’oggetto su cui si vuole eseguire una operazione di GET.
Il comando GetNextRequest che restituisce il valore
dell’istanza successiva (in ordine lessicografico secondo
il valore di OID) all’istanza che viene passata come parametro.
Il vantaggio di questo comando è che in tale modo è possibile
eseguire richieste di variabili senza conoscere la struttura
dell’albero su cui l’oggetto richiesto si trova. Se non esistono
oggetti successivi restituisce un errore. Nel caso in cui
l’oggetto richiesto sia uno scalare è necessario aggiungere
il suffisso “.0” all’OID della variabile. GetBulkRequest, invece,
permette di leggere un MIB con un’unica richiesta anziché
utilizzare più messaggi GetNextRequest. In tutti e tre i casi
gli agenti rispondono con una Response PDU che contiene
gli identificatori dell’oggetto e i valori a esso associati;
Δ SetRequest è usata da un’entità di gestione per impostare
una variabile MIB di un dispositivo da gestire su determinati
valori. In questo modo è possibile programmare
6 Pila protocollare TCP/IP il funzionamento del dispositivo sul quale è inserito l’agente.
Viste e Maschere
L’esempio che segue, rende più chiaro (D) subtree:
b 1
1.3.6.1.2.1.1
361211 1.3.4.1.4.1.2
1 341412
il concetto di sottoalberi e maschere. mask:
k 1101011 136121110
1.3.6.1.2.1.1.1.0
Si considerino i seguenti 6 sottoalberti 13612
1.3.6.1.2
con le rispettive viste (E) subtree:
b 1
1.3.6.1.2.1.2
361212 Si può notare come:
(A) subtree:
b 1
1.3.6.1.2.1
36121 mask:
k 11010 136121
1.3.6.1.2.1 appartiene
i a: A
A, F
mask:k 111111 1261211
1.2.6.1.2.1.1 appartiene
i a: nessuno
(F) subtree:
b 1
1.3.6.1.2.1
36121 136131
1.3.6.1.3.1 appartiene
i a: F
(B) subtree:
b 1
1.3.6.1.2.1.1.1
3612111 mask:
k 110101 1341412
1.3.4.1.4.1.2 appartiene
i a: E
E, F
mask:
k 111 1 3 6 1 2 1 1 1 0 appartiene
1.3.6.1.2.1.1.1.0 i a: A
A, B
B, D
D, F
Si considerino inoltre i seguenti OID: 13612
1.3.6.1.2 appartiene
i a: nessuno
(C) subtree:
b 1
1.3.6.1.2.1.2
361212 136121
1.3.6.1.2.1 Attraverso l’uso di una subtree mask
mask:
k none 1261211
1.2.6.1.2.1.1 un oggetto gestito può essere incluso
136131
1.3.6.1.3.1 in una, nessuna o molte view.
IL FOTOGRAFO
DICEMBRE 2009
AR E M EG LI O
PE R FO TO GR AF
CH I, TE CN IC HE E SE GR ET I
TR UC
TEST
DICEMBRE 2009
mittente
CANON
io per la restituzione al
EOS 7D
LA SCUOLA DI YOKOHAMA
Autoritratto
Le foto
TIVITÀ: LOMO DIANA MINI
27.02
dei lettori
003 (conv. In L.
Abb. Post. - D.L. 353/2
| LINGUAGGIO: LE FOTO
LA SCUOLA DI
Italiane Spa - Sped. In
DEI LETTORI | SCUOLA
YOKOHAMA
FOTOGRAFI IN GIAPPO
NE 1863-1900
Tariffa R.O.C. - Poste
- € 4,00
DI STILL-LIFE
Spa - Milano
Dis Distribuzione
Distribuzione: M-
23-11-2009 16:03:49
12.indd I
I_cop_IL_FOTOGRAFO_2
In edicola
FOTOGRAFO.indd 1 8-03-2010 14:39:15
Guida
Software
Ogni mese Linux Pro vi offre i programmi e le distribuzioni più recenti su DVD
Sistema operativo
PRO
dentro il
PC-BSD 8.0
A
Ogni volta lla fine dell’anno scorso è stata rilasciata è l’inclusione dei driver per le schede video Nvidia che
che troverete la versione 8.0 di FreeBSD (che vi abbiamo nelle nostre prove si sono comportati molto bene. Usando
questo simbolo anche presentato nel DVD), un sistema per un po’ PC-BSD non ci è mancato praticamente nulla:
in un articolo,
vorrà dire operativo UNIX-like adatto all’uso server ci sono strumenti per la navigazione, per realizzare
che i file citati grazie alle sue caratteristiche di stabilità e sicurezza. documenti, qualche strumento per gli sviluppatori, tool
si trovano Partendo da questo sistema operativo è stato costruito che chattare o scaricare file e altro ancora. Oltre
nel DVD allegato
alla rivista.
PC-BSD 8.0, una variante pensata per l’uso desktop. a questo, avete a disposizione tutte le funzioni di KDE
per la configurazione del sistema. Se qualche cosa non
KDE è installata di default, è molto probabile che la troviate
La scrivania si basa su KDE 4.3.5, quindi è davvero direttamente nel DVD di PC-BSD, ad esempio il player
aggiornata. Gli altri componenti software principali sono: video VLC, OpenOffice.org o GIMP. Il software si installa
Δ FireFox 3.5.7 tramite un gestore di pacchetti estremamente ben fatto,
Δ GIMP 2.6.8 per cui non avrete problemi a usarlo. Le prestazioni
Δ K3B 1.0.5 generali sono eccellenti, anche su PC non potentissimi
Δ OpenOffice.org 3.1.1 e anche la compatibilità hardware è buona.
Δ Opera 10.10
Δ Pidgin 2.6.4
Δ The Warden 0.9.1 Requisiti minimi
Δ VLC 1.0.4
Δ FreeBSD Ports Tree Δ CPU: Pentium II o superiore
Δ FreeBSD System Source Δ RAM: 256 MB
Δ X.Org 7.4 Δ Hard disk: 10 GB
Insomma, c’è tutto ciò che serve per un utente Δ Scheda di rete
“casalingo”. L’aspetto generale del sistema è abbastanza Δ Scheda sonora
accattivante. Una delle novità di questa release
PUGLIA
http://lugbs.linux.it http://luccalug.it
www.brilug.it
www.lugcr.it non disponibile
LUG
UGM
M M www.capitanlug.it
www.lugman.org
www.prato.linux.it
www.latlug.org
www.lugob.org
www.lugargano.it www.ptlug.org
www.milug.org
www.lugbari.org www.siena.linux.it
www.openlabs.it
http://salug.it TRENTINO ALTO ADIGE
www.poul.org
www.talug.it nondisponibile
www.semlug.net
SARDEGNA
http://linuxtrent.it
http://pavia.linux.it
non disponibile
www.lugbz.org
MARCHE www.gnuraghe.org
UMBRIA
http://marche.linux.it/ascoli/ www.gulch.crs4.it
www.orvietolug.org
www.camelug.it non disponibile
www.perugiagnulug.org
www.cmlug.org www.plugs.it
www.ternignulug.org
www.egloo.org SICILIA
www.torino.linux.it NAZIONALI
www.livorno.linux.it
http://nolug.w3tech.it www.gechi.it
http://gulp.perlmonk.org
Nove
progetti in
E inoltre:
ª Vita automatizzata
ª Internet sicura