10_ottobre2014

100
Diventa protagonista nel mondo Linux Monitoraggio totale con Nagios Crea subito il tuo server Wiki personalizzato PRO Inoltre… Alta definizione I migliori programmi per vedere a casa i film come al cinema p.54 Sì ai giochi, no a Windows Così giochi alla grande senza rinunciare alla tua Linux box p.26 ACCADEMIA DEL CODICE 8 pagine di pura programmazione da pagina 84 3, 2, 1... Arduino! Crea la tua plancia di controllo per simulatori TARIFFA R.O.C. - POSTE ITALIANE SPA - ABB. POST. - D.L. 353/2003 (CONV. IN L. 27/02/2004 N. 46) ART. 1, COMMA 1, S/NA - DISTRIBUTORE: PRESS-DI, MILANO Linux Pro 146 - 2014 - Mensile - €5,90 - CHF 13,60 METTI IL TURBO STRUMENTI E APPLICAZIONI PER METTERE ALLA PROVA I SISTEMI INFORMATICI CENTRYCH OS 12.04.3 KALI LINUX DISTRO DA HACKER 8 GB LIBERA LINUX DA PACCHETTI E IMPOSTAZIONI INUTILI CON TUTTI I TRUCCHI PER FAR CORRERE IL TUO COMPUTER!

description

linux magazine

Transcript of 10_ottobre2014

Page 1: 10_ottobre2014

Diventa protagonista nel mondo Linux

∆ Monitoraggio totale con Nagios ∆ Crea subito il tuo server Wiki personalizzato

Pro

Inoltre…Alta definizione I migliori programmi per vedere a casa i film come al cinema p.54

Sì ai giochi, no a Windows Così giochi alla grande senza rinunciare alla tua Linux box p.26

AccAdemiA del codice8 pagine di pura programmazione

da pagina 84

3, 2, 1... Arduino!Crea la tua plancia

di controllo per simulatori

Tari

ffa

r.O

.C. -

PO

sTe

iTal

ian

e sP

a -

abb

. PO

sT. -

D.l

. 353

/200

3 (C

On

v. in

l. 2

7/02

/200

4 n

. 46)

arT

. 1, C

Om

ma

1, s

/na

- Di

sTri

buTO

re: P

ress

-Di,

mil

anO

Linux Pro 146 - 2014 - Mensile - €5,90 - CHF 13,60

METTI IL TUrBo

LINUX PRO 126

LINUX Pro

Cosa trovi nel

LINUX PRO 146

LINUXPro

STRUMENTI E APPLICAZIONI PER METTERE ALLA PROVA I SISTEMI INFORMATICI

CentryCh OS 12.04.3

KALI LINUX DISTRO DA HACKER

8GB

KALILINUX

LXP146_bustinaDVD 1 07/09/14 17:11

LIBERA LINUX DA PACCHETTI E IMPOSTAZIONI INUTILI CON TUTTI I TRUCCHI PER fAR CORRERE IL TUO COMPUTER!

COP_001_LXP146_cover 1 21/09/14 16:50

Page 2: 10_ottobre2014

Elevate performance■ Fino a 32 GB di RAM dedicata■ Fino a 2 TB di Hard Disk SATA■ Software RAID 1■ 1&1 Certifi cato SSL■ 1&1 CDN Plus con RailgunTM

■ 1&1 SiteLock

WordPress e molto altro con 1&1! ■ Facile installazione con 1&1 WP Wizard■ Supporto Esperti App 24/7■ Versione di prova per tutte le applicazioni■ Notifi che di sicurezza e aggiornamenti automatici

Inclusi ■ 1&1 Mobile Site Builder■ Le più recenti versioni PHP■ Dominio■ Indirizzo IP individuale■ Illimitati: traffi co, account e-mail, database

MySQL, account FTP e sottodomini

Con le nuove soluzioni 1&1 Performance Hosting puoi benefi ciare dei vantaggi dei nostri pacchetti di hosting e, in più, delle prestazioni di un server dedicato! Mettiamoinfatti a tua disposizione tutte le performance di un hardware di tua proprietà. I nostri esperti si occupano completamente dell‘installazione e dell‘amministrazione permanente del server, così tu puoi concentrarti esclusivamente sui tuoi progetti web!

PER GRANDI PROGETTI WEB!

PRESTAZIONI GARANTITE

puoi benefi ciare dei vantaggi dei nostri pacchetti di hosting puoi benefi ciare dei vantaggi dei nostri pacchetti di hosting , delle prestazioni di un server dedicato! Mettiamo, delle prestazioni di un server dedicato! Mettiamo

infatti a tua disposizione tutte le performance di un hardware infatti a tua disposizione tutte le performance di un hardware di tua proprietà. I nostri esperti si occupano completamente di tua proprietà. I nostri esperti si occupano completamente dell‘installazione e dell‘amministrazione permanente del server, dell‘installazione e dell‘amministrazione permanente del server, così tu puoi concentrarti esclusivamente sui tuoi progetti web!

49,99 39,99 €/mese IVA escl.*

A partire da

* 1&1 Performance Hosting S in offerta a 39,99 €/mese IVA escl. (47,59 € IVA incl.) con contratto di 24 mesi, poi a 49,99 €/mese IVA escl. (59,49 € IVA incl.). Contratto anche disponibile con la durata di 12 mesi o di un mese. Costo di attivazione di 49 € IVA escl. (58,31 € IVA incl.). Maggiori informazioni sul sito 1and1.it. 1&1 Internet AG, Elgendorfer Str. 57, 56410 Montabaur, Germania. Il Rubik’s Cube® è usato con il permesso di Rubik’s Brand Ltd.

1and1.it

800 977313(numero verde)

DOMINIO | MAIL | HOSTING | SERVER

207x285

MESEDI PROVA DEINOSTRI PRODOTTI1 CLIC

PER CAMBIAREPACCHETTO1 TELEFONATA

E PARLERAI CONUN ESPERTO1

NOVITÀ:

MASSIME PERFORMANCE CON IL MINIMO IMPEGNO

MAPIT1410C1P_207x285_46L.indd 1 16.09.14 11:41

Page 3: 10_ottobre2014

Linux pro 146 1

Domande alla redazione: [email protected]

Abbonamenti: [email protected]

Arretrati: [email protected]

problemi con il DVD: [email protected]

Sito Web: www.linuxpro.it oppure inviate le vostre lettere a: Linux Pro, Sprea Editori S.p.A.,

Via Torino 51, 20063 Cernusco S/N Telefono: 02.92432.1

contatti

Editoriale

ora trovi Linux Pro

anchesu android

La verità sulla popolarità di WindowsSempre più spesso si legge in giro di un calo delle quote di mercato dei prodotti

Microsoft. Se è vero che internet Explorer è stato divorato dai suoi concorrenti non si può però dire lo stesso del sistema operativo Windows, che a oggi ha ancora una quota di mercato superiore al 90%. Le spiegazioni sono tante ma c’è una grande verità che viene spesso ignorata e a cui arriviamo fra poco. Anzitutto, sappiamo tutti qual è la risposta più comune al perché Windows è più usato di Linux anche quando si tratta di nuovi utenti: è più facile da usare. Linux ha fatto passi da gigante in questo senso e ormai tutte le distribuzioni più popolari offrono controlli assolutamente comuni: è difficile trovare qualcosa che l’utente medio sia costretto a fare, per esempio, da riga di comando. Quindi se è anche vero che Windows è semplice da usare, è vero anche che ubuntu non è certo da meno. C’è invece un aspetto trascurato e che alcune interessanti statistiche mettono in evidenza. nella prima metà di quest’anno è terminato ufficialmente il supporto di Microsoft a Windows xp, sistema operativo che ha debuttato nel 2001. per capirsi, ubuntu, nella sua prima e più primitiva versione, sarebbe arrivato solo 3 anni dopo. Eppure quelle interessanti statistiche ci dicono che 13 anni dopo il suo debutto e quando ormai Microsoft non lo supporta più, Windows xp ha, badate bene, quasi il 30% delle quote di mercato. in pratica è stimato che a oggi quasi un computer su 3 abbia ancora

Windows xp installato. Questo significa che, e qui arriviamo alla grande verità, che proprio come certi canali televisivi di Stato che fanno grandi ascolti solo perché la gente è abituata a mettere “sul 2”, così Windows si avvantaggia di una cosa molto semplice: della pigrizia. Chi usa xp, un sistema davvero datato, lo fa probabilmente in larga parte perché, semplicemente, fa il minimo indispensabile di cui ha bisogno. Certo, il dominio di Windows nelle quote di mercato è reale, ma i sistemi Linux non sono fatti per chi si accontenta, sono fatti per utenti che esigono di più dai loro computer, e forse in questo senso Microsoft ha ancora un enorme vantaggio, quello di rivolgersi a un pubblico che si accontenta di un sistema operativo molto vecchio e molto limitato... La redazione di Linux Pro

Diventa protagonista nel mondo Linux

∆ Monitoraggio totale con Nagios ∆ Crea subito il tuo server Wiki personalizzato

Pro

Inoltre…Alta definizione I migliori programmi per vedere a casa i film come al cinema p.54Sì ai giochi, no a Windows Così giochi alla grande senza rinunciare alla tua Linux box p.26

AccAdemiA del codice8 pagine di pura programmazioneda pagina 84

3, 2, 1... Arduino!Crea la tua planciadi controllo per simulatori

Tari

ffa

r.O

.C. -

PO

sTe

iTal

ian

e sP

a -

abb.

PO

sT. -

D.l

. 353

/200

3 (C

On

v. in

l. 2

7/02

/200

4 n

. 46)

arT

. 1, C

Om

ma

1, s

/na

- Dis

Trib

uTO

re: P

ress

-Di,

mil

anO

Linux Pro 146 - 2014 - Mensile - €5,90 - CHF 13,60

METTI IL TUrBo

LINUX PRO 126

LINUX

Pro

Cosa trovi nel

LINUX PRO 146

LINUXPro

STRUMENTI E APPLICAZIONI PER METTERE

ALLA PROVA I SISTEMI INFORMATICICentryCh OS 12.04.3

KALI LINUX DISTRO DA HACKER

8GB

KALILINUX

LXP146_bustinaDVD 1

07/09/14 17:11

LIBERA LINUX DA PACCHETTI E IMPOSTAZIONI INUTILI CON TUTTI I TRUCCHI PER fAR CORRERE IL TUO COMPUTER!

COP_001_LXP146_cover 1

21/09/14 16:50

001_LXP_146_editoriale 1 21/09/14 21:18

Page 4: 10_ottobre2014

2 Linux pro 146

Sommario

SommarioBenvenuti nel centoquarantaseiesimo numero di Linux Pro, la guida definitiva a Linux e al mondo Open Source

linux pro 146 LINUX Pro

In primo piano

Le distro Linux sono sistemi snelli ma si può fare molto per alleggerirle ancora e per avere un computer velocissimo:

basta seguire i nostri consigli sull’ottimizzazione delle prestazioni

10

08 Domande e risposte su OIN

ABBONATI ALLA VERSIONE DIGITALE

A SOLI 14,90 €DURATA ABBONAMENTO 1 ANNO

sOlO pER pC E MAC

www.myabb.it/digital

mettI IL turboa LInux

002_003_LXP_146_sommario 2 22/09/14 15:21

Page 5: 10_ottobre2014

IL DVD IN breVeLato a∆ dIstrIbuzIonI∆ Fedora 19 (32 bit)

Lato b∆ dIstrIbuzIonI∆ Deft 8∆ IPFire 2.13∆ Salix Xfce 14.0.1 ∆ GIoCHI∆ Ayon∆ rIVIsta∆ Codice d’esempio Android∆ Codice d’esempio Raspberry ∆ Codice d’esempio Ruby∆ Codice d’esempio Sysadmin∆ BurgerSpace 1.9.2 ∆ NetHogs 0.8.0 ∆ OCRFeeder 0.7.1 ∆ PushOver 0.0.5 ∆ QMMP 0.7.1

Linux pro 146 3

Sommario

04 NewsdeskLe novità del mondo open Source

08 FAQ: OINLa open invention network: basta troll!

Approfondimenti 10 Metti il turbo a LinuxMetti a punto la tua distro

per ottimizzare le prestazioni

18 Speciale

Monitoraggionagios e il monitoraggio di rete

26 Applicazioni Windows

in Linux

L’inebriante mondo di Wine

32 Intervista il mondo secondo Mark Shuttleworth,

fondatore di Canonical

38 Trucchi per sysadminGestire i certificati e integrare Linux e

Windows: il dottore spiega tutto

L’angolo di Android

42 NewsLe novità in campo Android

43 LG G3 Sun buon smarthphone con ottime funzioni e dal prezzo abbordabile

44 Huawei Ascend

Y530uno smartphone di fascia bassa e per i neofiti di questo tipo di dispositivo

45 Nokia Xun telefono dual-SiM poco ingombrante ed elegante

Recensioni

47 I test del mese

Tutorial

68 TerminaleBreve guida ai comandi più usati e più utili che il terminale offre

70 SysadminGestite al meglio la vostra distro con i consigli sulle basi dell’amministrazione di sistema per ogni distro

74 Kerbal Space ProgramSeguite il tutorial per creare un controller su misura per il vostro simulatore di volo spaziale

80 MediaWikiCome installare sul vostro server il modulo di editing collaborativo

Accademia

84 Djangorealizzare un semplice sito Web o un blog è facilissimo con questo framework

88 Bashuna guida alle funzioni software

IL DVD IN breVeLato a∆ desktop∆ Mednafen 0.9.28∆ Parcellite 1.1.3∆ dIstrIbuzIonI∆ Mageia 3 (32 bit)∆ Sophos UTM ∆ Untangle 9.4 (32 e 64 bit) ∆ GIoCHI∆ PokerTH 1.0.1∆ Internet∆ Firefox 21∆ ProFTPD 1.3.4d∆ proGrammazIone∆ CPPCheck 1.60.1∆ GTKDialog 0.8.3 ∆ LiteIDE∆ rIVIsta∆ Ardour3 3.2 ∆ Avogadro 1.1.0 ∆ Codice tutorial Android ∆ Codice tutorial Ruby ∆ Erebus ∆ FatRat 1.2.0 beta2∆ Safe-rm 0.10 ∆ Xowa 0.6.2 ∆ Plan 9 ∆ Raspbian∆ Arch Linux RP ∆ Android RP ∆ Risc OS

Lato b∆ dIstrIbuzIonI∆ Linux Mint 15 Cinnamon∆ Linux Mint 15 Mate ∆ Parted Magic

Quando trovi questo bollo negli articoli, cerca il software nel dVd

prodentro il

IL DVD IN breVeLato a∆ dIstrIbuzIonI∆ Kali LInux 1.0.9∆ Centrych OS 12.04.3

Lato b∆ dIstrIbuzIonI∆ Cube2 Sauerbraten∆ Redobackup 1.0.4∆ Smoothwall Express 3.1∆ DreamStudio Unity 12.04

∆ rIVIsta∆ UMPlayer 0.95∆ VLC Media Player 2.1.5∆ Clementine 1.2.3∆ Kaffeine 1.2.2∆ MPV 0.5.1∆ JSON to CSV 20140311∆ Flex-fw 0.2.1∆ Galculator 2.1.3∆ NewLISP 10.6 ∆ Frescobaldi 07.3∆ Asunde 2.5∆ The Legend of Edgar 1.17 ∆ Freecell Solver

IL PROSSIMO NUMERO ESCE

IL 12 NOvEMbRE

TrisquelTrisquel

LINUX PRO 133 17

Ubuntu libero?Per un occhio inesperto, Trisquel potrebbe sembrare una copia di Ubuntu, eccetto che per l’esclusione dei pacchetti non free che non rispettano le rigorose politiche sul Software Libero rilasciato sotto licenza GNU. Rodríguez, però, è pronto a ribattere che le apparenze ingannano. “Se si vuole semplificare il concetto di distro free, pensando che sia sufficiente estrarre il materiale non libero da una piattaforma come Ubuntu, si commette un grosso errore di fondo. Andare alla ricerca di tutto ciò che non rispecchi le regole del Software Libero in una distribuzione di per sé già funzionante, non è un gioco da ragazzi. Nell’estrazione di ciò che non si vuole mantenere, il rischio di fare dei danni è altissimo”. Rodríguez porta come esempio il caso del kernel Linux-libre, sul cui progetto è basato Trisquel. Per chi non lo conoscesse, Linux-libre è un kernel portato avanti dalla Free Software Foundation Latin America (FSFLA) e consiste nel fornire una versione di Linux completamente libera da qualsiasi codice non free. Il concetto dietro cui si muove Trisquel, quindi, è proprio questo: prendere una distro, analizzarla fin nei minimi dettagli ed estrapolare tutto ciò che ha una licenza proprietaria, sostituendolo con una controparte totalmente libera. A parole è un proposito che potrebbe sembrare tanto semplice, quanto ideologico, ma all’atto pratico il progetto non è indenne da difficoltà. Uno degli aspetti più critici, sta proprio nel garantire agli utenti che la sostituzione

La libera TrisquelLa distro campionessa nella battaglia per il Free Software

La linea che divide il pragmatismo dall’ideologia è sempre sottilissima e il progetto Trisquel GNU/Linux

è forse l’unico che riesce a percorrerla senza mai ondeggiare. Trisquel è sicuramente la distribuzione più usabile tra quelle che aderiscono in toto alle severe linee guida della Free Software Foundation (FSF) e non altera la versatilità di cui l’utente finale gode. Il progetto Trisquel è stato avviato da un gruppo di studenti dell’Università spagnola di Vigo, con l’obiettivo di creare un sistema didattico con supporto per la lingua galiziana. Ben presto l’opera è diventata talmente vasta

Rodríguez. Proprio Rodríguez, parlando alla platea presente a LibrePlanet 2013 in Massachusetts, ha affermato che la distribuzione di Software Libero è una grande responsabilità: “I vostri utenti, oltre a credere in voi, si fidano delle vostre capacità e si aspettano che rispettiate la loro libertà”. “Noi”, continua Rodríguez, “non usiamo

il termine distro come un’arida definizione tecnica per descrivere una versione di un software. La parola distribuzione è qualcosa che implica la massima responsabilità verso chi ci segue e usa Trisquel”.

da superare lo scopo iniziale e portare a un vero e proprio sistema operativo multilingue. Trisquel GNU/Linux ha visto la luce ufficialmente nell’aprile del 2005, quando Richard Stallman l’ha presentata al mondo intero. Il cuore della distro è la vastissima comunità internazionale di appassionati, guidata da un personaggio carismatico qual è Rubén

di un contenuto non free con il suo omologo libero, non danneggi il corretto funzionamento della distro. L’esempio più lampante riguarda i driver. Quando ce ne sono due versioni, una proprietaria e l’altra free, la maggior parte delle distribuzioni, come Ubuntu e Fedora/Red Hat, scelgono la prima. Nel momento in cui si decide di sostituirla con il driver free, bisogna assicurarsi che il componente cui è legata e da cui dipende la sua corretta gestione continui a operare senza problemi. Il team di Trisquel, però, non si limita a sostituire porzioni di codice o software con le controparti free, ma cerca soprattutto di apportare delle migliorie alle aree in cui opera. Jonathan Nadeau dalla FSF, per esempio, ha collaborato con gli sviluppatori di Trisquel per rendere la distro più accessibile agli utenti con problemi di vista. In effetti basta dare un’occhiata a Trisquel 6.0 per rendersi subito conto di come le caratteristiche di accessibilità siano davvero ottime. Di default, infatti, il desktop può sfruttare le peculiarità di Orca, l’applicazione che mediante un sapiente mix di ingrandimenti, sintesi vocale e sistema di scrittura braille, consente agli ipovedenti di usare facilmente le funzioni della distro. Sul fronte dell’usabilità, un’altra miglioria nel desktop di Trisquel sta nell’approccio intuitivo con cui accoglie i nuovi utenti. A onor del vero, ricorda molto da vicino Windows ed è proprio Rodríguez a confermare questa impressione, affermando che non c’è niente di male a prendere spunto dalle idee che funzionano.

“Lo sviluppo di software libero porta con sé una grande responsabilità”

L’ambiente grafico di Trisquel ricorda da vicino quello di Windows. La barra degli strumenti, infatti, ne è l’esempio

Usare Trisquel 6.0Trisquel 6.0 è l’ultima versione della distro basata su Ubuntu 12.04. Come per quest’ultima, la 6.0 rappresenta la versione Long Term Support (LTS) e offrirà la correzione dei bug e gli aggiornamenti per la sicurezza fino al lontano 2017. L’aspetto migliore è sicuramente la sua interfaccia desktop. Anche se la distribuzione viene eseguita su GNOME 3.4, gli sviluppatori - per i motivi che potete leggere nell’articolo - hanno deciso di ripiegare su un ambiente destkop più tradizionale. Nell’edizione principale, trovate LibreOffice 3.5 e il formidabile Abrowser 19, un programma derivante da Mozilla Firefox che è stato ritoccato

per rimuovere il logo e i richiami a qualsiasi software di natura non libera. Al posto del plug-in Flash che lavora sotto licenza proprietaria, è stato usato il player multimediale gratuito Gnash, che può riprodurre senza inconvenienti video HTML5 e visualizzare i file PDF senza alcun add-on. Per installare software aggiuntivo potete utilizzare Synaptic, oppure sfruttare il gestore di pacchetti della distro. Non mancano poi altri esempi di software free come VLC Media Player, per riprodurre video e musica. Se volete installare software proprietari come per esempio Skype, potete farlo tramite Synaptic. Bisogna però

ricordare che Trisquel non integra alcun tipo di supporto per i driver non liberi e quindi il loro utilizzo potrebbe minare la stabilità del sistema e dare luogo a malfunzionamenti. Detto questo, noi non abbiamo avuto problemi a far lavorare Trisquel sulle nostre macchine, riscontrando un notevole miglioramento nel panorama dei driver free. L’installer, infine, è una versione modificata di quello che trovate su Ubuntu. La sua particolarità di essere uno dei sistemi d’installazione più semplici da usare per chi proviene dal mondo desktop ne ha fatto il candidato principale per l’uso in Trisquel.

e non sarà certo l’ultimo). Intorno al 2000, ho cominciato a cercare un’alternativa a MS Office, perché ero veramente stufo della pervasività di Outlook - che faceva sentire la sua presenza anche se non era installato - e della scarsa qualità degli altri programmi, e in particolare di Word e PowerPoint (non sono mai stato un grande utente di fogli elettronici). Nel 2001, ho visto l’annuncio di OpenOffice.org e ho iniziato a utilizzarlo, nonostante la versione 1.0 fosse veramente acerba. La situazione, però, è migliorata sensibilmente con la versione 1.1, al punto da poter cominciare a sostituire MS Office in un numero sempre maggiore di occasioni. Peraltro, la frequentazione - seppure a distanza - della comunità mi ha fatto comprendere come mancasse una strategia di marketing e comunicazione in grado di far conoscere il prodotto a un numero più ampio di utenti potenziali. Nel 2003, mi sono iscritto alle mailing list e ho cominciato a intervenire, e nel 2004 sono entrato nel progetto come responsabile marketing per l’Italia. Ho iniziato immediatamente a scontrarmi con Sun, più che un’azienda un caso umano, e con alcuni membri lungimiranti della comunità che

consideravano il marketing del tutto inutile, ma questo non mi ha fermato: la combinazione tra la qualità del prodotto e un’azione di marketing aggressiva ha portato OOo a raggiungere una quota di mercato superiore al 10% in Italia (i dati sono stimati) e un ruolo sempre più visibile sul mercato.A partire dal 2006, dalla conferenza di Lione, ho iniziato a contribuire al marketing internazionale, tanto che nel 2008 sono diventato uno dei leader del team con la supervisione del budget. In questo modo, ho iniziato a conoscere un numero sempre più ampio di persone, e sono stato coinvolto nelle discussioni sull’opportunità di creare una fondazione indipendente (che sono diventate sempre più fitte a partire dalla conferenza di Pechino nel 2008). Nel 2009, quando Oracle ha acquisito Sun Microsystems, ho commentato dicendo che era la cosa peggiore che sarebbe potuta succedere a OOo (in realtà mi sbagliavo, perché quello che è successo dopo è stato anche peggio). Ovviamente, i colloqui sulla fondazione sono diventati sempre più fitti, e si sono trasformati in un piano di lavoro nel gennaio del 2010. A quell’epoca, ho scritto il marketing plan di LibreOffice (senza sapere che si sarebbe

chiamato così), che - a più di tre anni di distanza - può essere considerato un successo.Nell’estate del 2010 ho lavorato a tempo pieno all’annuncio, poi - come se niente fosse - sono andato a Budapest per la conferenza di OpenOffice, durante la quale c’è stato l’incontro definitivo che ha sancito la nascita di The Document Foundation. Il 28 settembre dello stesso anno sono stato colui che ha “fisicamente” premuto il pulsante di lancio del comunicato stampa che annunciava la nascita del progetto, e da quel momento sono sempre stato il responsabile del marketing e della comunicazione e il principale portavoce del progetto.

LXP: Il Linux Day di quest’anno sarà basato sull’innovazione, un argomento vastissimo e che include la volontà di rimanere al passo con i tempi, fornendo sempre nuovi sviluppi. Quali sono, secondo te, i passi che il mondo Linux deve ancora compiere per continuare a puntare al futuro?IV: In realtà, il mondo Open Source è già fortemente impiantato nel futuro, tanto che la quasi totalità dei telefoni cellulari di ultima

generazione utilizza un sistema operativo che deriva da Linux (Android, ma anche iOS, che ha radici FreeBSD), la totalità degli elettrodomestici intelligenti e dei sistemi di domotica

utilizza Linux Embedded (o qualcosa di molto simile), la maggior parte delle auto dotate di computer di bordo usa sempre Linux Embedded (ve lo immaginate Windows su un sistema frenante?), e infine quasi tutti i supercomputer e un numero sempre più ampio di server utilizzano Linux. Inoltre, non bisogna dimenticare la spinta che ha dato all’innovazione il modello dello sviluppo collaborativo tipico della comunità del Software Libero. Oggi, non esiste una sola azienda in grado di sostenere che il modello di sviluppo chiuso è superiore, dopo che anche IBM e Microsoft - la prima ha inventato il concetto, e la seconda lo ha perfezionato - hanno smesso di dirlo. Linux, e in accezione più ampia tutto il mondo del Software Libero, ha bisogno di maggiore coesione e di una strategia di marketing e comunicazione in grado di contrastare gli investimenti delle grandi aziende. Purtroppo, il frazionamento dei progetti - che in alcuni casi è completamente inutile - è un fatto difficile da comprendere per tutti coloro che sono estranei alla comunità, e rappresenta un fattore di debolezza. Infine, è necessario che il mondo del Software Libero cominci a pensare seriamente a un modello di business sostenibile, perché altrimenti rimarrà sempre ostaggio delle aziende e delle loro strategie di sopravvivenza

nei confronti dell'ecosistema finanziario (perché una strategia basata sul fatturato del trimestre è priva di buon senso e non permette di guardare oltre la punta del proprio naso, per cui privilegia le azioni tattiche rispetto a quelle strategiche). Quindi, bisogna pensare a generare profitti che derivano dal valore aggiunto, e a reinvestirli nello sviluppo, perché le aziende che sponsorizzano il Software Libero “a fondo perso” - come Sun e IBM nel caso di OOo - possono scomparire da un momento all'altro, se un analista si inventa aspettative superiori all'andamento del mercato.

LXP: Innovazione, spesso, significa rompere con il passato, ma anche adottare strategie nuove. A questo proposito puntare alla conquista di un numero di sistemi sempre maggiori, sensibilizzando così l’opinione pubblica alla migrazione verso il Free Software, è senza dubbio un tema innovativo. E non solo in ambito privato ma soprattutto in quello aziendale. Sappiamo che su questo fronte sei molto attivo, quindi ti chiediamo qual è la tua ricetta per innovare?IV: Onestamente, non credo ci sia nessuna ricetta specifica, ma solo l’uso di un po’ di buon senso nella comunicazione. Combattiamo contro nemici potenti, che hanno budget importanti e strumenti per influenzare l’opinione pubblica che vanno ben oltre le nostre possibilità, per cui dobbiamo usare tutte le nostre capacità. Solo aggregando tutti i progetti all’interno di una rete, possiamo riuscire a creare quella massa critica che non abbiamo mai avuto. Dobbiamo mostrare i nostri muscoli, perché solo in questo modo

È il giorno del pinguino

Come ogni anno, il Linux Day, che si terrà a ottobre, propone un argomento cardine su cui ruota tutta l'intera fiera di eventi. Ed è nel 2013 che

l'innovazione sarà al centro dei dibattiti come elemento distintivo del Software Libero, accendendo i riflettori sul motore dello sviluppo di una comunità in continua crescita. Sì, perché nonostante GNU/Linux sia parte integrante del Web e di moltissime infrastrutture enterprise, tanto da essere punto di riferimento per l’innovazione tecnologica, nella vita quotidiana c’è ancora molta difficoltà ad avvicinarsi a una realtà spesso erroneamente percepita per soli addetti ai lavori. Ecco quindi che il Linux Day 2013 vuole essere un’iniziativa rivolta a far conoscere a tutti le potenzialità del Free Software, che in Italia sono ancora un’opportunità quasi del tutto inesplorata. A parlarne con Linux Pro c'è Italo Vignoli, profondo conoscitore del tema e fondatore e consigliere della Document Foundation. Infine un messaggio rivolto ai numerosi LUG che parteciperanno al Linux Day: scriveteci a [email protected] e raccontateci cosa avete fatto! Per conoscere la mappa degli eventi, potete collegarvi alla pagina www.linux.it/eventi o visitare il sito www.linuxday.it, dove troverete tutte le informazioni sulla manifestazione.

LXP: Raccontaci del tuo percorso dai primi passi nel mondo del Free Software fino ad arrivare alla Document Foundation.IV: è tutta colpa, o merito, di Outlook. Io sono

sempre stato un utente abbastanza esigente nel caso della posta elettronica e per questo motivo non sono mai riuscito a usare Outlook, che considero il peggior software mai sviluppato da un quadrumane perché non solo è pessimo sotto il profilo architettonico (il salvataggio di tutte le informazioni in un unico blob va contro ogni sano principio, e contro il buon senso) ma riesce - in un campo dove tutto è standard come l’email - a non adottare nemmeno uno standard (oppure a reinventarlo, peggiorandolo). Quindi, non sono mai stato tra i sostenitori di Microsoft Office, proprio per la presenza di Outlook. Inoltre, quando la quota di mercato

di Microsoft Office ha cominciato a superare percentuali che avrebbero ampiamente giustificato l’intervento dell’antitrust, ho cominciato a chiedermi perché non ci fosse nessun intervento a protezione degli utenti, visto che era evidente che la situazione avrebbe portato Microsoft ad avere un atteggiamento vessatorio nei loro confronti (a differenza di molti, io ho letto la EULA di MS Office). Oggi, è evidente che Microsoft ha goduto di ampie coperture per il suo ruolo di principale fornitore di informazioni del governo statunitense, attraverso programmi come PRISM (che non è certo stato il primo,

È l'innovazione il tema centrale del Linux Day 2013 Ce ne parla Italo Vignoli, fondatore e consigliere

di The Document FoundationSEmPRE AL PASSO COn I TEmPI

“L'innovazione è un fattore che da sempre contraddistingue il Software Libero”

2013

IntervistaIntervista

20 LINUx PRO 133 LINUx PRO 133 21

Gramps Gramps

24 LINUX PRO 133 LINUX PRO 133 25

Scroprite come usare Gramps per creare un albero genealogico e ricostruire la storia della vostra famiglia

Genealogia fai da te

Nella maggior parte dei casi, le conoscenze familiari non vanno oltre qualche grado di parentela. Quando

però si inizia a scavare alla ricerca degli avi più lontani o di parenti che hanno trovato fortuna in altri paesi in epoche passate, le cose si complicano non poco. Quali sono le origini della famiglia? Dove vivevano? Da dove deriva il vostro cognome? La genealogia è l’unica scienza che può dare risposta a queste domande, catalogando, ricercando e studiando tutti i legami famigliari che si sono evoluti nel

tempo. In definitiva è un’attività di ricerca intensiva, accurata e che richiede non solo molta pazienza, ma anche capacità di sintesi e analisi non comuni. Quando le informazioni iniziano a essere molte e le fonti a sovrapporsi tra loro, blocco note e penna non bastano più.

Ecco quindi che entra in campo Gramps, un programma Open Source che vi aiuta nella ricostruzione del vostro albero genealogico. Compatibile con Linux, Mac e Windows, oltre a essere disponibile per diverse distribuzioni, lo troviamo alla pagina ufficiale http://gramps-

project.org/download/. Gramps è stato creato da genealogisti di professione che, grazie alla loro lunga esperienza nel settore della ricerca, hanno dato vita a un programma altamente affidabile. Prima di iniziare, però, è opportuno

“Gramps è stato creato da genealogisti di professione ed è quindi affidabile e preciso”

considerare alcune buone pratiche di ricerca e dedicare un paio di minuti a tracciare le linee base del vostro albero genealogico, seguendo tre semplici e veloci passaggi:1 Ricerca: trovare tutte le informazioni inerenti alla vostra

famiglia, partendo magari dal luogo in cui i vostri avi vivevano o si sono sposati.2 Registrazione: prendere scrupolosamente nota di qualsiasi

informazione che trovate.3 Pubblicazione: realizzare documenti e relazioni che potete

condividere facilmente con altre persone.Quasi sicuramente, la ricerca e la registrazione saranno fonte di numerose informazioni e quindi dovrete dedicargli più tempo. La regola d’oro della genealogia rimane comunque una: fare in modo che tutti i documenti raccolti siano verificabili e oggettivi. Chiunque può creare un albero genealogico basato su supposizioni e prove soggettive. Ben diverso, invece, fare affidamento su riscontri scientifici. Per fortuna Gramps vi renderà la vita molto più semplice, perché il suo compito è proprio ottimizzare l’organizzazione dei lavori di ricerca, registrazione e pubblicazione, diventando così un insostituibile assistente.

I primi passiAlla fine di questo articolo, creerete un albero genealogico di esempio della famiglia Rossi, ma ovviamente l’intento è darvi sufficienti informazioni per usare il programma ricostruendo la vostra genealogia. Dopo aver lanciato Gramps, fate click su Alberi genealogici e poi sul pulsante Nuovo, quindi aggiungete il nome “Famiglia Rossi”. Adesso selezionate Carica albero genealogico, in modo che venga mostrata la finestra principale. Sulla sinistra sono presenti un elenco di categorie, ad esempio Persone, Relazioni, Famiglie e molte altre. Quando cliccate su una di esse, la visuale e la barra degli strumenti cambiano per riproporre le opzioni dedicate al menu che avete scelto. Per creare un albero genealogico si può partire da qualsiasi parente, ma nel vostro caso inizierete da Giovanni Rossi, l’ultimo della famiglia.

Create una fonteIl primo elemento da cui partire è anche il più semplice. Basterà infatti intervistare l’ultimo esponente della famiglia, da cui poi documenterete le parentele più prossime. Se siete voi stessi, basterà che facciate affidamento sulla memoria e vi auto intervistiate. Selezionate la voce Fonti presente nel menu di sinistra, quindi selezionate l’icona a forma di +, denominata Aggiungi. Si apre così l’editor della nuova fonte, in cui inserire tutte le informazioni che otteniamo nel colloquio con Giovanni. Nel campo Titolo scrivete “Intervista a Giovanni Rossi” e in autore inserite “Giovanni Rossi”. In pratica vi state auto intervistando. Nel campo Note scrivete tutte le informazioni rilevanti che

emergono, quindi premete il pulsante OK per confermare. In qualsiasi momento se ne presentasse la necessità, potrete sempre modificare l’intervista facendo doppio click sulla scheda “Intervista a Giovanni Rossi” che trovate sotto la voce Fonti.

Aggiungete una personaAl centro di ogni albero genealogico ci sono sempre le persone, quindi aggiungete il vostro personaggio principale. Sì, avete indovinato, è sempre lui: Giovanni Rossi. Visto che tutte le informazioni che avete in mano derivano dall’intervista fatta a Giovanni, dovete spostare la vostra fonte in una sezione di Gramps dove poter condividere i dati anche da altri punti di vista. Nella barra degli strumenti premete Appunti per aprire l’omonima finestra, quindi spostate al suo interno la scheda “Intervista a Giovanni Rossi” che avete nel menu Fonti. Visto che la sorgente è ora memorizzata negli appunti, potete anche chiudere la finestra. Adesso selezionate il menu Persone e premete il pulsante Aggiungi presente nella barra degli strumenti. Immettete quindi i seguenti dati:

Nome: Giovanni Cognome: Rossi Sesso: Maschio

A questo punto è necessario citare le fonti da cui sono state ottenute le informazioni. Cliccate sulla scheda Citazione fonti quindi, dalla barra degli strumenti di Gramps, selezionate la funzione Appunti, aprendo così la finestra dove avete precedentemente importato le informazioni ottenute dall’intervista di Giovanni. Trascinate “Intervista a Giovanni Rossi” nel campo Citazione Fonti, in modo da aprire un’ulteriore scheda dedicata. Nella parte inferiore, titolata Fonti informazioni condivise, notate come siano già presenti i dati dell’intervista. Nella zona superiore, invece, avete a disposizione nuovi campi da riempire. Potete aggiungere la data in cui è stata fatta l’intervista e il livello di confidenza che si attribuisce alle informazioni ottenute. Mettete quindi Molto alta. Adesso, per dare vita all’albero genealogico, è opportuno aggiungere una foto di Giovanni. Sempre nel menu Persone di Gramps, fate doppio click sulla scheda Rossi, Giovanni, quindi entrate in Galleria. Premete l’icona a forma di + sinonimo di Aggiungi e cercate nel vostro disco fisso una foto da associare alla cartella di Giovanni. Ricordate poi di aggiungere le note sulla provenienza dell’immagine nella scheda Citazioni fonti, presente nell’Editor riferimento oggetto multimediale.

Mediante l’opzione Vista ascendenza, avete una visuale chiara del diagramma genealogico

Quante più persone aggiungete all’albero genealogico, maggiori informazioni dovete inserire. Tra queste, le foto di ogni parente sono molto importanti per accomunare un nome a un volto e quindi ricordare ancora meglio i dati importanti. Gramps non memorizza le immagini, ma solo il percorso scelto nel momento in cui le avete aggiunte. Per evitare di perdere tempo nel cercarle tra gli anfratti dell’hard disk, vi consigliamo di dedicare una cartella alle sole foto da utilizzare. Ricordate: essere precisi è il miglior approccio alla ricerca genealogica!

Cartella dedicata

Prova la tua rivista anche in digitaleProva la tua rivista anche in dioitale

Inoltre…

Il database perfetto

Libertà pura

Cambia desktop!

TizenIl futuro dei dispositivi mobili è sempre più Open Source

AVM Fritz!Box 3390 6 antenne per la massima velocità wireless a 2,4 e 5 GHz in contemporanea

Le applicazioni Web sono più veloci, scalabili e sicure se usi MariaDB

Scopri Trisquel, la distro più fedele ai dettami del Free Software

Scegli l’ambiente grafico giusto per look e funzionalità!

Diventa protagonista nel mondo Linux

∆ Italo Vignoli di Document Foundation ci parla del LinuxDay 2013 ∆ Usare iSCSI

Pro Raspberry Pi Streaming audio e video in casa

AccAdemiA del codice

lightworks Effetti speciali e strumenti per l’editing professionale a tua disposizione

gnome 3Accedi alle opzioni avanzate con Frippery e Gnome Tweak Tool

Ruby on Rails Il framework Web senza difettiFirefox OS Scopri l’emulatore e le sue APIAndroid Gestire texture e touchscreen con OpenGLConcetti Le basi della programmazione a oggetti

programmare!

Linu

x Pr

o 13

3- M

ensi

le -

€5,

90 -

CHF

13,

60

Tari

ffa

r.O

.C. -

PO

sTe

iTal

iane

sPa

- a

bb. P

OsT

. - D

.l. 3

53/2

003

(CO

nv. i

n l.

27/

02/2

004

n. 4

6) a

rT. 1

, CO

mm

a 1,

DCb

mil

anO

- Di

sTri

buTO

re: P

ress

-Di,

mil

anO

L'Accademia del Codice ti svela tutti i misteri dell'arte del coding

LXP_133_cover 3.indd 1 17/09/13 14:41

002_003_LXP_146_sommario 3 22/09/14 15:22

Page 6: 10_ottobre2014

NewsdeskOgni mese tutte le novità dal mondo delle aziende e della comunità Open Source

4 Linux pro 146 Linux pro 135 TM

Se hai news da segnalarci o dei commenti scrivi a [email protected]

Kernel Linux

Linus Torvalds è emerso dal proprio rifugio a portland per annunciare che è finalmente disponibile Linux

3.16, dall’eccentrico nome in codice Shuffling Zombie Juror. La notizia giunge con una nota di sollievo da parte dello stesso Torvalds che, in una mailing list, ha dichiarato: “Sebbene all’inizio il 3.16 fosse un po’ instabile, la situazione è nettamente migliorata e non è stato necessario realizzare ulteriori versioni release candidates, come avevo temuto solo un paio di settimane fa”. Le preoccupazioni di Torvalds erano dovute suprattutto alle dimensioni di queste versioni, che stavano diventando sempre più grandi, invece di ridursi. infatti, come scriveva in un messaggio precedente, a proposito della rC6: “Settimana dopo settimana, ci

avviciniamo a quella che dovrebbe essere l’ultima rC. purtroppo però non tutto sta andando come previsto. infatti la rC5 è più grande della precedente. Dato che la rC4 era piuttosto piccola, non me ne sono preoccupato più di tanto, ma ora che è stata pubblicata la rC6, ci accorgiamo che è più grande della rC5. problema non trascurabile, visto che non dovrebbe succedere”. per fortuna, è andato tutto a posto nella versione finale della 3.16, che porta con sé diverse nuove caratteristiche. per esempio c’è il supporto per il kernel Samsung ArM SoC e per la piattaforma di sviluppo Jetson TK1 ArM. Anche le tecnologie nVidia hanno subìto diversi miglioramenti, grazie al supporto per i processori Tegra K1 e per le Gpu Kepler. insomma, il supporto per ArM ha fatto un notevole passo avanti, compreso

quello per il Cherryview di intel. Sono arrivati anche i driver per il modem nokia n900, i miglioramenti per quelli di Sony-HiD e i nuovi per i dispositivi Cirrus, realtek e Analog e perfino per i controller delle playStation 3 e 4. Ci fa molto piacere trovare l’implementazione di certe correzioni del codice che permettono al mouse Mad Catz r.A.T 7 di interagire perfettamente con Linux e ora le schede grafiche AMD radeon vanno decisamente più veloci. il nuovo kernel sarà presente in molte delle distribuzioni principali. per esempio è probabile che ubuntu 14.10 si baserà su Linux 3.16. Anche Debian 8, nome in codice “Jessie”, si baserà sullo stesso kernel. Josh Boyer, che fa parte del team di sviluppo del kernel Fedora, ha dichiarato che, di sicuro, o quasi, la versione 21

di quel sistema operativo adotterà Linux 3.16. Se però non vogliamo aspettare tanto, possiamo installarlo personalmente, scaricandolo all’indirizzo https://www.kernel.org. Se siamo utenti ubuntu o Mint, usiamo invece il codice che troviamo all’indirizzo http://bit.ly/lxfupgradekernel, per la versione a 32 bit. Se preferiamo quella a 64 bit, sostituiamo “i386” con “amd64” nel codice. Comunque, non c’è riposo per gli sviluppatori. infatti, ora che è stata rilasciata la versione 3.16, l’attenzione si è già spostata sulla 3.17, con la quale dovrebbe arrivare il supporto all’ACpi 5.1. Così si spianerà la strada a questa interfaccia nei dispositivi ArM. ovviamente ci saranno un sacco di altre novità, come la compatibilità con un numero sempre maggiore di dispositivi, tra cui il processore Braswell di intel.

È arrivato Linux 3.16

Con il nuovo kernel Linux, il supporto per i dispositivi ARM ha fatto un notevole passo avanti

Il nome in codice del nuovo kernel di Linux è bizzarro quanto inquietante: zombie? Speriamo sia più reattivo di così!

004_LXP_146_news 4 21/09/14 16:41

Page 7: 10_ottobre2014
Page 8: 10_ottobre2014

Servizi di archiviazione

Dallo scorso mese di settembre è disponibile la nuova versione della distribuzione

OpenStack di SUSE, denominata Cloud 4, progettata per la creazione di cloud privati Infrastructure-as-a-Service (IaaS). Basata su Icehouse, questa ultima versione incorpora il supporto completo Ceph, la piattaforma di archiviazione distribuita. Oltre a ciò, SUSE Cloud 4 vanta anche funzionalità VMware avanzate, una scalabilità migliorata e tutti gli strumenti necessari per una più facile implementazione di OpenStack. In tal modo, gli investimenti già fatti dalle aziende nel campo dell’IT verranno sfruttati ancor più efficacemente. Gianni Sambiasi, Sales Manager di SUSE Italia, ha colto l’occasione per dichiarare che: “con SUSE Cloud, SUSE ha assunto un ruolo leader nel

settore, al fine di rendere una distribuzione OpenStack standardizzata installabile nei data center aziendali moderni. SUSE Cloud consente di implementare in modo semplice e conveniente un’infrastruttura cloud privata con hypervisor misti. L’aggiunta delle funzionalità di storage distribuito Ceph aumenta inoltre il valore e la flessibilità di SUSE Cloud in quasi tutte le aziende”. Fondamentale in questo tipo di operazione è il supporto fornito alle aziende per installare facilmente un cloud privato basato su standard aperti, grazie all’apposito framework. Uno dei punti di forza di Cloud 4 è quello di essere la prima distribuzione aziendale con installazione e configurazione automatizzata ad alta disponibilità di servizi cloud OpenStack. In tal modo si garantisce il funzionamento continuo delle installazioni dei

cloud privati e l’adesione agli SLA (Service Level Agreement) a livello aziendale. La presenza di più hypervisor supportati nell’ambiente cloud, tra cui KVM, Xen, Microsoft Hyper-V e VMware vSphere, consente una maggiore scelta e interoperabilità nella progettazione del cloud stesso. I vantaggi che derivano dall’adozione di questo sistema sono di carattere economico,

con la riduzione dei costi e un migliore sfruttamento degli investimenti VMWare, dovuto a una integrazione più efficace tra gli ambienti esistenti e OpenStack. Inoltre, la distribuzione dei carichi di lavoro risulta semplificata, con livelli maggiori di scalabilità e di automazione. In pratica, con la standardizzazione della distribuzione di database, di bilanciamento del carico e di firewall-as-a-service, gli utenti non hanno più l’onere di doverli gestire e configurare autonomamente. Il miglioramento della scalabilità delle applicazioni è dovuto a una maggiore integrazione tra il servizio che automatizza il controllo e il coordinamento di più macchine virtuali e tutti gli altri servizi cloud, come il calcolo, l’archiviazione e il networking. Per far conoscere meglio i progressi compiuti da SUSE Linux, vengono organizzati in tutto il mondo gli Expert Days, workshop dedicati ai professionisti dell’ICT. Nel nostro Paese si terranno a Roma il prossimo 4 novembre e a Milano il 6 novembre. Il tema principale di questa edizione sarà lo Zero Downtime. Per maggiori informazioni possiamo consultare la pagina www.suse.com/events/slef-2014.

SUSE Cloud 4

Il 4 e il 6 novembre, rispettivamente a Roma e a Milano, si terranno i SUSE Linux Expert Days

SUSE Cloud 4 di SUSE è decisamente lo strumento ideale per creare cloud privati in modalità Infrastructure-as-a-Service con una notevole ottimizzazione delle risorse

Newsdesk

6 LINUX PRO 146

006_007_LXP_146_news 6 22/09/14 15:22

Page 9: 10_ottobre2014

NewsdeskInform

azione a cura di Studio Storti Srl

E’ noto l’enorme successo avuto da ZeXtras con ZeXtras Suite, il prodotto che espande Zimbra OpenSource con funzionalità enterprise come backup a caldo, mobile push, hsm, chat, junior admin etc... ed ora questa possibilità, prima riservata a poche aziende con ingenti capitali da investire in ricerca e sviluppo, si espande a tutti

grazie alla nascita di OpenZAL, in contemporanea al rilascio di Zimbra 8.5.OpenZAL è un layer di astrazione per Zimbra Collaboration che consente a tutti di scrivere facilmente estensioni o integrazioni di Zimbra; mette a disposizione una serie di API per integrarsi ad ogni livello e con ogni versione di Zimbra occupandosi di mantenere coerenza e compatibilità con tutte le versioni, dalla 6.0.7 all’ultima disponibile.Non sarà più necessario compilare in decine di versioni differenti e rincorrere le modifiche introdotte mensilmente nel codice di Zimbra. OpenZAL distribuito sotto licenza GPLv2, è un progetto nato e finanziato da ZeXtras che ha riversato quattro anni di know-how nell’integrazione con Zimbra per favorire la nascita e lo sviluppo di un ecosistema di estensioni ed integrazioni che rendano Zimbra Collaboration sempre più completo e integrato grazie alle comunità di sviluppatori di progetti OpenSource.

Novità e sorprese per il mondo degli utilizzatori di Zimbra con il rilascio della versione 8.5, la prima e attesissima della nuova gestione di Zimbra Inc. con una grande rivoluzione: il cambio di licenza del prodotto!Zimbra è un prodotto dual-license, distribuito sia in versione commerciale-proprietaria che in versione OpenSource. Fino alla versione 8 la licenza applicata era la ZPL (Zimbra Pubblic License) ovvero una MPL (Mozilla pubblic License) modificata per garantire ulteriori diritti all’azienda.Questa discussa licenza, non è mai stata iscritta nell’elenco delle licenze

“OSI” in quanto, non è mai stata ritenuta una licenza OpenSource completamente aderente alla definizione.Oggi, dalla versione 8.5 di Zimbra, il core sarà rilasciato sotto licenza GPLv2 mentre, la parte di interfaccia sotto CPAL v1, per riservarsi l’ulteriore diritto di attribuzione.La scelta in questo caso ha varie interpretazioni e risvolti per gli utenti di Zimbra.Chi vuole pensare male, rispolvererà il discorso che la precedente ZPL non era compatibile con la maggior parte del codice OpenSource di terze parti; o che si tratta solo di una strategia di marketing per dare l’impressione di essere “veramente Open” dopo un periodo di governo VMware in cui la versione OpenSource di Zimbra, veniva spacciata come la “versione di prova”.Chi invece, crede nei risvolti positivi, guarderà solo alle opportunità di questo cambiamento.

ZIMBRA GPL:SI APRE UN MONDO DI POSSIBILITÀ!

Passando alla GPL, si apre un mondo di possibilità a terzi per espandere, integrare e migliorare il prodotto, nella sua versione OpenSource.

pen

SUITEwww.openzal.org - www.zextras.com

Android Journal

Tutti i segreti di ChromecastAndroid Journal ci dà tutti i consigli per muovere i primi passi e imparare a usare Chromecast nel modo migliore. Per esempio scopriremo come visualizzare le presentazioni di PowerPoint di Microsoft sul grande schermo, oppure, quali sono i videogiochi più divertenti, attualmente disponibili, per non parlare dei canali di news, gratuiti e a pagamento, a cui potremo accedere. Invece, nell’esauriente tutorial, vedremo come installare la chiavetta e i principali trucchi per farla funzionare nel modo più efficiente. Ovviamente, oltre a ciò, troveremo le recensioni degli ultimi modelli di smartphone Android e tante pagine di tutorial che ci faranno diventare sempre più esperti di questo meraviglioso universo. LXP

S e già non l’abbiamo fatto, questo è il momento giusto per fare un bel salto nella nostra edicola di fiducia e

comprare l’ultimo numero di Android Journal. Il motivo è molto semplice: in questa uscita troviamo un interessantissimo articolo di copertina che ci parla in modo approfondito di Chromecast, la chiavetta magica HDMI che ci permette di vedere sul televisore di casa i film in streaming. In pratica, potremo collegarci con Google Movie, alla videoteca di Infinity e a numerosi altri servizi simili per godere di tutto il materiale disponibile, comodamente seduti sulla poltrona del soggiorno. Sempre con Chromecast potremo anche giocare e lavorare da casa, grazie alle periferiche wireless che si collegano con la chiavetta. In ben nove pagine,

006_007_LXP_146_news 7 22/09/14 15:22

Page 10: 10_ottobre2014

FAQ OIN OIN FAQ

8 Linux pro 146 Linux pro 146 9

D OK, dimmi che cos’è la Open Invention Network (OIN)

R La open invention network è un’entità unica: è un patto di non aggressione sui brevetti

sottoscritto da oltre 900 partecipanti e sostenuto finanziariamente da Google, iBM, nEC, philips, red Hat, Sony e SuSE.

D Oh. Per un momento ho creduto che stessimo finalmente pubblicando un articolo su uno dei

personaggi di Tolkien. Il nome Oin, quindi, non si riferisce a un nano?

R no, certo che no. oin è un’iniziativa collaborativa che favorisce l’innovazione nell’open Source

e in Linux specificamente, mettendo in campo un portafoglio di oltre 900 applicazioni e brevetti strategici di livello mondiale e un accordo di licenza unico e non soggetto a royalty. in sé, questo pacchetto di brevetti vale una fortuna (nell’ordine di centinaia di milioni di dollari); ma qualsiasi persona o impresa può accedere gratuitamente ai brevetti di oin, a patto che

applicazioni, nonché la creazione di invenzioni originali. Ciò conferisce a oin la libertà di concentrarsi sulla proprietà intellettuale strategica e di acquistarne i diritti quando lo ritiene opportuno.

D Mi sembra giusto. Quali tipi di aziende hanno ottenuto finora la licenza OIN?

R oin ha raccolto l’adesione di un gran numero di grossi operatori del settore tecnologico. Fra essi

vi sono aziende che operano su internet quali Yahoo e Mozilla; operatori leader delle reti come Verizon, Juniper networks e Cisco; imprese che si occupano di social media come Twitter, Dropbox e Wikimedia; operatori del settore cloud tra cui rackspace, united Stack e pistonCloud; e sostanzialmente tutte le principali distribuzioni di Linux.

D Perché OIN è necessario? Una bella controversia sui brevetti non piace a tutti?

R purtroppo ci sono aziende che tentano di sfruttare la proprietà intellettuale per soffocare la

si impegni a non intraprendere azioni legali contro alcuno relativamente all’insieme dei pacchetti software denominati ‘Linux System’. il titolare della licenza ha inoltre accesso gratuito ai brevetti Linux System degli oltre 900 altri titolari. in sostanza, ogni titolare di licenza si impegna a rispettare il patto di non aggressione sui brevetti nell’ambito di Linux. Con la licenza, anche un’azienda che non possiede brevetti propri può accedere all’intero portafoglio di brevetti di oin, senza alcuna restrizione sul loro utilizzo.

D Sembra tutto molto bello e molto altruistico… ma OIN non ci guadagna niente?

R il mandato di oin è tutelare la libertà di scelta e favorire una sana e leale concorrenza nei

mercati in cui viene utilizzato Linux. L’obiettivo di oin è proteggere Linux con una sorta di no-fly zone relativa alle dispute sui brevetti; il guadagno non rientra in questo ambito. Le aziende che fanno parte di oin elencate all’inizio forniscono i fondi per il suo funzionamento e finanziano l’acquisto di brevetti e

OINEcco come affrontare i “patent troll” al fianco di un’originale comunità

Alcune domande su...

008_009_LXP_146_LXF187.woe 8 21/09/14 16:41

Page 11: 10_ottobre2014

FAQ OIN OIN FAQ

8 Linux pro 146 Linux pro 146 9

concorrenza. oin è stato creato per tutelare gli sviluppatori, i distributori e gli utenti di Linux dalle entità non produttive (i cosiddetti ‘patent troll’) e dalle aziende ostili a Linux e all’open Source, che invece di tentare di superare in innovazione sistemi come Android misurandosi sul mercato, tentano di far valere in modo aggressivo i diritti di proprietà intellettuale.

D Quali conseguenze possono avere i brevetti di qualità scadente sulla comunità di Linux?

R nell’ultimo decennio abbiamo visto l’adozione dell’open Source e di Linux in particolare

trasformarsi in un motore di innovazione. È qualcosa con cui le persone entrano in contatto ogni giorno: bancomat e banche online, smartphone e app, motori di ricerca, reti pubbliche e private e un numero sempre crescente di sistemi operativi per computer. i server di Linux sono le fondamenta del cloud computing. Linux e le innovazioni che esso ha consentito sono ormai straordinariamente diffusi.rileviamo però l’esistenza di aziende che, in un maldestro tentativo di rallentare o arrestare l’avanzata di Linux, non avendo idea di come usare l’open Source a proprio vantaggio o di come gestire l’integrazione tra le tecnologie open Source e proprietarie, tentano di sfruttare i brevetti (compresi quelli di qualità scadente) per influenzare indebitamente il mercato o sbilanciare la concorrenza. Le conseguenze di questi tentativi sono spesso in contraddizione con lo scopo originario del sistema dei brevetti, che era e rimane rendere possibile l’innovazione.

D Scherzi a parte, tutto questo sembra veramente orribile. Come funziona?

R Sempre più spesso, le aziende sfruttano i loro brevetti attraverso azioni legali. Esistono due

tipi diversi di azione legale sui brevetti. La prima oppone due entità produttive, cioè due aziende che producono o distribuiscono prodotti o servizi sulla base delle loro proprietà intellettuali. in questi casi, un’azienda fa causa a un’azienda concorrente accusandola di aver violato uno dei suoi brevetti nello sviluppo di un prodotto o di un servizio che l’ha privata di una quota di mercato. Molte entità produttive intraprendono cause per violazione di un brevetto in buona fede, non ritenendosi in grado di recuperare i costi sostenuti per la ricerca e lo sviluppo sul mercato. Altre, dopo aver perso la battaglia per i clienti, ricorrono allo sfruttamento di brevetti di qualità scadente come ultima risorsa per indebolire la concorrenza. Dati i tempi estremamente ristretti che caratterizzano il ciclo di vita dei software, un’ingiunzione che impedisca a un programma contestato di accedere al mercato per sei mesi o un anno può costare notevolmente cara a un piccolo concorrente.

D E dove entrano in scena questi insopportabili patent troll?

R Ci stavo arrivando. Esistono anche cause legali intentate da un’azienda che non produce né

dell’arte allo united States patent and Trade office (l’ufficio brevetti uSA). L’uSpTo invita il pubblico a collaborare alla procedura di esame dei brevetti in due modi essenziali. il primo consiste nel presentare documentazione sullo stato dell’arte relativo a brevetti o applicazioni esistenti, in modo da dimostrare che uno specifico brevetto o applicazione non è nuovo. il secondo consiste nel creare pubblicazioni difensive relative a invenzioni completamente nuove, così da garantire che queste invenzioni non possano essere brevettate successivamente da altri. per entrambi i metodi la comunità ha a disposizione risorse che facilitano la procedura di partecipazione.

D Sembra un’ottima idea: puoi farci qualche esempio concreto?

R Certo. Sono nate diverse iniziative volte a illustrare lo stato dell’arte relativo ad aree

specifiche con il metodo del crowdsourcing e oin le sostiene tutte. Anzi oin, insieme alla Linux Foundation e al Software Freedom Law Center, sponsorizza Linux Defenders (www.linuxdefenders.org). Questo progetto collabora con la comunità del Software Libero e open Source specificamente allo scopo di produrre pubblicazioni difensive. Quando un inventore vuole documentare un’innovazione senza ricorrere a un brevetto, gli aderenti all’iniziativa possono creare una pubblicazione difensiva. L’invenzione diviene quindi di dominio pubblico e non può essere brevettata da altri. Entra inoltre a far parte di un database relativo allo stato dell’arte all’interno del quale l’uSpTo effettua abitualmente le sue ricerche, il che contribuisce a prevenire tentativi successivi di brevettare l’innovazione in questione.Molte aziende utilizzano le pubblicazioni difensive in combinazione con un paio di brevetti, in modo da potenziare le proprie difese. per la comunità di Linux, noi utilizziamo questi documenti legali per bypassare la creazione di brevetti di qualità scadente e garantire che gli inventori abbiano un accesso illimitato alle loro invenzioni. L’iniziativa Linux Defenders è nata per collaborare a titolo gratuito con la comunità di Linux e dell’open Source alla catalogazione delle invenzioni e al loro inserimento nei database più importanti in cui gli esaminatori dell’ufficio brevetti si informano sullo stato dell’arte. partecipando al progetto Linux Defenders, sviluppatori, distributori e utenti possono svolgere un ruolo attivo nel proteggere se stessi e la comunità dalla minaccia rappresentata dai brevetti di qualità scadente. L’iniziativa stimola i membri della comunità di Linux a partecipare, contribuendo a ridurre il numero dei brevetti di qualità scadente che potrebbero ostacolare la crescita di Linux.

D OK, e la procedura di adesione per entrare a far parte della comunità di OIN è complicata?

R Entrare a far parte della comunità di oin mediante una licenza è molto semplice.

L’accordo di licenza è sostanzialmente identico per tutti, dalle grandi aziende a quelle esordienti fino ai singoli individui: potete leggerlo all’indirizzo www.openinventionnetwork.com. LXP

vende nulla contro un’entità produttiva per la violazione di un brevetto di qualità scadente. Le cause intentate da un querelante che non produce né vende alcun prodotto sono comunemente denominate cause dei patent troll. in passato, questi troll o Patent Assertion Entities prendevano di mira soprattutto aziende grosse e danarose. oggigiorno invece sono sempre più spesso le piccole e medie imprese a vedersi citare in tribunale. Questo può causare dei problemi, specie quando un’azienda è troppo piccola o troppo povera per difendersi in tribunale. Spesso i patent troll si ‘nutrono’ principalmente di brevetti di qualità scadente, che possono essere acquistati relativamente a buon mercato ma possono essere usati efficacemente per minacciare le imprese produttive, costringendole a sottoscrivere un accordo.

D Brutta faccenda. Che cosa si può fare per risolvere il problema dei brevetti

di qualità scadente?

R Secondo oin, per impedire che i brevetti di qualità scadente creino problemi occorre

anzitutto far cessare la concessione di tali brevetti. A tale scopo, oin intende sfruttare il concetto di ‘arte prima’ o ‘stato dell’arte’. Al centro del sistema dei brevetti nella maggior parte del mondo vi è l’idea che si può concedere un brevetto solo su qualcosa di nuovo. in altre parole, non si può brevettare un’innovazione o un progresso che sia già documentato da altri in un qualsiasi settore. ‘Stato dell’arte’ è un’espressione legale che comprende tutte le informazioni disponibili al pubblico prima di una certa data, che dimostrano che l’invenzione non è nuova. Se tali informazioni erano disponibili prima della presentazione della richiesta di brevetto, il brevetto non dovrebbe essere concesso. il pubblico di oggi è un ambito immenso, perciò in pratica viene considerato quale ‘stato dell’arte’ il materiale documentato, organizzato e accessibile all’esaminatore dell’ufficio brevetti. Se questi esaminatori non riescono a tenere il passo con le novità, non hanno modo di respingere le idee che non sono nuove. nel settore informatico questo costituisce un problema particolare, sia perché l’innovazione procede molto rapidamente, sia perché non esiste un ambito unico in cui andare alla ricerca di informazioni sulle nuove invenzioni. Anche dove vengono registrate numerose nuove idee, per esempio nei repository pubblici, buona parte del codice non è corredato da una documentazione che descriva la sua funzione effettiva. per esempio, nemmeno una perlustrazione completa di Gitorius e GitHub permetterebbe a un esaminatore di accertare lo stato dell’arte attuale, nemmeno se questi avesse il tempo di controllare tutti i contenuti.

D In che modo la comunità di Linux può facilitare l’accertamento dello stato dell’arte da parte

degli esaminatori dei brevetti?

R La comunità di Linux è abituata a lavorare insieme per risolvere i problemi comuni; e uno

di questi è come rendere più accessibile lo stato

008_009_LXP_146_LXF187.woe 9 21/09/14 16:41

Page 12: 10_ottobre2014

10 Linux pro 146 Linux pro 146 11

Metti il turbo a Linux

Rispetto alla maggior parte dei sistemi operativi proprietari, Linux possiede distribuzioni relativamente veloci già per impostazione predefinita.

i programmatori, in ogni fase dello sviluppo del kernel e delle singole applicazioni, ce la mettono tutta per ottimizzare le prestazioni di ogni software in modo che si interfacci a dovere con l’hardware presente. Questo, peraltro, è il motivo per cui è possibile utilizzare Linux anche su macchine obsolete e con poche risorse. Tuttavia, nonostante una buona situazione di partenza, c’è ancora spazio per migliorare. infatti, gli sviluppatori Linux devono fare appello a un vasto pubblico e quindi garantire la

compatibilità con una larga gamma di hardware. Ciò significa che inizialmente la vostra distro non sarà configurata con i parametri ottimali per l’hardware che montate. inoltre, molte distribuzioni sono anche troppo cariche di software e altri

servizi che possono renderle più lente del previsto. La buona notizia è che comunque la maggior parte dei sistemi vi permette di personalizzare la propria configurazione, consentendo di sbarazzarsi dei componenti non necessari. infatti, per ottimizzare

una distro è necessario modificare alcuni componenti, facendo poi a meno di altri. Mettere a punto un computer Linux per renderlo più rapido non è un’operazione complessa, soprattutto grazie alla natura open Source del

software su cui metteremo mano. Tuttavia, il procedimento richiede comunque una certa familiarità e conoscenza dei principali componenti di un sistema ed è qui che entriamo in campo noi. Vi guideremo nel trasformare la vostra distribuzione

in un cavallino rampante, il tutto a prescindere dal vostro livello di esperienza. inoltre, i nostri suggerimenti potranno essere seguiti sia sulle moderne macchine multi-core, sia sui più vetusti sistemi a singolo processore.

“La tipica distribuzione Linux è molto versatile e permette di essere personalizzata”

Linux Pro vi mette a capo dei box per perfezionare al massimo le prestazioni della vostra distro

Metti subitoil turbo a Linux!

10 Linux pro 146

010_017_LXP_146_LXF188.feat_speed 10 21/09/14 21:31

Page 13: 10_ottobre2014

10 Linux pro 146 Linux pro 146 11

Metti il turbo a Linux

Linux pro 146 11

Tutti amano utilizzare un computer veloce e questa sezione è dedicata proprio a mostrarvi alcuni trucchi essenziali per migliorare le prestazioni del vostro pC. non è necessario

essere particolarmente esperti per ottenere dei buoni risultati in questo senso. infatti ci sono alcune tecniche che possono essere messe in pratica anche dai principianti, così da rendere l’avvio del sistema molto più rapido. Sia che si utilizzi Linux in dual boot con un altro sistema operativo, sia che lo si usi in modalità singola, dopo aver installato la distro il processo di avvio verrà sicuramente interrotto dal bootloader Grub. per impostazione predefinita, la maggior parte delle distro desktop Linux mostrano Grub per un periodo di tempo che va dai 10 ai 30 secondi. uno dei modi più semplici per accelerare l’avvio è quindi ridurre questa pausa. Certo, se utilizzate sempre un sistema predefinito potete anche saltare il conto alla rovescia di Grub, tuttavia è un’operazione che non vi consigliamo. per modificare il tempo di attesa del bootloader, lanciate il terminale e aprite il file /etc/default/grub in un editor di testo tramite il comando:sudo nano /etc/default/grub

Questo lancerà il documento nell’editor nano in cui dovrete cercare la variabile GRUB_TIMEOUT, la quale definisce la durata della schermata di Grub. una volta trovata, sostituite il valore associato con un numero variabile tra cinque e tre, che corrisponde appunto alla durata della visualizzazione in secondi. Se impostate il fattore a 0, il conto alla rovescia verrà disattivato e sarà il sistema operativo predefinito ad avviarsi automaticamente. una volta salvato il file, usate il comando update-grub per aggiornarlo.

Gestire i processi di avviouna delle principali cause che allunga i tempi di avvio di un sistema è il lancio di applicazioni e servizi non necessari. Tuttavia, prima di iniziare a tagliare è molto meglio avere un quadro preciso di cosa succede nel momento in cui si avvia una distro. Bootchart è una semplice applicazione che permette di creare un profilo per il boot del sistema, con in più la possibilità di misurare i tempi di caricamento dei diversi servizi. A questo proposito è quindi possibile utilizzare Bootchart per identificare eventuali colli di bottiglia nel processo di avvio. il programma, infatti, registra tutte le attività e permette di accedere a un report preciso tramite un apposito file immagine. Troverete Bootchart nei repo delle principali distro Linux, tra cui ubuntu, Fedora, openSuSE e Mageia. utilizzate il gestore pacchetti per trovare e installare il pacchetto giusto, quindi riavviate il pC. Quando tornate nel desktop, puntate verso la cartella /var/log/bootchart. Qui troverete un’immagine con estensione .png, che contiene un’analisi dell’ultimo processo di avvio. Bootchart, infatti, crea un file con marcatore temporale per ogni avvio del sistema operativo. La prima parte dell’immagine elenca statistiche come la data del test, il nome della distro, la versione del kernel e le rispettive opzioni abilitate, così come il tempo necessario per avviare il sistema. Questo è poi seguito da due diagrammi che mostrano il carico della Cpu e l’attività del disco durante la procedura di avvio. Questa sezione contiene poi un certo numero

di linee, ciascuna etichettata con il nome dei singoli processi. Diverse barre terminano dopo un paio di secondi, mentre quelle che continuano fino alla fine raffigurano i servizi come il gestore di rete, Cron e il daemon CupS. L’immagine mostra anche i processi figli e li collega ai loro genitori con linee tratteggiate. Da qui è possibile trovare tutti i processi attivi e rimuovere quelli non necessari. per esempio, se stampate solo raramente è possibile disattivare CupS. inoltre, l’immagine aiuta anche a identificare i processi che prendono il controllo di tutte le risorse e costringono

altri servizi ad aspettare, bloccando di fatto il processo di avvio. ora che avete capito come il computer avvia i servizi, è il momento di plasmare il processo di lancio secondo le vostre esigenze. il modo più semplice per liberare risorse è fermare i processi indesiderati. La maggior parte delle distro Linux ha uno strumento che permette di visualizzare il processo di avvio e, nel caso, fermare i servizi che volete. ubuntu, tramite la funzione Applicazioni di avvio, permette di aggiungere o rimuovere tutti i programmi che volete lanciare nel momento in cui il desktop si attiva. per i boot più veloci, quindi, conviene disabilitare qualsiasi servizio non necessario. per impostazione predefinita, però, l’applicazione non visualizza l’intera gamma di applicazioni e servizi. per vedere anche quelli nascosti che non sono dotati di una Gui lanciate il terminale e passate alla directory in cui sono elencati tutti i servizi con cd /etc/xdg/autostart. Qui troverete i file relativi a tutte le applicazioni installate e in ciascuno di essi una variabile

Metti subitoil turbo a Linux!

Trucchi per utenti desktopAvvio veloce e applicazioni estremamente reattive

Di default, in Preferenze delle applicazioni d’avvio, non sono mostrati tutti i servizi attivi. Per rivelare il tutto è necessario modificare i singoli file in /etc/xdg/autostart

“Il modo più semplice per rendere l’avvio di una distro più veloce è disabilitare i processi inutili”

010_017_LXP_146_LXF188.feat_speed 11 21/09/14 21:31

Page 14: 10_ottobre2014

12 Linux pro 146 Linux pro 146 13

Metti il turbo a Linux Metti il turbo a Linux

12 Linux pro 146

che controlla se il servizio è elencato o meno nello strumento Applicazioni di avvio. È possibile modificare il valore predefinito di questa variabile all’interno di ogni file con: sudo sed --in-place ‘s/NoDisplay=true/NoDisplay=false/g’ *.

desktop Quando rilancerete lo strumento Applicazioni di avvio troverete diversi programmi che precedentemente non erano presenti, come Condivisione desktop, Condivisione documenti e via dicendo. A questo punto potete leggere le rispettive descrizioni e decidere se disattivarli. per disabilitare un servizio di avvio, selezionatelo, quindi togliete il segno di spunta sulla casella di fianco al suo nome. ricordate di non fare click su Rimuovi, così da poterlo riattivare in un secondo momento. inoltre non disattivate una voce di avvio automatico a meno di non sapere esattamente

cosa state facendo. il rischio, infatti, è di compromettere la stabilità del sistema. Se il pC non dispone di hardware Bluetooth e disattivate l’applet Bluetooth Manager, non succederà niente, ma se disabilitate Mount Helper, ubuntu non potrà più montare automaticamente i dispositivi rimovibili.

Disabilitate quello che non servei desktop moderni puntano molto sugli effetti visivi, così da rendere più affascinanti una serie di processi altrimenti scontati, come l’apertura e la chiusura delle finestre. Tuttavia, questi effetti non sono adatti a essere utilizzati su macchine con poche risorse e in questo caso devono essere disabilitati immediatamente. Ci sono poi alcune funzioni il cui peso dipende dalle circostanze. Facciamo l’esempio delle miniature di anteprima del file manager. Se apriamo una cartella con pochi file, la generazione delle thumbnail non sarà niente di particolare, ma se in quella stessa cartella ci sono centinaia di documenti, ecco che le risorse per soddisfare questo semplice effetto grafico diventerebbero importanti. per disattivare le miniature su una macchina basata

su Gnome, lanciate il file Manager e andate in Modifica D Preferenze. Qui passate alla scheda Anteprima e impostate il valore Mostra miniature su Mai. Gli utenti di ubuntu che poi vogliono modificare gli effetti del desktop, devono installare CompizConfig tramite l’istruzione:sudo apt-get install compizconfig-settings-manager compiz-

plugins-extra Allo stesso modo, chi usa Gnome, dovrà usare Gnome Tweak Tool. Lo trovate disponibile nei repository ufficiali delle distro desktop basate su Gnome (per esempio Fedora). Chi sfrutta rpM, invece, deve utilizzare il comando yum install gnome-tweak-tool, mentre gli utenti Debian sudo apt-get install gnome-tweak-tool. Se invece sfruttate KDE, entrate in Impostazioni di sistema e date un’occhiata all’impostazione relativa al desktop,

dove troverete le funzioni per disattivare gli effetti. Sempre con KDE è necessario disattivare le funzioni Nepomuk, Strigi e Akonadi, le quali consumano una buona quantità di memoria. per disabilitare Nepomuk e Strigi da Impostazioni di sistema, entrate nella sezione Ricerca desktop. per disattivare Akonadi, invece, spegnete il server Akonadi con sudo

akonadictl stop. Adesso aprite il file /~.config/akonadi/akonadiserverrc in un editor di testo e cambiate il parametro StartServer da True a False. Dal momento che Akonadi è profondamente legato al desktop KDE, quando si avvia qualsiasi applicazione basata su Akonadi stesso, il server si attiverà automaticamente. Alcuni widget, come KRunner e Plasma, utilizzano Akonadi e quindi dovrete disabilitare anche quelli. per disattivare KRunner premete Alt+F2 e fate click sull’icona raffigurante una chiave inglese. Adesso non vi resta che deselezionare Nepomuk Desktop Search e Instant Messaging Contacts, quindi dovrete ordinare al widget dell’orologio digitale di non far comparire il calendario degli eventi. per farlo, fate click destro sull’orologio e accedete a Impostazioni. Spostatevi nella scheda Calendario e togliete il segno di spunta da Mostra eventi. L’applicazione di indicizzazione apt-xapian-index velocizza alcune operazioni di ricerca, ma può avere un impatto negativo sulle prestazioni dei computer meno recenti. È possibile rimuovere liberamente questo pacchetto con sudo apt-get purge apt-xapian-index in quanto non è essenziale. Se state utilizzando una

1 Rimuovere le lingueL’output del comando sudo apt-get update ha tre tipi di righe: hit, ign e get. La maggior parte delle ign sono relative alle traduzioni. Se quindi siamo soliti usare un’applicazione in italiano, possiamo rimuovere gli aggiornamenti riferiti alle proprietà linguistiche. per farlo, aggiungete Acquire::Languages “none”; nel file /etc/apt/apt.conf.d/00aptitude.

3 Sfruttare apt-fastApt-fast, scaricando i pacchetti da più connessioni, può sostituire apt-get riuscendo ad accelerare gli aggiornamenti. prima di installare il pacchetto con sudo apt-get install apt-fast, aggiungete la ppA con sudo add-apt-repository ppa:apt-fast/stable. Lo script non è disponibile per l’ultima versione di ubuntu, quindi dovrete rifarvi ai pacchetti.

2 Usare i mirror miglioriSe usate Fedora, installate il plug-in fastesmirror con sudo yum install yum-plugin-fastestmirror che permette di valutare quale sia il mirror più veloce tra quelli disponibili. Chi usa ubuntu deve lanciare Software e aggiornamenti e selezionare Altro dall’area Download. Quindi, dal menu a discesa, fare click sul pulsante Seleziona server migliore.

Passo passo Installare le applicazioni al volo

“Gli effetti grafici delle distro non vanno molto d’accordo con i computer più vecchi”

010_017_LXP_146_LXF188.feat_speed 12 21/09/14 21:31

Page 15: 10_ottobre2014

12 Linux pro 146 Linux pro 146 13

Metti il turbo a Linux Metti il turbo a Linux

Linux pro 146 13

distro su un computer portatile è poi necessario considerare alcuni aspetti particolari. Dovete infatti sapere che in questo caso il vostro pC può essere considerato come due macchine diverse. Se doveste eseguire un benchmark sulle prestazioni, otterrete risultati diversi con la stessa distro. Questo perché i notebook sono progettati per ottimizzare le loro prestazioni in base al consumo di energia e quindi quando il computer è alimentato a batteria il portatile cercherà di prolungare la propria autonomia abbassando le prestazioni. È possibile ottenere un miglior controllo su questo processo con lo strumento TLP, vale a dire una utility avanzata per la gestione dell’alimentazione da riga di comando che cerca di applicare alcuni tweak per risparmiare la batteria, massimizzando così le prestazioni. potete installare TLP in ubuntu, aggiungendo il rispettivo ppA con sudo add-apt-repository ppa:linrunner/tlp, quindi, prima di installare il tool con sudo apt-get install tlp tlp-rdw aggiornate i repo con sudo apt-get update. Chi usa Fedora, invece, dovrà fare così:sudo yum localinstall --nogpgcheck http://repo.linrunner.de/fedora/

tlp/repos/releases/tlp-release-1.0-0.noarch.rpmsudo yum localinstall --nogpgcheck http://download1.rpmfusion.

org/free/fedora/rpmfusion-free-release-stable.noarch.rpmsudo yum install tlp tlp-rdw

una volta installato, avviate TLp con sudo tlp start. Anche se funziona in background, ci sono alcune impostazioni che potete applicare manualmente per sovrascrivere le impostazioni predefinite dello strumento, come attivare o disattivare il Wi-Fi e il Bluetooth su richiesta. potete modificare queste funzioni accedendo al file di configurazione di TLp che si trova in /etc/default/tlp. inoltre, gli utenti di ubuntu che vogliono sfruttare la scalabilità della Cpu del portatile possono installare CPUFreq con sudo apt-get install indicator-cpufreq. in questo modo, potrete controllare lo sfruttamento processore tramite l’indicatore nella parte superiore della barra dei menu.

Controllare il disco fissoAvete appena aggiornato il computer, aggiunto una tonnellata di banchi di rAM o un processore multi-core, ma non rilevate alcuna differenza nella velocità di avvio di applicazioni e servizi. probabilmente è perché non avete aggiornato un componente che incide moltissimo sui tempi di avvio, vale a dire il caro vecchio disco fisso. La maggior parte delle distribuzioni includono lo

strumento da riga di comando hdparm che può essere utilizzato per controllare e valutare il vostro hard disk. Supponendo che l’unità sia montata in /dev/sda, usate sudo hdparm -I /dev/sda per ottenere informazioni sul disco, compreso il regime di rotazione dei suoi piatti che di solito sta tra i 5.400 e i 7.200 per i dischi consumer. ricordate poi che più veloce è la rotazione e maggiore sarà la velocità di trasferimento. utilizzate il comando sudo hdparm -t --direct /dev/sda per misurare la velocità di lettura dei dati del disco in MB/s. per controllare la velocità di scrittura, invece, create un file con il comando dd, come dd if=/dev/zero of=readtest bs=8k count=500000. Questo mostrerà il tempo necessario per generare un file con la velocità media di scrittura del disco fisso (ricordatevi poi di rimuovere i 4 GB del documento appena creato). Questi parametri, insieme ad altri come la frammentazione del filesystem, hanno una grande influenza sulla velocità del computer. Quando si aggiorna il pC, quindi, tenete a mente che la tipica velocità di lettura/scrittura di un disco fisso tradizionale si aggira intorno a 120 MB/s, mentre quella di un SSD (Solid State Drive), di solito è superiore ai 200 MB/s.

Pulizie di primaveranel corso del tempo, una tipica distribuzione Linux diventa un serbatoio di dati non necessari, che a loro volta possono essere causa di notevoli rallentamenti del pC. Questo è il motivo per cui, oltre alle modifiche che vi abbiamo suggerito, sarebbe opportuno investire sempre un po’ di tempo nella pulizia del sistema. La vostra distro crea e memorizza le miniature in cartelle nascoste anche dopo che il file originale è stato rimosso. Con il passare del tempo, il loro numero può aumentare notevolmente, quindi vediamo come sbarazzarcene. puntate alla directory .cache/thumbnails/ e rimuovete i file anche nelle sotto cartelle. Se poi siete persone diligenti e avete mantenuto ben aggiornata la vostra distro, allora potreste avere un bel po’ di kernel obsoleti che non usate più. Questi possono essere tenuti in considerazione nel caso non si riesca ad avviare la

distro con il kernel aggiornato e sono elencati sotto la funzione Opzioni avanzate nel menu di Grub. per rimuovere i kernel inutilizzati, prima è necessario scoprire l’esatta versione in esecuzione tramite il comando uname -r. poi utilizzate il gestore pacchetti della distro per cercare tutti quelli che iniziano con “linux-image”, quindi rimuovete coloro che non corrispondono alla versione del kernel corrente. Gli utenti di Fedora possono usare il comando sudo yum remove kernel che rimuove automaticamente tutti i kernel inutilizzati. Chi usa ubuntu, invece, può utilizzare lo strumento Ubuntu Tweak. oltre a pulire la cache del sistema di gestione dei pacchetti, gli utenti di Fedora dovrebbero usare il comando sudo yum clean all per snellire Yum. Chi si serve di ubuntu, invece, può sfruttare sudo apt-get autoremove per rimuovere i pacchetti orfani, seguito poi da

sudo apt-get autoclean per eliminare i pacchetti parzialmente installati o quelli che non sono più presenti nel sistema.

Utilizzate il gestore applicazioni per installare BleachBit e liberare spazio sulla distro

Con il comando sudo hdparm -I /dev/sda lanciato su Ubuntu, potete conoscere tutti i dettagli di funzionamento del disco

010_017_LXP_146_LXF188.feat_speed 13 21/09/14 21:31

Page 16: 10_ottobre2014

14 Linux pro 146 Linux pro 146 15

Metti il turbo a Linux Metti il turbo a Linux

14 Linux pro 146

Le nozioni che vi abbiamo dato nelle pagine precedenti vi aiuteranno a ottenere una buona velocità di avvio con il minimo sforzo. Tuttavia possiamo andare ben oltre,

operando quindi alcune modifiche avanzate. prima di applicare questi hack è però importante ricordare che, se eseguiti con superficialità, possono causare non pochi danni alla configurazione del sistema. Cominciamo quindi con il rAM disk, vale a dire un filesystem basato sulla memoria che crea una zona di archiviazione direttamente nella rAM come se fosse una partizione del disco. il suo principale vantaggio è che un rAM disk è molto veloce. Visto che i dati al loro interno vengono cancellati quando si riavvia la macchina, un rAM disk è adatto solo per le applicazioni che necessitano ripetutamente di piccole aree di dati per la memorizzazione nella cache. prima di

crearne uno, utilizzate il comando free per liberare e controllare la quantità di rAM non utilizzata sulla distro. una volta fatto, create una cartella da utilizzare come punto di montaggio per il rAM disk tramite sudo mkdir /mnt/ramdisk e montatelo con: sudo mount -t tmpfs -o size=1024m tmpfs /mnt/ramdisk.

Questo creerà un rAM disk di 1 GB utilizzando il filesystem tmpfs progettato specificatamente per essere utilizzato su questo tipo di dischi. per assicurarsi che il rAM disk sia montato automaticamente ogni volta che si avvia la distro, dovrete aggiungere una nuova riga al file /etc/fstab. Apritelo in un editor di testo e inserite le istruzioni che seguono:tmpfs /mnt/ramdisk tmpfs nodev,nosuid,noexec,nodiratime,size

=2048M 0 0una volta creato il rAM disk, è possibile utilizzarlo per ospitare la cache del browser. Se utilizzate Chromium, tutto quello che dovete fare è modificare la voce di avvio per puntare al rAM disk con lo switch appropriato (--disk-cache-dir=”/mnt/ramdisk”). Se invece utilizzate Firefox, immettete il comando about:config nella barra degli indirizzi. Fate click destro da qualche parte sulla lista e selezionate Nuovo D Stringa. Quando vi viene chiesto il nome, scrivete browser.cache.disk.parent_directory e nel campo valore inserite il percorso in cui si desidera memorizzare la cache, come /mnt/ramdisk. Adesso individuate la voce browser.cache.disk.enable e assicuratevi che sia su True, altrimenti fatevi doppio click sopra per attivarla.

Controllo dello swapVi state chiedendo perché il pC è ancora lento? probabilmente perché la vostra distro sta utilizzando lo spazio Swap su disco rigido, che ha una velocità di lettura/scrittura più lenta rispetto alla rAM. Se il sistema dispone di memoria sufficiente per gestire qualsiasi cosa, si dovrebbe ridurre al minimo l’uso dello Swap. il parametro swappiness gestisce la capacità del kernel di spostare i processi di memoria fisica sul disco di Swap, che può quindi aumentare i tempi di risposta delle applicazioni

Hack avanzatiEcco cosa potete fare con un po’ più di immaginazione

Analizzare e ottimizzare il bootAbbiamo già parlato degli strumenti che la maggior parte delle distro integrano per limitare l’uso di applicazioni e servizi non necessari. Di seguito vedremo quindi i vari modi per ottimizzare ulteriormente l’avvio tramite Systemd. Si tratta di un demone per la gestione del sistema, che è stato progettato per sostituire init. Come quest’ultimo, è un demone master che ne gestisce altri. Le principali distro, come Fedora, Mageia e openSuSE, possiedono già Systemd, mentre altre, come Debian e ubuntu, hanno annunciato di volerlo integrare dai prossimi rilasci. Su una distro Systemd potete misurare il tempo di avvio tramite il comando systemd-analyze che mostrerà l’intervallo

necessario a caricare il kernel, i servizi e l’account utente. potete utilizzare systemd-analyze blame | head per avere accesso a un elenco cronologico di processi che incidono maggiormente sul sistema di avvio. L’istruzione systemd-analyze plot > boot.svg vi permetterà di visualizzare l’intera procedura di boot nel file immagine boot.svg, che all’occorrenza potrete aprire nel browser per vedere nel dettaglio l’intera catena dei processi.una volta identificato un servizio problematico è possibile mascherarlo. Quando si esegue questa operazione, il processo non può essere avviato con Systemd e, in sostanza, diventa invisibile. Se non si utilizza LVM, rAiD o dispositivi cifrati,

si possono mascherare tutti i servizi di storage di Fedora con sudo systemctl mask lvm2-monitor.service e sudo systemctl mask mdmonitor.service.

Potete gestire il servizio Systemd con il tool grafico Systemadm

Considerate l’utilizzo di uno strumento di benchmarking come Phoronix Test Suite, così da valutare le prestazioni del vostro PC regolarmente

010_017_LXP_146_LXF188.feat_speed 14 21/09/14 21:31

Page 17: 10_ottobre2014

14 Linux pro 146 Linux pro 146 15

Metti il turbo a Linux Metti il turbo a Linux

Linux pro 146 15

quando i processi traslocano dalla memoria in modo massiccio. il comando cat /proc/sys/vm/swappiness mostrerà l’attuale livello di swappiness fissato dalla vostra distro. il valore predefinito di ubuntu è 60, ma il parametro sarà in grado di accettare qualsiasi fattore compreso tra zero e 100. impostate il valore più basso, se volete evitare di eseguire lo swapping dei processi. infatti, se regolate il fattore su 0 il kernel eviterà di utilizzare questo sistema quanto più possibile. utilizzando il comando sudo sysctl vm.swappiness=10 è possibile modificare temporaneamente il valore swappiness a 10. Questo cambiamento verrà comunque attivato quando riavviate il computer. Se notate una buona velocizzazione nell’uso generale della vostra distro, potete memorizzare il valore modificando il file /etc/sysctl.conf in un editor di testo. Cercate il parametro vm.swappiness e cambiate il valore. Se non esiste, potete aggiungerlo (per esempio vm.swappiness=10).

RAM addizionale Se il problema è la mancanza di rAM, potete prendere in considerazione il seguente hack. Attenzione, però, perché è stato progettato per macchine che hanno processori abbastanza potenti. Su tali computer, infatti, è possibile utilizzare il modulo kernel zRAM per creare un device nella rAM che ha il ruolo di comprimerla. Grazie al fattore di compressione, potete aumentare efficacemente la memoria. Da notare che quando utilizzate zrAM, di fatto state sfruttando il processore, che quindi dovrà essere impegnato nelle operazioni di compressione e decompressione. Detto questo, i vantaggi in termini di velocità sono piuttosto elevati. notate inoltre che il modulo zrAM è finalmente considerato stabile a partire dal kernel 3.14. Su ubuntu, è possibile installarlo con il comando sudo apt-get install zram-config, cui deve seguire un riavvio del computer. il pacchetto installa uno script per farlo funzionare come servizio e non richiede alcuna configurazione. utilizzate il comando cat /proc/swaps per controllare se è operativo, quindi, se zrAM è perfettamente funzionante, l’istruzione dovrebbe elencare una o più partizioni /dev/zram. nel caso in cui il processore non sia in grado di far fronte al carico di lavoro aggiuntivo e notate un rallentamento nell’uso del pC, potete disattivare e rimuovere il modulo zrAM con sudo apt-get purge zram-config. Se utilizzate Fedora, per abilitare zrAM, è possibile servirsi degli script del progetto FedoraZram GitHub (http://bit.ly/FedoraZram). Scaricate ed estraete i file del progetto in una directory, quindi passate a installare gli strumenti di Fedora per configurare il vostro ambiente di compilazione tramite: sudo yum install @development-tools fedora-packager

una volta fatto, eseguite rpmdev-setuptree per creare la struttura della directory necessaria alla generazione dei pacchetti. Quindi utilizzate il comando make rpm per produrre gli rMp per il servizio zrAM. Adesso che i pacchetti sono stati creati, è possibile installare il tutto con sudo rpm -Uhv ~/rpmbuild/RPMS/noarch/zram-*.noarch.rpm. Dopo l’installazione, attivate il servizio con sudo systemctl enable zram.service e lanciatelo con sudo systemctl start zram.service. Da ora in poi sarà possibile utilizzare il comando zramstat per verificare se il servizio è in esecuzione.

Applicazioni precaricateLa maggior parte delle persone sfrutta quasi sempre una serie di programmi in modo maggiore rispetto ad altri. Preload è un demone adattivo che viene eseguito in background e ha il compito di analizzare e controllare le applicazioni che

vengono utilizzate. Sulla base di questa analisi, preload predice quali programmi hanno più probabilità di essere riavviati e recupera tutti i binari e le relative dipendenze in anticipo, ponendole quindi in memoria. Ciò significa che quando si avvia il software, viene lanciato all’instante, in quanto è già pronto all’uso. per esempio, se aprite spesso Firefox e Libreoffice Writer subito dopo l’avvio della distro, preload li caricherà automaticamente in memoria non appena il computer si attiva. Quando si accede alle applicazioni, sarete stupiti della rapidità con cui vengono lanciate. Anche se molto utile, preload non può funzionare al massimo in tutte le circostanze. Fino a quando apriamo più applicazioni differenti non ci sono problemi, ma non è molto utile per chi lancia i software solo occasionalmente. in tal caso preload non farà altro che consumare rAM inutilmente. Alcune distribuzioni includono il demone preload di default e quasi ogni distro lo ha nei propri repo ufficiali. Su ubuntu è possibile installarlo con sudo apt-get install preload, mentre su Fedora è necessario utilizzare sudo yum install preload. Si può sfruttare preload con le impostazioni predefinite, tuttavia, se volete configurarlo, sarà necessario modificare il suo file di configurazione (/etc/preload.conf) in un editor di testo.

Velocizzare il filesystemCome qualsiasi altro elemento appartenente alla vostra distro, anche il filesystem può essere modificato. per impostazione predefinita, gli sviluppatori di distro prediligono una configurazione più incentrata sulla sicurezza, e mentre quasi tutte le impostazioni predefinite potrebbero andare bene per la maggior parte degli utenti, i più smaliziati potrebbero volerlo modificare con impostazioni personalizzate. il filesystem più popolare, vale a dire ext4, viene fornito con quasi tutti i desktop Linux. Di solito dovrebbe funzionare molto bene con qualsiasi carico di lavoro, ma se i vostri benchmark lo indicano come il collo di bottiglia del pC, allora è il momento di mettervi mano. La prima cosa da fare è disattivare il parametro atime, che crea un marcatore temporale ogni volta che un file accede al filesystem. per farlo aprite il file /etc/fstab e inserite l’opzione noatime insieme a tutte le opzioni esistenti per le partizioni ext4. È inoltre possibile aumentare le prestazioni del filesystem, consentendo l’indicizzazione delle directory, in modo da accelerare la velocità di lettura e scrittura. Sarà necessario utilizzare un CD live di Linux per abilitare l’indicizzazione delle

Se siete soliti fare un uso pesante di una distro, con molte operazioni di lettura e scrittura, allora usate un tool come e4defrag per deframmentare il filesystem

010_017_LXP_146_LXF188.feat_speed 15 21/09/14 21:31

Page 18: 10_ottobre2014

16 Linux pro 146 Linux pro 146 17

Metti il turbo a Linux Metti il turbo a Linux

16 Linux pro 146

directory e di conseguenza assicurarsi che la partizione che si desidera attivare non sia montata. Supponendo che dev/sda1 sia una partizione ext4, il comando sudo tune2fs -O dir_index /dev/sda1 abiliterà la funzione, quindi dovrete seguire sudo e2fsck -D /dev/sda1 per indicizzare le cartelle esistenti. Mentre l’indicizzazione delle directory è una soluzione piuttosto sicura, il cambiamento della modalità di journaling del filesystem potrebbe danneggiarlo irrimediabilmente. il filesystem ext4 supporta tre opzioni di journaling: la modalità Journal, che è la più lenta ma anche la più sicura, la Ordered, che offre il giusto compromesso tra velocità e sicurezza (viene utilizzata di default nella maggior parte delle distro) e la Writeback, utile da usare quando volete incrementare le prestazioni. nella seconda tutti i dati e i metadati vengono messi insieme e quindi forniti al journal prima di essere scritti nel filesystem principale. nella terza, invece, tutte le informazioni vengono scritte sul filesystem principale dopo che i metadati vengono registrati nel journal. per cambiare la modalità di journaling del filesystem, utilizzate un ambiente live, quindi eseguite:sudo tune2fs -o has_journal -o journal_data_writeback /

dev/sda1così da attivare la modalità Writeback sulla partizione /dev/sda1. in genere, poi, non c’è bisogno di deframmentare un filesystem Linux, in quanto ext4 riesce a gestire la struttura dei file in modo molto più intelligente rispetto ad altri. invece di impilare uno contro l’altro le informazioni, questo filesystem dà ai file abbastanza spazio per crescere. Tuttavia, se siete soliti eseguire parecchie operazioni, un’occhiata allo stato di frammentazione del filesystem è d’obbligo. Se utilizzate ext4, la vostra distro probabilmente includerà già lo strumento e4defrag. Supponendo che i dati risiedano nella partizione /dev/sda1, usate il comando:sudo e4defrag -c /dev/sda1

per controllare lo stato di frammentazione del filesystem. una volta fatto, l’istruzione suggerirà se ha bisogno di essere deframmentato o meno. in tal caso, usate:sudo e4defrag /dev/sda1

Correggere il kernelSe state cercando di incrementare le prestazioni e la stabilità dei software, allora l’aggiornamento del kernel è la strada migliore da percorrere. per cominciare ci sono diverse patch che permettono di aumentare il rendimento delle funzioni. una delle scelte più popolari per il kernel standard è stata compilata da Con Koliva, che ha riunito una grande quantità di patch diverse. Questo set si chiama -ck ed è stato costruito con particolare attenzione per dare una marcia in più al desktop. Dopo averlo installato, noterete miglioramenti nelle prestazioni fin dall’inizio, sia nelle operazioni quotidiane, sia nel gioco o nella riproduzione multimediale. per installarlo, utilizzate il gestore pacchetti della vostra distro, così da scaricare prima il sorgente del kernel adatto alla versione della patch cui si applica e di seguito tutti gli strumenti per costruire il kernel stesso. una volta fatto, scaricate il set di patch dal sito di Koliva (http://bit.ly/ConKolivas) e usate il comando d’esempio per applicare le modifiche: sudo patch -p1 < patch-3.*-ck1

Adesso generate il kernel in base alle istruzioni della vostra distribuzione. Se utilizzate ubuntu, uno dei modi più semplici è utilizzare questo script (http://bit.ly/KernalckUbuntu). originariamente scritto dai membri della comunità brasiliana di ubuntu, scaricherà il kernel vanilla insieme alle patch Koliva e provvederà all’installazione. Scaricate a questo punto lo script nella cartella /tmp con:cd /tmp; wget --no-check-certificate https://raw.github.com/

chilicuil/learn/ master/sh/kernel-ck-ubuntu quindi eseguitelo con: sh kernel-ck-ubuntu.

Ci vorrà effettivamente un po’ di tempo perché la procedura termini (di solito sono necessari dai 10 ai 20 minuti secondo le situazioni e la potenza del computer che avete a disposizione), ma quando avrete finito, potrete sfruttare una vasta gamma di file binari da installare con:sudo dpkg -i ./linux-*.deb. Elive, una distro basata su Enlightenment, è una delle più leggere in circolazione

Il Monitor di sistema, presente in tutte le distro Linux permette di tenere sotto controllo processi e servizi attivi

010_017_LXP_146_LXF188.feat_speed 16 21/09/14 21:31

Page 19: 10_ottobre2014

16 Linux pro 146 Linux pro 146 17

Metti il turbo a Linux Metti il turbo a Linux

Linux pro 146 17

Le distribuzioni mainstream dotate di ogni genere di applicazione sono i pilastri dei sistemi Linux. Migliorano la produttività, la portata e la portabilità di una distro, ma

purtroppo hanno un appetito insaziabile per le risorse e pertanto sono inadatte per i computer più datati. Tuttavia, grazie alla ricchezza di applicazioni nell’universo open Source, non abbiamo carenze di alternative, che ci permettono così di puntare l’attenzione anche verso distro molto più leggere e usabili su pC datati. oltre agli hack menzionati nelle pagine precedenti, potete sostituire alcuni software con le loro controparti più leggere, così da dare lustro anche alle configurazioni più vecchie. Volendo partire dall’interfaccia di Login, possiamo utilizzare XDM al posto di

LightDM, GDM o KDM che vengono forniti in bundle con la distro. xDM non è così affascinante come gli altri, ma incide sulle risorse in modo davvero minimo. Dal momento che è disponibile nei repository ufficiali della maggior parte delle distro, è possibile installarlo utilizzando il gestore pacchetti. una volta fatto, assicuratevi che il file /etc/X11/default-display-manager elenchi il percorso completo per il display manager SDM (di solito /usr/bin/xdm). A questo punto, nei riavvi successivi sarete accolti da xDM.

Usate un gestore finestre leggero. L’attuale generazione di windows manager, come Mutter, Compiz e Kwin richiedono tutti una vasta gamma di risorse. Tuttavia esistono alternative altrettanto funzionali ma meno esigenti, come openbox, Fluxbox, FLWM e molti altri. OpenBox è una delle scelte più popolari ed è disponibile nei repo della maggior parte delle distribuzioni. in aggiunta al pacchetto openbox, potete installare anche obmenu (editor di menu), obconf (strumento di configurazione), tint2 (taskbar) e gmrun (launcher). una volta installato, create la rispettiva directory di configurazione in Home con mkdir ~/.config/openbox e copiate il file di configurazione dalla posizione originale a /etc/xdg/openbox/rc.xml. Adesso create un file per l’autostart (~/.config/openbox/autostart) che verrà così letto da openbox ogni volta che si esegue l’accesso. Aggiungete il comando tint2 & in una nuova riga all’interno del file per avviare automaticamente la barra delle applicazioni.

Usate un desktop leggero. Se il vostro hardware lotta continuamente con unity, vi consigliamo di scegliere un desktop più leggero. Anche in questo caso, le possibilità di scelta sono molto ampie: Mate, xfce, LxDE ed Enlightenment. LXDE, in particolare, offre diverse caratteristiche interessanti per un ambiente desktop. non ha molti effetti grafici ma il suo funzionamento è davvero ottimo. potete installare LxDE e le sue utility in Fedora con sudo yum install @lxde-desktop e in ubuntu con sudo apt-get install lxde. in alternativa, potete installare il desktop personalizzato LxDE dal progetto Lubuntu con

sudo apt-get install lubuntu-desktop. Servitevi di distro specializzate. Se siete alla ricerca di una

soluzione rapida per dare una sferzata di velocità anche ai computer più vecchi, invece di sostituire le singole applicazioni, potete cambiare direttamente la distro. Ce ne sono parecchie che possono fare al caso nostro, come Lubuntu, Bodhi, CrunchBang e puppy Linux. Queste ultime fanno di tutto per occupare meno risorse possibili e sono perfette per essere montate su computer poco potenti. puppy Linux, per esempio viene fornito con applicazioni personalizzate che rispecchiano in ogni cosa la leggerezza della distro. Lubuntu, poi, sfrutta il modulo del kernel zram che permette di migliorare le prestazioni su macchine con

poca rAM.

Considerate anche...Bodhi è una delle migliori distribuzioni progettate per computer con risorse limitate. utilizza Enlightenment, un ambiente desktop piacevole e leggero, che offre una serie di profili tra cui Bare,

Laptop e Fancy, ognuno dei quali è ottimizzato per diverse configurazioni hardware. Di solito, le distro più leggere come Bodhi vengono fornite con una dotazione minima di applicazioni, cui potete aggiungerne altre tramite il gestore pacchetti. poi c’è Lubuntu, una variante di ubuntu supportata ufficialmente e costruita attorno al desktop leggero LxDE. A differenza di Bodhi, Lubuntu è pieno di applicazioni. per la gestione dei pacchetti, la distro utilizza la propria versione alleggerita di ubuntu Software Center. È poi possibile rifarsi anche ad altre distribuzioni basate su LxDE, come Linux Mint LxDE e WattoS. Se non vi dispiace usare una distro particolare, allora è il caso di dare un’occhiata a puppy Linux, che di tutti è quella più leggera. puppy, infatti, riesce a trasformare computer risalenti al 2003 in vere e proprie bombe di velocità. il suo punto di forza è l’utilizzo di un gestore finestre tra i più leggeri (JWM) e anche se non è la distro più affascinante, è ricca di applicazioni personalizzate. infine, non possiamo esimerci dal parlare di CrunchBang, una delle distro fornite con openbox incluso. Essenzialmente, gli sviluppatori non la rilasciano come rivolta ai computer più vecchi (infatti, al suo interno troviamo applicazioni un po’ pesanti come Libreoffice). Eppure, nonostante la sua raccolta di software più che nutrita, la distro richiede poche risorse per funzionare a dovere. LXP

Pesi piumaEcco una vasta serie di distro leggere, file manager e applicazioni

Le alternativeQuesta è una lista di applicazioni che si distinguono particolarmente per leggerezza e dimensioni ridotte. ognuna di loro può avere un impatto positivo sul vostro sistema in termini di prestazioni e velocità di esecuzione.

Word Processor AbiWord

Gestore fogli elettronici Gnumeric

Visualizzatore immagini Feh

Email Claws Mail

Web browser Midori

Video player VLC Media player

Lettore PDF xpdf

Instant Messenger pidgin

Client BitTorrent Transmission

File Manager Worker

“Sostituire le applicazioni pesanti con le controparti leggere è il miglior modo per velocizzare una distro”

010_017_LXP_146_LXF188.feat_speed 17 21/09/14 21:31

Page 20: 10_ottobre2014

Speciale Monitoraggio Speciale Monitoraggio

18 Linux pro 146

Tutto sottocontrollo

Nell’articolo apparso sul numero 144 abbiamo introdotto il problema del monitoraggio di rete, illustrando i motivi che rendono necessario uno strumento per il monitoraggio anche nelle reti meno

complesse, come quelle installate in un ambiente SoHo (acronimo di Small Office/Home Office). Addentrandoci nella trattazione dell’argomento, abbiamo quindi abbandonato la teoria per focalizzare la nostra attenzione su un esempio concreto, costituito dal monitoraggio di una semplice network, rappresentata in Fig.1. in particolare, abbiamo proceduto a:

realizzare, mediante il ricorso alla virtualizzazione, un ambiente di test in grado di simulare la rete in questione mediante il ricorso a quattro macchine virtuali (nello specifico, tre macchine basate sulla distribuzione Damn Small Linux, per rappresentare i due server e il nAS, e una basata su xubuntu 14.04 per il router) e alla stessa macchina fisica (alla quale è stato affidato il compito di simulare la workstation, impiegata come console di monitoraggio);

sviluppare una Web application per il monitoraggio della rete su piattaforma LAMp (Linux/Apache/MySql/pHp);

testare la suddetta applicazione Web, simulando l’avaria di uno dei server mediante la disabilitazione temporanea della scheda di rete della relativa macchina virtuale.L’applicazione Web realizzata ha dimostrato di saper gestire correttamente le modifiche alla connettività degli apparati di rete, visualizzando opportuni alert (nello specifico, uno o più semafori rossi, come in Fig.2) in conseguenza dell’impossibilità di contattare i componenti della network monitorata, e consentendo all’utente di individuare i malfunzionamenti in

maniera univoca e tempestiva: si tratta, tuttavia, di obiettivi minimali, insufficienti a consigliarne l’impiego al di fuori di un contesto domestico. per quanto funzionale ai semplici scopi che ci siamo prefissi, infatti, l’applicazione presenta numerose limitazioni, tra le quali possiamo elencare:

la ristrettezza delle opzioni di monitoraggio: l’applicazione, basata sull’utilizzo di nmap con opzione -sP, effettua il ping di tutti gli apparati di rete, ed è pertanto nelle condizioni di stabilire esclusivamente la raggiungibilità di ciascun apparato, senza informare l’utente sull’effettiva disponibilità dei servizi da questi erogati: questa limitazione potrebbe risultare deleteria, in quanto potenzialmente in grado di fornire una falsa sicurezza all’operatore. Si pensi, per esempio, a un crash del processo di Apache in esecuzione sul server ove risiede il sito di e-commerce aziendale: in uno scenario del genere, il server resterà comunque raggiungibile dalla workstation di monitoraggio mediante ping, pur essendo di fatto inservibile (e

Con Nagios, monitorare i sistemi da remoto è semplice ed efficace: ecco come si fa...

Maurizio RussoLaureato in informatica presso l’università “La Sapienza” di roma, con una tesi sperimentale sullo stack TCp/ip del kernel Linux, è un utente del pinguino dal 2001. nella sua carriera si è occupato di formazione, sicurezza, networking, progettazione e sviluppo di software.

L’autore

Fig.1 La topologia della rete da sottoporre a monitoraggio

018_025_LXP_146_monitoraggio 18 21/09/14 22:03

Page 21: 10_ottobre2014

Speciale Monitoraggio Speciale Monitoraggio

Linux pro 146 19

Tutto sottocontrollo

causando all’azienda un danno economico e d’immagine); l’incapacità di stabilire automaticamente la reale fonte di un

malfunzionamento: laddove l’avaria di un’intera porzione della rete sia imputabile al malfunzionamento di un single point of failure, la nostra Web application mostrerebbe un certo numero di alert (nello specifico, un semaforo rosso per ciascuna categoria dotata di almeno un apparato non raggiungibile): tale output, sebbene descriva in maniera puntuale lo stato della rete, non fornisce all’operatore alcuna indicazione sulla reale causa del problema. nello schema in Fig.1, per esempio, l’avaria della macchina denominata router determinerebbe la contestuale irraggiungibilità di entrambi i server: l’indicazione di due semafori rossi (corrispondenti alle categorie server e router), pur fotografando correttamente la situazione, potrebbe risultare fuorviante per un operatore poco attento (o poco perspicace!);

la macchinosità del processo di estensione delle funzionalità di monitoraggio: ogni modifica alla logica di business dell’applicazione, infatti, richiede la scrittura di codice pHp aggiuntivo, o la modifica di quello esistente (e quindi la necessità di avere una professionalità specifica nel campo dello sviluppo Web);

l’impossibilità di assegnare un apparato a più di una categoria. Si tratta di funzionalità cruciali in ambienti di produzione, e più in generale in tutti quei contesti ove è necessario garantire la disponibilità dei servizi offerti dalla rete e una rapida diagnosi dei problemi di connettività: in questi casi, è bene orientarsi verso soluzioni più professionali, con l’impiego di un tool consolidato ed estensibile come per esempio nagios, che non a caso costituisce proprio l’argomento del presente articolo.

Installazione e avvio di Nagios Se la nostra semplice Web application si contraddistingue per la rigidità e la limitatezza delle funzionalità di monitoraggio, nagios costituisce invece una delle soluzioni più diffuse in questo campo proprio grazie alla sua flessibilità ed estendibilità: in grado di monitorare sia la raggiungibilità delle macchine che l’effettiva disponibilità dei servizi da queste erogati, nagios è caratterizzato da un’architettura modulare, estendibile attraverso appositi plug-in. A ciò si aggiunge la possibilità, offerta all’operatore, di ottenere alert e reportistica attraverso una molteplicità di canali: appositi programmi di supporto da installare anche su una postazione distinta dalla console di monitoraggio, mail, oppure

l’interfaccia Web del tool. Quest’ultima è in grado di soddisfare le esigenze sia degli utenti meno esperti, sia di quelli più smaliziati: in particolare, come vedremo nel prosieguo di questo articolo, l’interfaccia Web dispone di un’utilissima funzionalità in grado di visualizzare una mappa della rete aggiornata in tempo reale sullo stato degli host e dei servizi. per nostra fortuna, tuttavia, la potenza e la flessibilità di nagios vanno di pari passo con la semplicità del processo di installazione: grazie alla sua diffusione, infatti, questo tool è presente nei repository della stragrande maggioranza delle distribuzioni, ivi compresa xubuntu 14.04 (installata sulla macchina fisica che simula la workstation di monitoraggio). per l’installazione, pertanto, potremo far ricorso (così come per qualsiasi altra distribuzione basata su Debian) al tool da riga di comando apt-get: è sufficiente eseguire, da una shell dotata di privilegi di root, il comandoapt-get install nagios3 nagios3-core

per quanto semplice, il processo di installazione richiede comunque un certo grado di interazione con l’utente, a causa delle molteplici funzionalità offerte da nagios, che necessitano di opportuna configurazione. in particolare, nel corso dell’installazione è necessario procedere a:

l’impostazione della password dell’utente nagiosadmin: attraverso un’opportuna maschera (Fig.3) è necessario immettere la password dell’utente nagiosadmin, che sarà opportuno appuntare in quanto necessaria per l’accesso all’interfaccia Web del tool;

la configurazione base di postfix: come evidenziato in precedenza, uno dei punti di forza di nagios consiste nella possibilità di gestire i relativi report attraverso canali diversificati, che vanno da notifiche desktop (attraverso appositi plug-in da installare sulle console di monitoraggio) all’interfaccia Web, fino all’invio di appositi messaggi email. per questo compito, tuttavia, nagios si appoggia a uno strumento esterno, il celeberrimo postfix che è un mailserver snello e flessibile, in grado di interfacciarsi tanto a un server di posta distinto (cui eventualmente delegare in toto la consegna delle email, agendo come semplice “collettore” per conto di terzi) quanto di gestire la consegna e l’invio della posta elettronica ai soli utenti locali del sistema. È proprio quest’ultima l’opzione di riferimento scelta nel corso di questo articolo, in quanto ci consente di minimizzare gli

Fig.2 La pagina principale della nostra Web application di monitoraggio ci mostra un alert in concomitanza con l’impossibilità di raggiungere uno dei server del nostro ambiente di test

Fig.3 La schermata di scelta della password dell’utente nagiosadmin, che utilizzeremo per l’accesso all’interfaccia Web del tool

018_025_LXP_146_monitoraggio 19 21/09/14 22:03

Page 22: 10_ottobre2014

Speciale Monitoraggio Speciale Monitoraggio

20 Linux pro 146

step di configurazione, senza peraltro inficiare l’efficacia delle funzionalità di reportistica di nagios. Alla presentazione della schermata di configurazione di postfix, pertanto, occorre optare per il profilo di configurazione denominato “locale” (Fig.4), per poi impostare un opportuno mailname (trattandosi di un sistema di test, non connesso ad una rete realmente operante, è possibile scegliere un nome arbitrario): queste operazioni consentiranno a nagios di inviare mail all’utente root, il quale potrà leggerle da terminale tramite il comando mail, ricevendo al contempo, a ogni login alla shell, opportuni alert in merito alla presenza di mail non lette.mTerminato il processo di installazione, possiamo dedicarci alla configurazione di nagios, operazione che non può prescindere da una buona conoscenza dell’architettura della rete da monitorare: affinché il tool operi correttamente, infatti, è necessario che in sede di configurazione gli siano fornite tutte le informazioni propedeutiche a una corretta e dettagliata formalizzazione della struttura della rete. nel nostro caso, un esame critico dello schema in Fig.1 è in grado di rilevare quanto segue:

Impostazione delle macchine virtualiMacchina Virtuale NAS (sistema operativo Damn Small Linux)

nome macchina virtuale: nAS; sistema operativo: Linux 2.4 a 32 bit; RAM: 64 MB; disco fisso: nessuno; archiviazione: aggiungere un CD/DVD virtuale

contenente l’iSo di DSL (download da http://www.damnsmallinux.org/download.html) per consentire il boot della distribuzione;

Rete: una scheda di rete, di tipo “Scheda solo host”, connessa alla network virtuale denominata “vboxnet1”.

Macchina Virtuale serverA (sistema operativo Damn Small Linux)

nome macchina virtuale: serverA; sistema operativo: Linux 2.4 a 32 bit; RAM: 64 MB; disco fisso: nessuno; archiviazione: come per la macchina virtuale nAS; Rete: una scheda di rete, connessa alla rete

interna di nome “intnet”.

Macchina Virtuale serverB (sistema operativo Damn Small Linux)

nome macchina virtuale: serverB; sistema operativo: Linux 2.4 a 32 bit; RAM: 64 MB; disco fisso: nessuno; archiviazione: struttura come per la macchina

virtuale nAS;

Rete: una scheda di rete, connessa alla rete interna di nome “intnet”.

Macchina Virtuale router (sistema operativo Xubuntu 14.04)

nome macchina virtuale: router; sistema operativo: Linux 2.6 a 32/64 bit (a

seconda dell’iSo scaricata da http://xubuntu.org/getxubuntu);

RAM: 512 MB; disco fisso: nessuno; archiviazione: come per la macchina virtuale nAS; Rete: due schede di rete, la prima connessa alla

rete interna di nome “intnet”, la seconda configurata come “scheda solo host”, e collegata alla rete denominata “vboxnet0”.

Fig.4 La schermata di scelta del profilo generale di configurazione di Postfix

i componenti della rete possono essere classificati in almeno due categorie differenti (server e host), in base al fatto che eroghino o meno uno o più servizi;

i due server, sebbene simulati mediante macchine virtuali Damn Small Linux, forniscono servizi differenti (serverA funge da file server e Web server, serverB è un server di posta elettronica, ed è accessibile mediante SSH);

dal punto di vista della workstation, il router costituisce l’unico punto di accesso ai due server, così come, in considerazione della semplicità dell’ambiente di test, router ha accesso al resto della rete solo attraverso la workstation stessa;

i due server, non a caso simulati da macchine virtuali con a bordo la medesima distribuzione, condividono il sistema operativo installato (Gnu/Linux).Si noti come l’esame condotto risulti essere molto più approfondito di quello eseguito in sede di sviluppo della Web application oggetto della precedente puntata: in quell’occasione, infatti, è stata sufficiente una semplice suddivisione dei componenti della network in categorie disgiunte (nello specifico, workstation, nAS, server e router). Tale livello di dettaglio, pur costituendo un onere aggiuntivo in capo all’incaricato dell’installazione del tool, costituisce un prerequisito alla corretta formalizzazione della rete, attività richiesta da nagios sin dalla fase di configurazione: non a caso, la fase in questione si concretizza nella realizzazione di un file di configurazione per ogni apparato della rete, in cui devono confluire necessariamente tutte le informazioni raccolte a seguito dell’esame condotto sulla network. La directory contenente i file di configurazione di nagios è /etc/nagios3: dopo aver ottenuto un terminale di root, accediamo a tale directory con il comandocd /etc/nagios3

procediamo quindi, con il comandomkdir monitoraggio

alla creazione di un’apposita subdirectory, in cui immagazzinare tutti i file di configurazione relativi all’ambiente di test: tale operazione, sebbene non indispensabile al funzionamento del tool, ne costituisce una buona pratica di configurazione, in quanto consente di identificare con maggior semplicità le reti/sottoreti oggetto di monitoraggio e i relativi componenti. il prossimo step consiste nel rendere edotto nagios della directory appena creata: è dunque necessario aprire il file /etc/nagios3/nagios.cfg con un editor di configurazione (in questo

018_025_LXP_146_monitoraggio 20 21/09/14 22:03

Page 23: 10_ottobre2014

Speciale Monitoraggio Speciale Monitoraggio

Linux pro 146 21

esempio e nei successivi adopereremo il sempreverde vi)vi /etc/nagios3/nagios.cfg

e aggiungervi la rigacfg_dir=/etc/nagios3/monitoraggio

come mostrato in Fig.5. Effettuate queste azioni preliminari, possiamo quindi dedicarci alla configurazione vera e propria di nagios che, come più volte ribadito consiste nella formalizzazione della topologia di rete del nostro ambiente di test. iniziamo con il primo server, serverA: da una shell di root accediamo alla directory /ect/nagios3/monitoraggio, quindi eseguiamo il comandovi serverA.cfg

per poi procedere all’inserimento della descrizione del serverdefine host{use generic-hosthost_name serverAalias FileServeraddress 192.168.3.101}

Queste semplici operazioni, oltre a fornire una prima, semplice, formalizzazione di serverA, ci consentono di introdurre alcuni aspetti peculiari di nagios e del suo processo di configurazione, a partire dagli stessi file di configurazione: questi sono caratterizzati, come abbiamo appena visto, dall’estensione .cfg. Si tratta di un particolare che, lungi dall’essere riportato per mero dovere di cronaca, costituisce un elemento rilevante, da appuntare e ricordare: qualsiasi file con estensione .cfg contenuto in una delle directory di configurazione di nagios, infatti, è trattato alla stregua di un file di configurazione. Se a quanto appena illustrato aggiungiamo la precisazione che il connubio tra nagios e rete è talmente forte da rendere impossibile la disponibilità del servizio di monitoraggio nel caso in cui anche solo un file di configurazione contenga un errore, chiunque può comprendere come sia opportuno riservare una certa attenzione ai contenuti delle directory di configurazione del tool, evitando di inserirvi file incompleti o contenenti errori (anziché rimuoverli, è sufficiente rinominarli con un’estensione diversa). Terminata questa doverosa premessa, possiamo finalmente dedicarci ai contenuti veri e propri del file di configurazione. La definizione di un componente generico della rete può essere ottenuta facendo ricordo al comando define host

seguito da una serie di direttive comprese tra parentesi graffe, tra le quali notiamo:

use, che consente di semplificare l’operazione di configurazione mediante il ricorso a template forniti da nagios. Quello da noi prescelto, generic-host, descrive compiutamente un host generico di una rete generica, e va pertanto semplicemente “affinato” con l’indicazione degli aspetti peculiari (indirizzo, nome, servizi offerti, scopi, connessioni, ecc.) di ciascun componente della rete;

hostname: utilizzata per assegnare un nome mnemonico al componente della rete descritto dal file di configurazione. il nome specificato sarà visualizzato nella mappa di rete, e potrà essere utilizzato per riferirsi al componente nel caso di configurazioni più complesse;

alias, grazie alla quale è possibile associare all’apparato un secondo nome oppure una vera e propria descrizione, utile per una identificazione più immediata da parte dell’operatore;

address, per l’indicazione dell’indirizzo che nagios utilizzerà ai fini del monitoraggio. Come possiamo notare, questo campo coincide generalmente con l’indirizzo ip della macchina, sebbene

sia possibile ricorrere anche a un nome di dominio (opzione meno diffusa persino nell’ambito di reti locali, in quanto lega l’operatività del monitoraggio alla disponibilità del servizio di risoluzione dei nomi). Dopo ogni modifica a file di configurazione di nagios, è buona norma procedere al riavvio del relativo servizio: sebbene non indispensabile in caso di integrazioni multiple, questa operazione rientra tra le best practice di configurazione, in quanto ci consente di identificare con tempestività (e maggiore semplicità) gli eventuali errori commessi. A seguito del riavvio, tramite il comando (da eseguire all’interno di una shell di root):service nagios3 restart

nagios procede infatti alla verifica della correttezza della propria configurazione, rifiutando di avviarsi in caso di errore (Fig.6). per fortuna, questo non dovrebbe essere il nostro caso: proseguiamo dunque con la configurazione, descrivendo i restanti componenti della rete (denominati serverB, router e nAS nello schema in Fig.1) attraverso altrettanti file. Questi ultimi presentano forti analogie con quello appena visto:

serverB.cfg:define host{use generic-hosthost_name serverBalias MailServeraddress 192.168.3.100} nas.cfg:

define host{use generic-hosthost_name nASaddress 192.168.1.100} router.cfg:

define host{use generic-hosthost_name routeralias GatewayreteServeraddress 192.168.2.1}

Dopo un veloce riavvio del servizio (service nagios3 restart), è possibile finalmente accedere a una prima, incompleta versione della mappa della rete: aperto un browser sulla macchina fisica, digitiamo nella barra degli indirizzi l’urL http://127.0.0.1/nagios3”http://127.0.0.1/nagios3, fornendo quando richiesto username (nagiosadmin) e password (impostata in fase di

Fig.5 Ecco come appare il file /etc/nagios3/nagios.cfg dopo le modifiche da apportare

018_025_LXP_146_monitoraggio 21 21/09/14 22:03

Page 24: 10_ottobre2014

Speciale Monitoraggio Speciale Monitoraggio

22 Linux pro 146

installazione del tool). Dall’interfaccia Web di nagios, selezioniamo il link Map: saremo premiati con la visualizzazione della mappa in Fig.7, ove quasi tutti gli host della rete appaiono ovviamente come irraggiungibili, non avendo ancora provveduto all’avvio del nostro ambiente di test. un rapido sguardo della mappa può rivelarci come su di essa sia assente l’host descritto in Fig.1 con il nome di workstation (simulato, nel nostro ambiente di test, con la macchina fisica), poiché questo coincide con la stessa console di monitoraggio ove è in esecuzione nagios. Di default, infatti, la mappa visualizza la console di monitoraggio con il nome di localhost, e assegna (come si nota chiaramente in Fig.7) il ruolo di centro stella della rete al processo di monitoraggio, denominato Nagios Process e identificato dall’icona a forma di n. Tale rappresentazione non è, tuttavia, funzionale all’operatore umano, che necessita di una mappa quanto più possibile conforme all’effettiva topologia della rete: a tal fine, è necessario apportare qualche affinamento alla nostra configurazione, sulla base dell’esame preliminare condotto sul nostro ambiente di test. in sede di analisi, infatti, abbiamo già sottolineato come la macchina denominata router costituisca, dal punto di vista della console di monitoraggio, il solo punto di accesso ai due server: la raggiungibilità dei due server dipende dunque dalla raggiungibilità del router stesso, in quanto ogni pacchetto inviato dalla workstation verso uno dei server verrà ceduto al router per il successivo inoltro alla legittima destinazione. Ciò si traduce nel concetto di “parent” utilizzato di nagios: tipicamente si tratta di switch (o, come nel nostro caso, di router) che si antepongono tra la console di monitoraggio e rami della rete monitorata. per indicare correttamente la collocazione di router nella topologia di rete, è necessario procedere alla modifica dei file di configurazione dei due server: è sufficiente aggiungere a ognuno di essi una riga, compresa tra le parentesi graffe che delimitano il comando host, contenente la direttivaparents router

Come notato in sede d’analisi, tuttavia, a sua volta il router è collegato alla nostra rete di test per mezzo della workstation (identificata da nagios con il nome di localhost), e lo stesso si può dire, all’altra estremità della network, della macchina nAS: prima di procedere al riavvio di nagios è dunque opportuno

aggiungere la direttivaparents router

anche nei file di configurazione di questi due apparati. i nostri sforzi saranno premiati da una mappa decisamente più aderente alla topologia effettiva della rete, come mostrato dalla Fig.8: l’immagine ritratta, andando oltre alla legittima soddisfazione per il risultato raggiunto, ci offre lo spunto per un’ulteriore osservazione in merito allo stato degli host della rete. un lettore attento, infatti, può notare in Fig.8 una certa differenza tra le diciture associate al router (il cui stato è indicato come down) e quelle relative ai due server (unreachable), e verificare come tale distinzione non sia, invece, presente nella mappa visualizzata in precedenza (Fig.7). Grazie al ricorso alla direttiva parents, infatti, abbiamo fornito a nagios un’importante indicazione in merito alla reale topologia di rete, consentendogli di stabilire che:

la macchina router è effettivamente non connessa (stato down) in quanto, pur essendo direttamente collegata con localhost (ove è in esecuzione il servizio di monitoraggio), non risponde alle sollecitazioni di nagios (che il tool, a meno di specifiche configurazioni, invia in maniera trasparente all’utente, sottoforma di ping);

non è possibile conoscere l’effettivo stato dei server (che dal punto di vista di nagios potrebbero essere tanto attivi quanto inattivi), poiché l’impossibilità di contattare il router (unico punto di accesso ai server e single point of failure della rete) determina l’irraggiungibilità (stato unreachable) della rete su cui essi insistono. per quanto la mappa ottenuta semplifichi sensibilmente il lavoro dell’operatore umano in caso di avarie, possiamo renderla maggiormente fruibile mediante l’associazione, a ciascun componente della rete, di icone scelte appositamente per indicarne l’utilizzo a colpo d’occhio: sebbene in rete siano disponibili molteplici set di icone pensate specificatamente per nagios, il tool dispone di un discreto set di icone di default, poste nella directory /usr/share/nagios3/htdocs/images/logo. individuate le icone di interesse, è sufficiente aggiungere a ciascun file di configurazione l’invocazione della direttiva statusmap_image seguita dal nome del file dell’icona stessa:

serverA.cfg:statusmap_image server.png serverB.cfg:

statusmap_image server.png router.cfg:

Fig.7 La mappa visualizzata da Nagios, in assenza di una configurazione più approfondita, presenta una topologia a stella, con la console di monitoraggio (ove è in esecuzione il tool) al centro

Fig.6 In caso di errore in uno dei file di configurazione, Nagios si rifiuterà di ripartire, mostrando un errore simile a questo

018_025_LXP_146_monitoraggio 22 21/09/14 22:03

Page 25: 10_ottobre2014

Speciale Monitoraggio Speciale Monitoraggio

Linux pro 146 23

Script di configurazioneMacchina Virtuale NAS:ifconfig eth0 upifconfig eth0 192.168.1.100 255.255.255.0

Macchina Virtuale serverA:ifconfig eth0 upifconfig eth0 192.168.3.101 255.255.255.0route add default gw 192.168.3.1

Macchina Virtuale serverB:ifconfig eth0 upifconfig eth0 192.168.3.100 255.255.255.0route add default gw 192.168.3.1

Macchina Virtuale router:ifconfig eth0 192.168.3.1 255.255.255.0ifconfig eth1 192.168.2.1 255.255.255.0

sysctl -w net.ipv4.ip_forward=1Macchina fisica:ifconfig vboxnet1 192.168.1.3/24ifconfig vboxnet0 192.168.2.3/24route add -net 192.168.3.0/24 gw

192.168.2.1

statusmap_image router.gd2 nas.cfg:

statusmap_image statusmap_image desktop-server.gd2 Al riavvio di nagios (service nagios3 restart) la fruibilità della mappa di rete, già sensibilmente migliorata a seguito delle precedenti integrazioni alla configurazione del tool, apparirà ulteriormente incrementata, come mostrato in Fig.9.

Il monitoraggio dei servizi il lavoro svolto sin qui ci ha consentito di apprezzare la potenza e la flessibilità di nagios, senza tuttavia consentirci di segnare una netta demarcazione tra le funzionalità di questo tool e quelle offerte dalla Web application sviluppata nella scorsa puntata. Sebbene profondamente diversi, entrambi i tool, nelle declinazioni sin qui trattate, si basano su un’idea di fondo analoga: l’interrogazione, a intervalli regolari, dei componenti della rete, con la successiva visualizzazione dei risultati del monitoraggio in termini di raggiungibilità degli host. nagios, tuttavia, è in grado di offrire a un utente esperto molto di più: è infatti possibile monitorare, in aggiunta all’effettiva raggiungibilità dei singoli host, anche la disponibilità dei servizi da questi erogati. Come se non bastasse, il tool offre la possibilità di ottenere il monitoraggio dei servizi di rete più diffusi (come SSH e HTTp, non a caso offerti, come da schema in Fig.1, rispettivamente da serverB e serverA) senza richiedere particolari configurazioni, ma semplicemente dichiarando l’appartenenza degli host interessati ad appositi gruppi, detti in gergo hostgroups. per esempio, l’hostgroup http-servers, definito per default da

nagios, comprende tutti i server Web della rete, e analogamente ssh-servers è l’hostgroup dei server con demone SSH in esecuzione: inserendo un server in uno di questi gruppi, si indica implicitamente a nagios di monitorare il relativo servizio. naturalmente, è possibile anche creare hostgroup definiti ad hoc: nel nostro caso, come evidenziato in sede di analisi, serverA e serverB condividono il medesimo sistema operativo, essendo entrambi dei server Gnu/Linux. possiamo dunque creare un hostgroup che li racchiuda: a tal fine, creato un nuovo file di configurazione con il comandovi linux-server.cfg

provvediamo a inserirvi il seguente contenuto:define hostgroup {hostgroup_name linux-serversalias Linux serversmembers serverA, serverB }

Come possiamo notare, la definizione di un gruppo avviene mediante l’invocazione del comando define hostgroup

al cui interno vengono specificate le seguenti direttive: hostgrup_name, per specificare il nome del gruppo; alias, per fornire una descrizione significativa in aggiunta

al nome del gruppo; members, per indicare i membri del gruppo.

in merito a quest’ultima direttiva, tuttavia, è opportuno segnalare come l’appartenenza a un gruppo non debba essere necessariamente indicata all’interno del relativo file di configurazione: questa soluzione, comoda per reti di piccole dimensioni, può infatti trasformarsi in un vero e proprio incubo laddove si disponga di un numero considerevole di macchine. in questi casi, può risultare utile una modalità alternativa di dichiarazione dell’appartenenza a un gruppo: la direttiva hostgroups, da utilizzare all’interno del comando define host

Fig.9 Grazie all’utilizzo delle icone, la leggibilità della mappa appare ulteriormente incrementata.

Fig.8 Grazie all’utilizzo della direttiva parents all’interno dei file di configurazione degli apparati, la mappa visualizzata da Nagios assomiglia molto ad un vero e proprio schema di rete, rispecchiandone la reale topologia

018_025_LXP_146_monitoraggio 23 21/09/14 22:03

Page 26: 10_ottobre2014

Speciale Monitoraggio Speciale Monitoraggio

24 Linux pro 146

di definizione di ciascun apparato di rete. per esempio, per segnalare a nagios la presenza di un server Web in esecuzione su serverA, possiamo aprire il relativo file di configurazione (serverA.cfg) e inserirvi la riga configurazione (serverA.cfg) e aggiungere la riga hostgroups http-servers

così come la presenza del demone SSH attivo su serverB.cfg può essere segnalata mediante l’inserimento della rigahostgroups ssh-servers

all’interno di serverB.cfg., seguita quindi dal riavvio di nagios (service nagios3 restart).La dichiarazione di un hostgroup aggiuntivo che includa tutti i nostri server, lungi dal costituire un mero esercizio dimostrativo, ci consente di esplorare un’altra caratteristica dell’interfaccia Web di nagios: la possibilità di visualizzare sulla mappa i soli server inclusi nel gruppo, dimenticandoci degli altri compenenti della rete. per network di una certa importanza (a partire da decine di host), si tratta di una funzionalità irrinunciabile, in quanto consente di focalizzare

l’attenzione dell’operatore su categorie ben specifiche di macchine oppure, laddove necessario, di suddividere la rete in regioni/porzioni/rami di dimensioni ridotte, semplificandone di conseguenza il monitoraggio. il ricorso a tale funzionalità risulta semplice e immediato: nella porzione in alto a destra della pagina raffigurante la mappa di nagios, infatti, sono presenti tutti gli strumenti per il filtraggio degli apparati di rete sulla base dell’hostgroup di appartenenza. per esempio, per visualizzare i soli componenti del gruppo server-linux da noi creato è necessario:

evidenziare il gruppo d’interesse nella select list Drawing Layers,

che elenca tutti i gruppi definiti in nagios;

selezionare l’opzione Include presente sotto la voce Layer Mode; premere il pulsante Update;

ottenendo in tal modo il risultato in Fig.10.

L’ambiente di test prima di vedere all’opera la funzionalità di monitoraggio dei servizi di rete, tuttavia, è necessario procedere alla riattivazione dell’ambiente di test preparato nel corso della precedente puntata. Come ribadito più volte (e testimoniato dal pluricitato schema di rete in Fig.1), tale ambiente è costituito da:

la macchina fisica; quattro macchine virtuali basate su distribuzioni live

(stratagemma che ci consente di evitare l’onerosa operazione di installazione).Queste ultime, in particolare, possono essere:

create secondo le indicazioni del box Impostazione delle macchine virtuali;

configurate mediante gli script raccolti nel box Script di configurazione, in cui è descritto l’elenco dei comandi da eseguire, su ciascuna macchina virtuale e sulla stessa macchina fisica, per garantire il corretto funzionamento dell’ambiente di test (è sufficiente riportare gli script in un file di testo, per esempio denominato config.sh, quindi eseguire quest’ultimo da una shell dotata dei privilegi di root, con il comando bash config.sh).una volta completato il processo di creazione e configurazione delle macchine virtuali e della macchina fisica, potremo finalmente osservare nagios all’opera: dopo una breve attesa (necessaria affinché i check di raggiungibilità periodici aggiornino lo stato degli apparati di rete) dalla mappa scompariranno gli indicatori rossi, consentendoci di godere della vista di Fig.11. L’attivazione dell’ambiente di test ci consente di apprezzare come la capacità di effettuare il monitoraggio dei servizi costituisca un importante valore aggiunto rispetto alla nostra, semplicistica, Web application: cliccando sull’icona di serverA, e puntando successivamente il cursore del mouse sopra di essa, possiamo infatti notare una finestra (Fig.12) che ci avvisa dello stato (critical) di un servizio. Cliccando nuovamente sul server, possiamo scoprire quale sia il servizio monitorato: si tratta dell’http, il cui stato è verificato automaticamente da nagios in conseguenza dell’appartenenza di serverA all’hostgroup http-servers. il monitoraggio restituisce, ovviamente, un esito negativo, in quanto alla macchina virtuale che simula serverA non è, al momento, in esecuzione alcun server Web. possiamo tuttavia rettificare questa situazione, avvalendoci di un apposito strumento offerto dalla distribuzione Damn Small Linux: per quanto possa sembrare impossibile, infatti, questa distro “minuscola” (si avvia in solo 32 MB di rAM, nonostante la nostra scelta di “largheggiare” assegnandone ben 64 per ogni macchina virtuale Damn Small Linux) dispone, anche se eseguita

Fig.11 A seguito dell’attivazione del nostro ambiente di test, la mappa della rete visualizzata da Nagios mostra, finalmente, tutti gli host come raggiungibili e attivi

Fig.10 La mappa del

nostro ambiente di test viene visualizzata

da Nagios in questo modo,

se si sfruttano le opzioni per

il filtraggio degli apparati sulla base

dell’hostgroup di appartenenza (in questo caso,

abbiamo richiesto di mostrare i soli

host appartenenti al gruppo “Linux

servers”)

018_025_LXP_146_monitoraggio 24 21/09/14 22:03

Page 27: 10_ottobre2014

Speciale Monitoraggio Speciale Monitoraggio

Linux pro 146 25

in modalità live, di un server Web (e di un demone SSH, come vedremo tra poco) pronto all’uso... Si tratta di Monkey Web Server, un server Web compatto che possiamo avviare cliccando con il pulsante sinistro in qualsiasi punto del desktop e selezionando, nei menu a tendina annidati, le voci System | Daemons | Monkey Web Server | monkey start. La schermata in (Fig.13) ci ripagherà della successiva, paziente attesa, confermando la piena operatività del servizio in esecuzione su serverA (e quindi, implicitamente, la capacità di nagios di monitorare in tempo reale la disponibilità dei servizi offerti dalla rete, rispecchiandone fedelmente lo stato). Terminato il lavoro con serverA, possiamo spostare la nostra attenzione su serverB. Come accennato, Damn Small Linux dispone anche di un demone SSH, che può essere avviato mediante:

il click, con il pulsante sinistro, in qualsiasi punto del desktop; la selezione, nei menu a tendina annidati, le voci System |

Daemons | ssh | start;Dopo l’attesa di rito, anche il servizio SSH in esecuzione su

serverB cambierà stato, passando dal rosso Critical al verde OK. una volta attivati tutti i servizi, possiamo finalmente visualizzare la pagina denominata Tactical Monitoring Overview, accessibile dall’interfaccia Web di nagios mediante il link Tactical Overview. Come mostrato in Fig.14, questa schermata costituisce la compagna naturale della mappa per le attività di monitoraggio, in quanto consente di apprezzare, in un colpo d’occhio, tutte le principali informazioni sulla rete e sullo stesso nagios:

lo stato degli host; lo stato dei servizi; le funzionalità di monitoraggio abilitate; le performance del servizio di monitoraggio;

fornendo al contempo un indicatore sintetico sullo stato di salute degli host e dei servizi da questi erogati.

Altre funzionalità di Nagiosin analogia con l’applicazione sviluppata nella precedente puntata, nel corso del presente articolo abbiamo esplorato le funzionalità basilari dell’interfaccia Web di nagios, con particolare riferimento alla mappa di rete. il confronto tra la nostra Web application “domestica” e nagios si è ovviamente concluso con una schiacciante vittoria di quest’ultimo: la comparazione, sebbene contraddistinta da un esito scontato, ci ha tuttavia consentito di introdurre gradualmente il tema del monitoraggio di rete, per poi guidarci verso un’esplorazione via via più approfondita delle funzionalità del tool. A tal proposito, è bene rimarcare come le features offerte da nagios siano ben più vaste di quelle che lo spazio ristretto di un articolo possa contenere: per conoscere di più, un lettore curioso può affidarsi senz’altro al manuale di nagios Core (http://nagios.sourceforge.net/docs/3_0/toc.html), fonte di utili consigli e preziosi esempi tanto per i neofiti che per gli utilizzatori più esperti. LXP

Fig.13 Dopo aver avviato Monkey Web Server su serverA, un doppio click sull’icona dell’host visualizzata nella mappa ci consentirà di accedere al dettaglio dei servizi da questo erogati: come possiamo notare, ogni errore circa il servizio HTTP è effettivamente scomparso

Fig.12 Cliccando su uno degli host, si può porre il focus su di esso, evidenziandone di conseguenza i dettagli in un’apposita finestra, ove tra l’altro sono mostrati, in forma sintetica, anche gli stati dei servizi erogati dalla macchina

Fig.14 La schermata denominata Tactical Monitoring Overview ci consente di ottenere, in un sol colpo, tutte le principali informazioni sullo stato di salute della nostra rete, visualizzando inoltre appositi indicatori in merito alla salute degli host e dei servizi erogati

018_025_LXP_146_monitoraggio 25 21/09/14 22:03

Page 28: 10_ottobre2014

WineWine

26 Linux pro 146 Linux pro 146 27

Lo staff di Linux Pro si tufferà per voi nell’inebriante mondo di Wine

Eseguire applicazioni Windows in Linux

Quando omar Khayyam con i suoi versi stabilì che per raggiungere il paradiso basta poco (“Voglio un carico di vino

di rubino, e un libro di versi. Mi occorre appena lo stretto necessario, e un pezzo di pane…”) difficilmente aveva in testa problemi di interoperatività tra sistemi operativi. Se fosse vivo oggi però avrebbe sicuramente trovato conforto nei suoi stessi versi. Anche a voi potrebbe essere risparmiata l’umiliazione di dover selezionare

l’altro sistema operativo dal menu di avvio del vostro computer e, chi può dirlo, magari raggiungere quella sensazione di felicità che deriva dal rimuoverlo del tutto. Wine (acronimo di Wine isn’t An Emulator, non è un emulatore) offre un livello di compatibilità tramite il quale le funzioni e le chiamate Api di Windows sono tradotte in Linux. ovviamente non è un processo perfetto, e nemmeno completo, e grazie a tutte le ottime alternative open Source esistenti

è difficile superare i benefici dell’utilizzo di un software nativo. Ciò nonostante, esistono alcune situazioni nelle quali le applicazioni Windows non possono essere evitate, ed è bello poterle utilizzare senza dover riavviare il computer o lanciare una macchina virtuale. Quasi certamente Wine sarà disponibile nei repository della vostra distribuzione, comunque se volete l’ultimissima versione potete scaricare i sorgenti dal sito https://www.winehq.org/ e compilarli

026_029_LXP_146_LXF187.feat_wine 26 21/09/14 21:59

Page 29: 10_ottobre2014

WineWine

26 Linux pro 146 Linux pro 146 27

in autonomia, oppure utilizzare il ppA su ubuntu. probabilmente la prima cosa che noterete dopo averlo installato è che Wine confonde tutte le associazioni dei file: le immagini chiederanno di potersi aprire in Wine Internet Explorer, i documenti HTML invece in Wine browser. A questo punto potreste essere tentati di interrompere qui la lettura, ma a parte questo piccolo inconveniente Wine è un ottimo software. Fortunatamente guardando nelle FAQ possiamo trovare dei comandi per risolvere questo problemino:$ rm -f ~/.local/share/mime/packages/x-wine*$ rm -f ~/.local/share/applications/wine- extension*$ rm -f ~/.local/share/icons/hicolor/*/*/application-x-wine-extension*$ rm -f ~/.local/share/mime/application/x-wine-extension*

Chroot e schrootSe avete un sistema operativo a 64-bit, il pacchetto Wine vi installerà una quantità di librerie a 32 bit per poter eseguire i programmi Windows a 32 bit (su Arch Linux questo richiede l’abilitazione del repository multilib, in Debian dovete eseguire dpkg --add-architecture i386). Alcuni preferiscono non avere un sistema multilibreria/multiarchitettura (e qualcuno ama semplicemente complicarsi la vita), quindi l’alternativa è quella di creare un ambiente chroot a 32-bit e installare Wine lì dentro. un ambiente chroot è un sistema Linux blindato che vive all’interno di una directory di un altro sistema Linux. il chroot utilizza i file di sistema dell’host (/dev, /proc, /sys) oltre che i file di configurazione in /etc. una volta che l’ambiente è pronto, si trasforma la directory di chroot nella directory root (/). il procedimento per impostarlo dipende molto dalla distribuzione in uso e da quali programmi volete installare: in Debian (o altre distribuzioni basate su di essa) la maggior parte del lavoro può essere delegato all’utility debootstrap, per Fedora invece si usa febootstrap. per le altre distribuzioni, la procedura cambia. È importante sapere che non è obbligatorio agganciare l’ambiente chroot a quello ospite, ma se non lo si fa si va incontro a tutti i problemi legati all’avere due diverse configurazioni di oS come problemi vari legati alle diverse versioni delle librerie dei driver. ora qui vedremo come configurare un chroot a 32 bit su ubuntu 14.04 nella cartella /opt/ubuntu32:debootstrap --arch=i386 --variant=buildd trusty /opt/

ubuntu32/ http://it.archive.ubuntu.com/ubuntu/ il programma schroot offre un comodo aiuto per gestire gli ambienti chroot, potete trovarlo praticamente in qualunque repository. Questo software si occuperà, se usate come parametro type=directory, di collegare gli utenti, i gruppi e i filesystem dell’host al chroot. inoltre, questa opzione

si occupa anche di montare la directory home del vostro utente dentro al chroot, il che può generare qualche confusione. Dopo averlo installato modificate il file /etc/schroot/schroot.conf, aggiungendo quanto segue sostituendo ovviamente mioutente con il vostro username:[trusty32]description=ubuntu Trustylocation=/opt/ubuntu32users=mioutentepersonality=linux32type=directory

ora rimane semplicemente da effettuare il chroot nel nuovo ambiente, controllare che sia ciò che vogliamo e aggiornare la lista dei pacchetti:$ schroot -p -c trusty32$ uname -mi686$ sudo apt-get update

L’opzione -p si occupa di importare tutte le vostre variabili di ambiente, come $DiSpLAY, che fa sì che i programmi grafici possano funzionare. Se il secondo comando ritorna x86_64 significa che qualcosa è andato storto. Se sudo non dovesse essere disponibile, installatelo normalmente:$ su -$ sudo apt-get install sudo

i contenitori LxC sono una recente alternativa agli ambienti chroot e offrono un buon grado di isolamento grazie alle nuove funzionalità del kernel, come i cgroups e i namespaces. Sono gli elementi che formano le basi del nuovo virtualizzatore Docker, quindi può essere un argomento interessante (anche se fuori dalla portata di questo articolo).

Se, o quando, vi troverete in difficoltà con una particolare applicazione, date un occhiata a https://appdb.winehq.org/ e probabilmente troverete un aiuto. prima o poi troverete riferimenti a Winetricks, uno script di aiuto che automatizza l’installazione di cose frequentemente richieste, come applicazioni, librerie (tra le quali le Directx) e font. Alcune distribuzioni includono lo script winetricks come parte del pacchetto Wine, ma se la vostra non dovesse essere tra queste potete

scaricarlo e renderlo eseguibile molto facilmente:wget http://winetricks.org/winetrickschmod +x winetricks

Winetricks si occupa di tutte le DLL necessarie e delle modifiche ai registri, ma fate attenzione perché questo processo potrebbe anche fare danni. La cosa più prudente è quella di eseguirlo, se possibile, in una installazione pulita di Wine. Comunque, potete utilizzare winetricks anche in un’installazione “sporca”,

per esempio per installare le Directx 9 (non dovrebbe essere necessario, ma ogni programma è una cosa diversa):$ WinEprEFix=~/.wine-dirty winetricks d3dx9

Molte applicazioni richiedono i font di Microsoft, potete installarli in questo modo:$ winetricks corefonts

È richiesto il programma cabextract per estrarre dal formato cabinet di Microsoft.

Wine include la propria versione di diversi programmi standard di Windows

Winetricks

026_029_LXP_146_LXF187.feat_wine 27 21/09/14 21:59

Page 30: 10_ottobre2014

WineWine

Bottiglie di vinoWine crea una directory di un Windows virtuale (conosciuta anche come Prefisso Wine o Bottiglia di vino) all’indirizzo ~/.wine. Al suo interno possiamo trovare una directory drive_c/ oltre ai vari file trovati normalmente all’interno di un’installazione di Windows. Troviamo inoltre un link simbolico che permette di accedere al nostro filesystem root come drive Z all’interno delle applicazioni Windows. È opinione comune che ormai WoW64 (il sottosistema che permette l’esecuzione di binari a 32 bit su di un’installazione a 64 bit) di Wine sia completamente operativo, ma se doveste avere problemi nel sistema a 64 bit potete impostare un prefisso a 32 bit:WinEArCH=win32 WinEprEFix=~/.wine32 winecfg

e quindi eseguire il programma problematico (per esempio prog.exe) con:WinEprEFix=~/.wine32 wine prog.exe

potete configurare diverse cose utilizzando l’utility winecfg, come per esempio scegliere la vostra versione preferita di Windows, mappare altri percorsi come drive di Windows o abilitare desktop virtuali. probabilmente il tab più importante è quello chiamato Librerie, nel quale potete scegliere tra le librerie DLL native di Windows o il loro equivalente built-in di Wine. potete utilizzare winecfg anche per creare configurazioni specifiche per le varie applicazioni. Wine salva tute le sue impostazioni nel registro (al quale potete accedere utilizzando il regedit) sotto la chiave HKEY_CURRENT_USER\Software\Wine. Ci sono diversi parametri con cui si può giocherellare in questa sezione ma nessuno di questi risolverà i vostri problemi. per esempio, potete disabilitare il GLSL aggiungendo la riga:HKCu\Software\Wine\Direct3D\useGLSL

e impostandola a disabilitato. Magari per farvi una risatina vedendo il messaggio di avviso che esce tentando di avviare qualcosa con questa impostazione... È probabile invece che i programmi Windows abbiano bisogno di qualche modifica alle loro chiavi di registro per funzionare correttamente. per esempio, a molti capita che tentando di eseguire Steam non venga visualizzato alcun testo. una soluzione è quella di impedire a Steam di utilizzare DirectWrite aggiungendo la chiave DWorD DWriteEnable con valore 0 nel registro HKEY_CURRENT_USER\Software\Valve\Steam. Questo passaggio può essere effettuato anche da prompt di comando se il regedit non vi piace:$ wine reg add ‘HKEY_CurrEnT_uSEr\Software\Valve\

Steam’ /v DWriteEnable /t rEG_Dword /d 00000000Vediamo ora qualcosa in più su Steam.

Windows SteamAttualmente esiste una versione Linux di Steam ma quella Windows è decisamente più ricca. potete installare quest’ultima andando sul sito http://store.steampowered.com/about/ e cliccando su Windows. una volta scaricato il file SteamSetup.exe vi basterà eseguirlo con:$ wine SteamSetup.exe

Al termine dell’installazione vi ritroverete con un applicazione nuova: il client Steam. probabilmente dovrete installare corefonts e disabilitare DWrite per i motivi citati prima. Alcuni giochi si chiudono miseramente appena premete qualcosa sulla tastiera. Questo bug purtroppo è dovuto al fatto che Wine ha alcuni problemi a gestire le visualizzazioni delle chat con gli amici di Steam mentre si sta giocando, la soluzione è quella di disabilitarla andando su Steam D Impostazioni D In gioco e cliccando su abilita l’Overlay di Steam mentre sei in gioco. Volendo è possibile anche disabilitarlo direttamente nelle proprietà del singolo gioco. un altro problema abbastanza frequente è l’avviso da parte di alcuni giochi della mancanza di supporto per la compressione delle texture. Ciò è dovuto all’installazione di default di Mesa (l’implementazione open Source dell’openGL) che non include il supporto completo per l’algoritmo brevettato di compressione delle texture S3TC. potete aggirare questo problema impostando la variabile di ambiente force_s3tc_enable=1, che abilita la parte parzialmente implementata, anche se potrebbero esserci comunque dei problemi. Alternativamente potete installare le dubbie librerie open Source libtxc_dxtn che offrono un’implementazione completa. un altro possibile errore in cui potreste imbattervi riporta questo messaggio Impossibile avviare il gioco (eseguibile mancante). per eseguire i giochi che vi danno questo tipo di problema vi basterà utilizzare direttamente l’eseguibile del gioco che si trova all’interno della sottodirectory SteamApps/common nella directory in cui avete installato Steam. Esistono molte altre soluzioni (alcune anche non legate strettamente a Wine) disponibili nei vari forum, la maggior parte di esse si basa sulla modifica dei file .acf (cache delle applicazioni): sembra comunque che Wine abbia qualche strano problema con i giochi che hanno caratteri speciali nel loro percorso (come gli spazi). Al momento della scrittura di questo articolo i driver closed-source di nvidia sembrano molto più adatti al gaming della loro controparte open Source chiamata Nouveau. il problema principale su questo fronte è la mancanza di supporto per il cambio di Gpu e per il clock della memoria. Speriamo che questa situazione

Anche se il concetto di rendere le cose semplici ci fa provare un brivido lungo la schiena, prendiamoci un momento per menzionare un tool che ha proprio questa finalità. non preoccupatevi, vi garantiamo che tutto ciò che leggerete qui resterà all’interno di questo box. PlayOnLinux è un front-end di Wine con un repository suddiviso in categorie di pacchetti che offrono un’installazione pronta di molte applicazioni. Questi script si prendono cura

di tutte le esigenze di Wine ed è abbastanza semplice contribuire scrivendone di nuovi. ogni applicazione è installata nel suo prefisso e potete addirittura specificare una versione diversa di Wine per ognuna di esse. L’installazione di PoL richiede che installiate i font di Microsoft, ma una volta fatto ciò tutto (o quasi) sarà a pochi click di distanza. potete approfondire l’argomento sul sito www.playonlinux.com, ora è tempo di tornare a cose più complicate.

PlayOnLinux

28 Linux pro 146 Linux pro 146 29

Potete abilitare lo stream dei vostri contenuti nella vostra rete locale

026_029_LXP_146_LXF187.feat_wine 28 21/09/14 21:59

Page 31: 10_ottobre2014

WineWine

cambi in futuro e nvidia ha rilasciato alcune specifiche per diversi chip, ricevendo un pollice alzato da Torvalds. Quindi forse ci siamo spostati un po’ in avanti rispetto al dito medio di poco tempo fa... per quanto riguarda AMD il divario non è così forte, i driver open Source gareggiano alla pari con Catalyst. Grazie a Wine potete utilizzare anche gli streaming di Valve, in modo da poter sfruttare i vostri titoli in Stream di Wine con i computer meno potenti che avete in rete che utilizzano il client Linux. Questo significa che dovete occuparvi soltanto di una installazione di Wine e potete avere tutti i vostri giochi salvati in una potente e rumorosa macchina nascosta nel sottoscala. Questa macchina (che viene chiamata Steambox) non ha bisogno di frivolezze come periferiche e monitor. Assumiamo che abbia ssh in esecuzione:$ ssh -x steambox$ winecfg #impostiamo Windows alla versione 7$ cd ~/.wine/drive_c/program\ Files\ \(x86\)/Steam$ LiBGL_ALWAYS_inDirECT=1 wine Steam.exe

il risultato di ciò sarà un lentissimo client Steam (sta inviando tutti i comandi openGL attraverso SSH) in esecuzione attraverso la rete, e da qui possiamo fare click su Steam D Impostazioni D Streaming casalingo e selezionare Abilita lo Streaming. Fatto ciò non c’è più la necessità di sprecare banda con grafica e finestre, quindi possiamo lanciarlo in questo modo:$ ssh steambox$ cd ~/.wine/drive_c/program\ Files\ \(x86\)/Steam$ DiSpLAY=:0.0 wine Steam.exe

i client Linux di Steam vedranno ora come per magia la nostra Steambox e la sua libreria, e si abiliterà un’opzione Stream che si occupa di tutto il necessario. probabilmente sarà necessario regolare un po’ i settaggi dello streaming in base alle performance della rete.oltre al gaming Wine viene spesso utilizzato per vedere neflix, o qualsiasi altro contenuto in streaming protetto da DrM. Questo argomento è già stato trattato passato sia sui blog in generale sia sulla nostra rivista, ma vediamo di farne un breve riassunto nel caso ve lo siate perso. neflix e altri servizi simili si basano sul plug-in Silverlight di Microsoft per visualizzare e proteggere i loro contenuti, e Silverlight è disponibile soltanto su Windows e Mac. possiamo utilizzare il plug-in Pipelight per ovviare a questo inconveniente. pipelight utilizza una versione patchata di Wine per eseguire plug-in Windows in un browser Linux di vostra scelta. Se siete su Gentoo potete (per le versioni di Wine dalla 1.7.19) semplicemente aggiungere il flag per utilizzare pipelight all’app-emulation/wine, per le altre distribuzioni potete consultare la guida del team FDS sul sito Web http://bit.ly/1lg4XC3. una volta installato, potrete abilitare il plug-in Silverlight (e se volete anche quello Flash) con:$ pipelight-plugin --enable silverlight

Vi verrà chiesto di accettare due licenze, premendo Y, e di accettare le condizioni della versione di debug di wininet.dll creando un file, in questo modo:touch $HoME/.config/wine-wininet-installer.accept-license

Molti sostengono che la vecchia versione 5.0 di Silverlight funzioni meglio. potete abilitarla in questo modo: $ pipelight-plugin --disable silverlight5.1$ pipelight-plugin --enable silverlight5.0

Fate attenzione però perché è molto probabile che una versione meno recente possa soffrire di maggiori problemi

di sicurezza. oltre a pipelight, probabilmente avrete bisogno di un meccanismo per cambiare lo user agent del vostro browser, perché Silverlight e molti siti che lo utilizzano si rifiutano di funzionare con un browser onesto che dichiara di essere in esecuzione in un sistema Linux. oltre a questi scenari, un altro utilizzo possibile di Wine è quello di eseguire applicazioni specifiche, come Microsoft office oppure Adobe Creative Suite. Sfortunatamente queste applicazioni non sono molto amichevoli con Wine: secondo il database di compatibilità di Wine la versione a 32 bit di Microsoft office 2010 funziona, ma non si può dire lo stesso di office 2013. Allo stesso modo le versioni più vecchie di photoshop (CS4) e di inDesign (CS2) risultano funzionanti, ma il nuovo Creative Cloud sembra dare problemi. Le cose non migliorano molto neanche utilizzando il pacchetto commerciale Crossover Linux (basato su Wine), che offre supporto per molte cose che ancora non funzionano in Wine. potete utilizzare le applicazioni Web di Microsoft gratuitamente, il che va bene se volete solo giocare un po’ con lo strano e complicato formato .docx, ma viene rapidamente a noia se lo dovete fare quotidianamente. in sostanza se si vuole per forza utilizzare queste specifiche applicazioni con Linux, la scelta migliore è quella di utilizzare una macchina virtuale. LXP

28 Linux pro 146 Linux pro 146 29

Tutti i giochi di Monkey Island possono essere giocati su Linux

Archeblade è gratuito, richiede .NET 4.0 e funziona meglio su un desktop virtuale

026_029_LXP_146_LXF187.feat_wine 29 21/09/14 21:59

Page 32: 10_ottobre2014

Un’emozione che non finisce mAi!

ADV_doppia_ClassicRock_207x285 2 25/08/14 17:58

Page 33: 10_ottobre2014

TUTTI I MESI IN EDICOLA

Un’emozione che non finisce mAi!

ANCHE SU iPAd

ADV_doppia_ClassicRock_207x285 3 25/08/14 17:58

Page 34: 10_ottobre2014

Intervista Intervista

Per mettere ordine nel mondo di Ubuntu siamo andati a chiedere a Mark Shuttleworth, fondatore di Canonical, che cosa sta succedendo alla “sua” distro...

32 LinUx Pro 146

Il mondo secondo Mark

Mark Shuttleworth ha dovuto affrontare una tempesta mediatica non da poco lo scorso anno, quando molti sostenitori di Ubuntu hanno iniziato a domandarsi dove stava conducendo questo sistema e a criticare apertamente le sue iniziative. Un anno dopo, abbiamo deciso di fargli qualche domanda difficile: che cosa bolle in pentola? Che cosa ha ispirato le sue decisioni?

Linux Pro: Cominciamo da qualcosa di semplice. Ultimamente abbiamo assistito a un aumento dei laptop Ubuntu; Lenovo è uno dei più noti. Ritieni che questa sia una tendenza in crescita? Ne vedremo altri quest’anno?Mark Shuttleworth: Stiamo rilevando una crescente consapevolezza da parte dei produttori di PC tradizionali della necessità di una strategia incentrata su più sistemi operativi e della forza di Ubuntu in relazione a specifici mercati. Al momento, direi che Ubuntu è presente nel 20% circa dei PC di alcuni grandi marchi a livello mondiale; ovviamente questa quota riguarda principalmente i mercati in cui Ubuntu è ampiamente usato o rientra in misura sostanziale nella strategia dei governi. india, Cina e Brasile sono tre esempi importanti. Speriamo che Ubuntu

verrà accettato in misura crescente anche in Francia, in Germania e in altri paesi europei.

LP: Ubuntu sta diventando più mainstream?MS: no, ritengo che sia tuttora legato agli esperti e agli utenti ben informati. non lo definirei affatto un sistema mainstream in occidente. Ubuntu è un sistema mainstream all’interno dell’industria; perciò, per quanto riguarda il lato industriale, gli informatici di professione e coloro i quali si occupano di tecnologia a tempo pieno usano con ogni probabilità Ubuntu. All’interno dell’industria esiste un livello di familiarità con Ubuntu che si può considerare mainstream; per quanto riguarda gli utenti finali, tuttavia, direi che in occidente si tratta ancora di pochi fortunati. La situazione in oriente è leggermente diversa. Effettuiamo controlli sui livelli di adozione, in particolare per quanto riguarda Ubuntu all’interno di mercati quali l’india, il Pakistan, la Cina, eccetera; e abbiamo rilevato aumenti molto forti in questi mercati. Da questo deduco che le persone si trovano bene utilizzando Ubuntu sui loro laptop e non lo sostituiscono con altri sistemi.LP: Per quanto riguarda per esempio l’Europa, ritieni che esistano le potenzialità perché nei prossimi anni gli utenti smettano di scegliere

‘i soliti sospetti’ e inizino a interessarsi a Ubuntu?MS: Sono convinto di due cose. Primo, l’utente medio utilizza oggi numerosi tipi di tecnologie diverse da Windows. Usa il Web, usa Mac oS e ioS, usa Android e iPhone e scopre che la maggior parte delle cose che gli interessano si possono fare con tutti questi sistemi. non vi è più l’idea che per i personal computer esista uno e un solo sistema operativo. Le persone sono già abituate a servirsi di più sistemi. D’altro canto, ritengo che Ubuntu sia penetrato in ambiti in cui il suo uso non richiede conoscenze specialistiche. Potete installarlo e usarlo esattamente come usereste un Mac o un PC Windows, riuscendo a fare praticamente tutto ciò che volete. Se poi vi imbattete in un problema, Google vi fornirà prontamente la soluzione. Se volessimo diventare veramente mainstream, credo che avremmo ancora molto lavoro da fare, soprattutto per quanto riguarda il fattore formale che è più aperto rispetto al PC tradizionale. Questo è uno dei motivi per cui buona parte del nostro team si concentra sul miglioramento dell’esperienza sui tablet: riteniamo che sia veramente importante.Stiamo inoltre lavorando a un gran numero di progetti per i sistemi mobili. nel mainstream bisogna cavalcare il concetto di digital disruption; in sostanza, non è possibile rimpiazzare un prodotto in assenza di qualcosa che origini un cambiamento generale. Un esempio nel settore è stato il cloud computing. nel momento stesso in cui le persone sono passate al cloud, sono passate anche a Ubuntu. Anche prima di allora era possibile usarlo praticamente per tutto; ma il fatto è che la gente tende a non cambiare i propri rituali e le proprie abitudini quotidiane. Perciò, per quanto riguarda i consumatori, ritengo sia necessario cogliere il momento in cui si verifica la disruption e sfruttarla per penetrare nel mercato mainstream.

LP: Restiamo sul mainstream. Hai collaborato con Valve: ritieni che gli utenti dei videogiochi siano potenzialmente più aperti di fronte alla complessità che si tende ad associare a Ubuntu?MS: Credo che abbiamo ridotto notevolmente

032_035_LXP_146_LXF182.iview 32 22/09/14 15:22

Page 35: 10_ottobre2014

Chris DiBona

Intervista Intervista

LinUx Pro 146 33

la complessità che caratterizza Ubuntu. Circolano innumerevoli aneddoti relativi a persone che hanno dato una chiavetta USB con Ubuntu a un familiare per nulla esperto di informatica, che poco dopo le ha informate di averlo installato e di trovarcisi benissimo. Credo che questo abbia ridotto la complessità di Linux in modo sostanziale, rendendolo facile da usare e conservando al tempo stesso le prestazioni e la sicurezza che lo caratterizzano. ritengo che in effetti i giocatori siano tipicamente persone che mirano a spremere il massimo dai loro dispositivi, perché questo dà loro un’autentica sensazione di piacere. noi prendiamo molto sul serio giocatori e sviluppatori e credo che questo dimostri loro che Ubuntu è la scelta giusta.

LP: Probabilmente ti stai domandando perché ci concentriamo sulla questione della complessità; il fatto è che in passato, in un tuo post, hai manifestato la tua frustrazione per il fatto che le persone sembrano desiderare che Ubuntu sia

percepito come qualcosa di complicato, che pone alte barriere in entrata. Puoi spiegare meglio questa idea?MS: Credo che ci siano persone che usano Linux perché lo trovano sicuro e produttivo; gli sviluppatori più abili rientrano in questa categoria. Esiste però anche un’idea secondo cui Linux è qualcosa di alternativo e complicato, una sorta di segno di distinzione che attesta l’abilità di chi lo usa. Credo che si tratti di un’idea sbagliata. Le persone realmente abili non hanno alcun interesse a impazzire per svolgere le operazioni semplici: ciò che serve loro è un sistema operativo che le aiuti, consentendo loro di concentrare la loro abilità sulle operazioni complesse. Per questo mi sono impegnato a rendere Linux veramente facile da usare. E questo non solo a beneficio di chi non è esperto di informatica ma anche per consentire agli esperti di informatica di concentrarsi sui problemi realmente complessi e interessanti. Per questo provo una certa soddisfazione rilevando che esperti

di livello mondiale usano Ubuntu: si tratta di persone veramente abili che risolvono problemi veramente complessi. non sono costrette a preoccuparsi degli elementi essenziali: per questo c’è Ubuntu, che è facile da usare, ampiamente diffuso e, credo, veramente prezioso. Un atteggiamento snobistico del tipo “Sono talmente bravo da riuscire a usare qualcosa che è impossibile da usare” non è molto costruttivo.

LP: Perché a tuo parere le persone stanno reagendo in modo così negativo a Mir?MS: La questione ha vari aspetti; uno di essi è che per un numero molto ridotto di persone Mir rappresenta una cosa in più di cui preoccuparsi. E questo numero molto ridotto di persone è costituito essenzialmente dai distributori di hardware e da chi si occupa di monitor e grafica. La comunità di Linux è piuttosto eterogenea. Da un lato, i suoi membri si rendono conto del fatto che la diversità è un bene, che la competizione prodotta dalla

032_035_LXP_146_LXF182.iview 33 22/09/14 15:22

Page 36: 10_ottobre2014

Intervista Intervista

diversità è uno degli elementi che rendono Linux e l’open Source migliori delle soluzioni proprietarie e monolitiche. Dall’altro, tendono a scaldarsi molto facilmente sulle questioni di politica. La nostra opinione era che il lavoro che si stava svolgendo sui server grafici di nuova generazione esistenti non era ottimale e in Canonical era presente un piccolo team che chiedeva di poter studiare una strategia alternativa. ritengo che ciò che hanno realizzato sia fenomenale. È una soluzione più leggera, meglio testata e compatibile con un maggior numero di dispositivi. il team è riuscito a ottenere rapidamente il sostegno di vari distributori di dispositivi e case produttrici di giochi, eccetera, in modo tale da raggiungere il risultato desiderato. La nostra decisione di effettuare questo passaggio è fortemente criticata; ma a ben guardare, queste critiche provengono direttamente dai nostri concorrenti. Perciò, a mio parere, le critiche essenziali sono in buona parte alimentate dai nostri rivali. Per il resto, c’è una sorta di effetto eco: quando non c’è nient’altro di cui parlare e compare qualche programma non ancora in produzione, che si presta quindi a speculazioni puramente accademiche, tutti quanti si affrettano a dire la loro.Dal mio punto di vista, sono più che lieto di investire nel software; credo sia un bene. Credo che la concorrenza sia eccellente e ritengo che siamo riusciti a conquistare alcuni sostenitori semplicemente mostrando loro come funziona Mir e perché abbiamo adottato questo approccio per realizzarlo. io lo uso in vari ambiti e posso garantire che riesce a rendere tutto più semplice, più veloce e più ordinato. insomma, io credo che a volte, quando si vuole fare qualcosa di importante,

si debba essere disposti a compiere mosse controverse. L’ego qui non c’entra nulla: è soltanto codice. Possiamo riutilizzare del codice realizzato da altri oppure affidarne la realizzazione a un membro del nostro team; ma in sostanza, dobbiamo essere disposti a dare carta bianca ai migliori e vedere che cosa riescono a realizzare. Sono molto contento del fatto che stiamo realizzando Mir; credo che le persone più intelligenti comprendano che una simile diversità è un bene e che non ha alcuna conseguenza negativa sull’utente finale.

LP: Quali altri meriti ha Mir a tuo parere?MS: Mi sembra di aver già citato quelli più importanti, no? il team di Mir ha creato un sistema automatico di collaudo per ogni singolo aspetto di Mir. il team non introduce alcun nuovo codice in Mir senza prima testarlo. Trovo inconcepibile che alcuni dei nostri concorrenti, quelli che stanno dall’altra parte, abbiano tentato di dipingere questo aspetto come qualcosa di negativo. Sono fuori di testa. Decidere di utilizzare il proprio software più importante senza condurre alcun test, senza utilizzare alcuna infrastruttura automatica per il controllo della qualità, significa affidarsi totalmente alla speranza di non commettere mai un solo errore; e per me questo è pazzesco. noi sappiamo che cos’è un software di qualità e a mio parere Mir ha tutte le caratteristiche di un software di alta qualità. nel caso di un software come questo, queste caratteristiche sono invisibili; a essere visibili sono gli errori del codice. L’utente non ‘usa’ Mir, eppure tutto dipende da esso. Trovo assurdo che una delle principali critiche che ci sono state rivolte riguardi la nostra decisione di optare per uno sviluppo basato sui test. È una cosa fantastica che il nostro team effettui lo sviluppo sulla base dei test e credo che queste critiche la dicano lunga sull’immaturità di alcuni di coloro che si muovono nel mondo dell’open source, pronti a scatenare cacce alle streghe senza fermarsi a riflettere sull’eventualità che disporre di programmi creati da professionisti in modo rigoroso e collaudato possa essere una buona cosa. Considero assurdo vivere nella paura della massa. Bisogna farsi avanti e fare le cose giuste, senza aver paura di sporcarsi le mani. Di solito, chi scatena queste campagne si è alzato con la luna di traverso.

LP: E a proposito di Trusty Tahr, che feedback avete avuto da questa release? MS: Dunque, Mir è l’unico supporto grafico per i sistemi mobili e abbiamo optato per questo tipo di convergenza. Al momento disponiamo di un archivio di codici e da questo archivio abbiamo tratto due immagini. Una è la versione di Ubuntu per i sistemi mobili, l’altra è quella per i computer fissi. Le due versioni condividono al 99% lo stesso codice ma vi sono comunque alcune sottili differenze. il server grafico per il nostro codice per i sistemi mobili è Mir; quello per il nostro codice di setup è x. Mir è quindi compreso in Trusty Tahr ma solo per quanto

riguarda gli utenti di sistemi mobili. Gli utenti di computer fissi hanno sostanzialmente libertà di scelta riguardo a Mir. Vale la pena di provarlo. Secondo me, chiunque sia interessato alla tecnologia dovrebbe dagli un’occhiata approfondita. in questo modo potrà rendersi conto che si tratta di un ottimo lavoro, realizzato in modo impeccabile. Dietro Mir non ci sono strategie aziendali, non è una specie di colossale dispositivo di controllo del software: c’è solo un team che eccelle nel suo lavoro ma che ha ritenuto di poter creare qualcosa di rapido, ordinato ed efficiente per un prodotto cruciale. È grandioso che Canonical dia il suo appoggio a tutto questo.

LP: Hai osservato che una delle caratteristiche specifiche di una comunità collaborativa è quella di invischiarsi in questioni politiche; è questo uno dei motivi per i quali sei passato a un ruolo meno collaborativo e più di leadership? Ci sono altri motivi?MS: Questo è un travisamento di ciò che posso aver affermato; forse mi sono espresso male. io credo che in un mondo in cui ogni opinione vale quanto tutte le altre non sia possibile combinare nulla. Perciò, a mio parere la prima cosa da fare in un ambiente come quello dell’open Source è superare l’idea che tutte le voci abbiano pari valore. Semplicemente, le cose non stanno così. Ci sono persone che conoscono più ambiti di altre, ci sono punti di forza e punti deboli diversi; e per combinare qualcosa occorre creare una comunità che metta in campo capacità eterogenee, perché per ottenere risultati occorrono capacità di ogni tipo. noi di Ubuntu riconosciamo contributi provenienti da ogni sorta di ambiente e competenze di ogni tipo. Troviamo il modo di dare la stessa dignità al contributo di un traduttore e a quello di uno sviluppatore, in termini di rispetto; ma il rovescio della medaglia è che siamo molto diretti nello stabilire chi debba assumersi la responsabilità di che cosa. non si può affidare a uno sviluppatore tedesco una traduzione in cinese, no? il nostro obiettivo, per quanto riguarda l’organizzazione dei nostri sforzi, consiste nell’assicurarci che il nostro sia un sistema meritocratico. Affidiamo le singole decisioni alle persone giuste. ora, nel mondo dell’open Source esiste una sorta di risvolto ideologico e sociale, per cui nei forum ogni opinione ha pari dignità; ma in pratica, all’interno di Ubuntu ci impegniamo a fondo per scegliere a chi affidare determinate decisioni importanti ed è a queste persone che diamo fiducia. E questo sistema ha funzionato ottimamente. È per questo che Ubuntu ha avuto successo. Una conseguenza di questo metodo è che quando io affido a qualcuno una decisione difficile, la sua soluzione può sorprendermi. Se io a quel punto blocco la sua decisione, vuol dire che sostanzialmente non ho fiducia in quella persona. riguardo a questo posso fare un ottimo esempio. Molti anni fa ho chiesto al team di Ubuntu che si occupava del kernel

34 LinUx Pro 146

032_035_LXP_146_LXF182.iview 34 22/09/14 15:22

Page 37: 10_ottobre2014

Intervista Intervista

LinUx Pro 146 35

e della sicurezza di scegliere un hypervisor per dispositivi virtuali da utilizzare come nostro hypervisor standard. A quell’epoca xen era sulla breccia: lo usavano tutti quanti e rappresentava il modello standard di hypervisor per Linux; ma il team ha scelto KVM, il che ha rappresentato una vera sorpresa per me. non me lo sarei mai aspettato. La mia reazione immediata è stata quella di pensare: “no, bloccherò questa decisione perché non credo proprio che dovremmo scegliere una soluzione così di nicchia”. i membri del team, però, erano i nostri uomini migliori: disponevano di tutte le informazioni del caso ed erano liberi di scegliere qualunque sistema preferissero. non hanno fatto una scelta sulla base del loro ego: hanno scelto KVM e noi abbiamo appoggiato la scelta di KVM. Così questo è diventato l’hypervisor standard di Ubuntu; qualche anno dopo è stato adottato anche da red Hat e poi da tutti gli altri. Credo che questo sia un ottimo esempio del perché sia importante raccogliere le sfide, assicurarsi di mettere le persone giuste al posto giusto e affidare le decisioni alle persone giuste. Certo, bisogna tenere sotto controllo le loro procedure e i ragionamenti alla base delle loro decisioni; ma in ultima analisi tali decisioni vanno lasciate a loro. Se dovessimo seguire la massa riguardo a ogni decisione, non otterremmo che risultati mediocri, perché non faremmo che adottare soluzioni scontate. Guardate i risultati di Ubuntu: ha esordito come una qualsiasi delle centinaia di distribuzioni esistenti ed è diventato la distribuzione a cui la maggior parte delle persone si affida quotidianamente, nonché, ciò che più conta secondo me, una distribuzione che si sta espandendo a livello pionieristico in alcune aree completamente nuove, come quella delle y-conversion. Tutti gli altri ambienti desktop di Linux hanno seguito la scia di Ubuntu; ognuno lo ha fatto in modo diverso e specifico ma tutti sono passati a un modello di desktop diverso solo dopo che lo aveva fatto Ubuntu. E questo perché noi non seguiamo la massa e cerchiamo di scegliere le persone giuste. non fa alcuna differenza che i contributi provengano da persone che lavorano per Canonical oppure dalla comunità: cerchiamo di individuare le persone che hanno le idee migliori e lasciamo che siano loro a prendere il timone…

LP: All’interno dello ‘zoccolo duro’ dei fautori di Linux circola la percezione che voi abbiate deciso di fare per conto vostro e che siate meno inclini a seguire la comunità. Se tuttavia, come hai argomentato, Canonical è nel giusto, quali saranno le conseguenze positive per la comunità?MS: Secondo me, in molti casi questa idea secondo cui noi faremmo ‘per conto nostro’ è messa in giro dai nostri concorrenti. Gestiscono un progetto open Source ben preciso e, appena noi facciamo qualcosa, strillano: “Ma voi non state seguendo la comunità!” La realtà, però, è che il progetto a cui vorrebbero che ci attenessimo anche noi non è

affatto opera della comunità: voglio dire, è opera di intel, con vari sistemi in competizione tra loro. ogni volta che Canonical fa qualcosa, salta fuori l’accusa secondo cui non sta seguendo la comunità. Ciò che si vorrebbe che seguissimo, però, non è la comunità bensì i nostri concorrenti. io sono uno strenuo fautore del codice aperto: se si può evitare di creare un duplicato di un codice esistente, è molto meglio non farlo e limitarsi a usarlo. Però sono anche un fautore del progresso e della creazione di soluzioni migliori. Abbiamo vinto ancora una volta il premio per la migliore distribuzione dell’anno; questa sì che si potrebbe definire una decisione della massa, visto che a votare sono gli utenti che si servono di Linux ogni giorno. io credo che questo significhi che, polemiche a parte, quando la gente deve votare il sistema in cui ha più fiducia, in un modo o nell’altro la sua scelta cade su Ubuntu.

LP: In che modo Ubuntu si è evoluto dall’idea originaria fino a trasformarsi in ciò che è oggi?MS: Questo è un aspetto molto interessante. non si fa una cosa per dieci anni senza imparare qualcosa lungo il percorso. Spesso ci si domanda: “Se avessi saputo allora ciò che so oggi, avrei agito diversamente?” inevitabilmente ci sono aspetti imprevedibili e ambiti in cui è il mondo a essere cambiato. Ciò che trovo veramente entusiasmante è che a mio parere, se si esamina il panorama dell’informatica aziendale e dei computer rivolti ai consumatori, si scopre che Ubuntu si sta collocando proprio al centro della digital disruption, come nel caso del cloud computing. La maggior parte di ciò che è in funzione su Amazon è Ubuntu; la maggior parte dei sistemi Linux in funzione nel cloud di Microsoft e nei cloud privati sono Ubuntu. Questo costituisce il più grosso cambiamento sostanziale nel modo in cui le imprese strutturano i loro sistemi dai tempi della nascita del Web. Per questo apprezzo particolarmente il risvolto aziendale di ciò che facciamo: siamo al centro del cloud computing e della sua infrastruttura, il modello platform as a

service. L’esempio più importante di questo modello utilizza Ubuntu e questo è un risultato tanto inatteso quanto spettacolare. Per quanto riguarda il lato client le cose sono più complicate, dato che l’utente medio di computer continua a utilizzare Windows o Mac; se devo citare l’aspetto più interessante in questo ambito, però, direi che si tratta del tema della convergenza. Credo che possiamo contare su un deciso vantaggio, grazie alla non facile decisione che abbiamo preso di dare vita a Unity. È questo che trovo davvero gratificante nel lavoro che stiamo realizzando. Tutto ciò che facciamo si collega a innovazioni create da altri o rappresenta in sé il centro di innovazioni fondamentali.

LP: Una domanda più leggera: se esistesse uno ‘hack day’ per bambini e tu avessi otto anni, che cosa creeresti?MS: Direi che all’orizzonte ci sono un paio di idee suggestive e una di esse è la computazione quantistica. oggi l’informatica si basa sul bianco e sul nero: una cosa c’è o non c’è ed è possibile fare ogni sorta di cose straordinarie con i software sulla base di questo concetto. Semplicemente sulla base del concetto di ‘bianco o nero, sì o no’, i computer possono lavorare insieme e creare risultati casuali. Ciò crea l’illusione di ‘zone grigie’, una parvenza di qualcosa di sfocato in un universo che è sostanzialmente fatto di bianco e di nero. La computazione quantistica è sostanzialmente sfocata in modo interessante e credo che se avessi otto anni mi concentrerei su questo. Credo che altre questioni importanti riguardino il cibo e l’energia. Sul nostro pianeta gli spazi liberi sono ben pochi; e pensando alle calorie necessarie alla popolazione umana nei prossimi cinquant’anni, viene da chiedersi da dove salterà fuori tutto questo cibo. Chi consuma carne deve rendersi conto che abbiamo prosciugato tutti i terreni marginali e stiamo consumando in modo preoccupante tutti gli altri. Sarebbe bello che i bambini di otto anni di oggi provassero a elaborare soluzioni per questi problemi. LXP

032_035_LXP_146_LXF182.iview 35 22/09/14 15:22

Page 38: 10_ottobre2014

Diventa protagonista del mondo Linux

036_037_LXP_146_Doppia_Abbo_LinuxPro 36 21/09/14 16:43

Page 39: 10_ottobre2014

39,90 € invece di 70,80 € sconto 43%

■ PREZZO BLOCCATO: per tutta la durata dell’abbonamento non pagherai un euro in più, anche se il prezzo di copertina dovesse subire aumenti.■ TUTTI I NUMERI ASSICURATI: se per cause di forza maggiore qualche numero della rivi-sta non venisse stampato, l’abbonamento verrà prolungato fino al raggiungimento dei numeri previsti.■ RIMBORSO GARANTITO: potrai disdire il tuo abbonamento quando vorrai, con la sicurezza di avere il rimborso dei numeri che non hai ancora ricevuto.

ABBONANDOTI AvrAI DIrITTO AI SEGUENTI vANTAGGI

Informativa ex Art.13 LGS 196/2003. I suoi dati saranno trattati da Sprea Editori S.p.A., nonché dalle società con essa in rapporto di controllo e collegamento ai sensi dell’art. 2359 c.c. titolari del trattamento, per dare corso alla sua richiesta di abbonamento. A tale scopo, è indispensabile il conferimento dei dati anagrafici. Inoltre previo suo consenso i suoi dati potranno essere trattati dalle Titolari per le seguenti finalità: 1) Finalità di indagini di mercato e analisi di tipo statistico anche al fine di migliorare la qualità dei servizi erogati, marketing, attività promozionali, offerte commerciali anche nell’interesse di terzi. 2) Finalità connesse alla comunicazione dei suoi dati personali a soggetti operanti nei settori editoriale, largo consumo e distribuzione, vendita a distanza, arredamento, telecomunicazioni, farmaceutico, finanziario, assicurativo, automobilistico e ad enti pubblici ed Onlus, per propri utilizzi aventi le medesime finalità di cui al suddetto punto 1) e 2). Per tutte le finalità menzionate è necessario il suo esplicito consenso. Responsabile del trattamento è Sprea Editori S.p.A. via Torino 51 20063 Cernusco SN (MI). I suoi dati saranno resi disponibili alle seguenti categorie di incaricati che li tratteranno per i suddetti fini: addetti al customer service, addetti alle attività di marketing, addetti al confezionamento. L’elenco aggiornato delle società del gruppo Sprea Editori S.p.A., delle altre aziende a cui saranno comunicati i suoi dati e dei responsabili potrà in qualsiasi momento essere richiesto al numero +39 0287168074 “Customer Service”. Lei può in ogni momento e gratuitamente esercitare i diritti previsti dall’articolo 7 del D.Lgs.196/03 – e cioè conoscere quali dei suoi dati vengono trattati, farli integrare, modificare o cancellare per violazione di legge, o opporsi al loro trattamento – scrivendo a Sprea Editori S.p.A. via Torino 51 20063 Cernusco SN (MI).

39,90 € invece di 70,80 €

sconto 43%

1 anno - 12 numeri

ABBONATISUBITO

SCEGLI IL mETODO pIù COmODO pEr ABBONArTI:

•TELEFONA al N. 02 87168074 Dal lunedì al venerdì dalle ore 9,00 alle ore 18,00. Il costo massimo della telefonata da linea fissa è pari a una normale chiamata su rete nazionale in Italia. Da telefono cellulare il costo dipende dal piano tariffario in uso. Via mail: [email protected]

•POSTA Compila, ritaglia e spedisci il coupon in busta chiusa a: Sprea Editori S.p.A. - Servizio Abbonamenti - Via Torino 51 - 20063 Cernusco Sul Naviglio (MI)

•FAX invia il coupon al N. 02 700537672 •ONLINE sul sito www.myabb.it/linuxpro

Tag

liar

e lu

ng

o la

lin

ea t

ratt

eg

gia

ta

Accetto che i miei dati vengano comunicati a soggetti terzi (come indicato al punto 2 dell’informativa privacy): ☐ SI ☐ NO

Accetto di ricevere offerte promozionali e di contribuire con i miei dati a migliorare i servizi offerti (come specificato al punto 1 dell’informativa privacy): ☐ SI ☐ NO

Compila, ritaglia e invia questo coupon in busta chiusa a: Sprea Editori S.p.A. - Servizio abbonamenti - Via Torino 51, 20063 Cernusco Sul Naviglio (MI)

▷ Inviate Linux Pro al mio indirizzo:Cognome e Nome

Località

Tel. email

CAP Prov.

Via N.

▷ Regalo Linux Pro a:Cognome e Nome

Località

Tel.

CAP Prov.

Via N.

Con il bollettino postale che mi invierete

Con carta di credito: Visa American Express Diners Mastercard

▷ Scelgo di pagare, in un unico versamento:

Numero

Scad. (mm/aa) Firma

Riceverò 12 numeri di Linux Pro a soli € 39,90 anziché € 70,80 con lo sconto del 43%.

SI! Mi abbono a Linux Pro COUPON DI ABBONAMENTO

ABBONATI ANCHE IN INTERNET! Collegati subito a: www.myabb.it/linuxpro

LXP1

46

OFFErTA vALIDA SOLO pEr L’ITALIA

036_037_LXP_146_Doppia_Abbo_LinuxPro 37 21/09/14 16:43

Page 40: 10_ottobre2014

Premiata Amministreria Dottor Brown

Tecniche esoteriche per i sysadmin direttamente dai recessi più impenetrabili della sala server

Dr Chris BrownIl Dottore si occupa di formazione, scrittura di articoli e consulenze su Linux. Trova che il suo PhD in fisica delle particelle non sia di alcun aiuto in questo tipo di lavoro.

SysadminSysadmin

38 LInux pro 146 LInux pro 146 39

A meno che non abbiate vissuti su un altro pianeta negli ultimi mesi sarete senz’altro a conoscenza del bug di

sicurezza Heartbleed (Cuore che sanguina in inglese). In caso contrario potete leggere questo articolo in inglese di Ars Tecnica: http://bit.ly/stillheartbleeding, oppure la relativa voce della Wikipedia italiana: http://it.wikipedia.org/wiki/Heartbleed. A quel che so è l’unica vulnerabilità che abbia un suo logo. Si tratta quindi di una notizia vecchia, che però ha suscitato un ampia gamma di reazioni. Bruce Schneier, un notissimo esperto di sicurezza, ha scritto: “Catastrofico è la parola giusta. Su una scala da 1 a 10 questo è un 11”. nonostante la vulnerabilità fosse presente in openSSL da due anni, nessuno sa con precisione se e quante persone ne fossero a conoscenza e quante di queste (ne parleremo più tardi) l’abbiano sfruttata. Con la fiducia nell’integrità delle agenzie nazionali di sicurezza ai livelli minimi cui si trova oggi, alcuni pensano che loro l’abbiano sempre saputo. La maggior parte dei siti Web su cui girava una delle versioni vulnerabili di openSSL è stata aggiornata alla versione corretta. Ma il problema non si ferma qui: un aggressore che abbia avuto accesso grazie alla vulnerabilità alla chiave privata del sito è ancora in grado di

usarla. Se si è anche impossessato del certificato digitale del sito può ancora impersonare il sito stesso in modo che i browser siano convinti di aver stabilito una sessione sicura con esso. Molti siti hanno generato nuove coppie di chiavi e hanno aggiornato i loro certificati di sicurezza. Alcune autorità di certificazione hanno consentito ai clienti di fare quest’operazione gratuitamente. per le altre Heartbleed è stata una specie di manna dal cielo. L’emissione di un nuovo certificato non impedisce però a un aggressore di impersonare il sito usando le vecchie chiavi e il vecchio certificato finché quest’ultimo non scade. Il vecchio certificato deve essere revocato, deve cioè essere invalidato prima della sua data di scadenza. E qui sta il problema, perché l’infrastruttura non è predisposta per trattare un grande volume di revoche. Al 16 aprile netcraft stimava che dei 500.000 o più certificati da trattare solo 80.000 erano già stati revocati/sostituiti. E alcune autorità ritengono completamente inefficace la revoca di un certificato. nonostante ciò io non ho cambiato le mie password di accesso ai numerosi siti su cui ho un account. Devo stare calmo e continuare così. Anche se, in fin dei conti, trasferirsi su un altro pianeta in questo momento è forse la soluzione migliore.

Un racconto breve di Isaac Asimov, scritto nel 1958 e intitolato Nove volte sette (titolo originale The feeling of Power),

è ambientato in un’età in cui gli umani sono così dipendenti dai computer da non essere più in grado di fare semplici calcoli aritmetici. Come nella migliore fantascienza la storia diventa sempre meno irrealistica man mano che ci spingiamo nel futuro. recentemente in ufficio abbiamo cambiato moquette. per valutarne il costo il venditore ha battuto un po’ di tasti sulla sua calcolatrice ed è venuto fuori che a noi servono 2.000 metri quadrati. Ma la radice quadrata di 2.000 è, bene, vediamo, la radice quadrata di 20 è più di 4 e meno di 5, quindi la radice quadrata di 2.000 deve essere compresa tra 40 e 50. non essendo un campo da calcio, la nostra sala della reception non è larga 40 metri... Il senso di questa storiella è che il giovane venditore non sembrava in grado di capire che c’era qualcosa di sbagliato nel risultato; non aveva nessuna idea dell’“ordine di grandezza”. Alcuni di voi ricorderanno quando i commessi erano in grado di “calcolare” il resto contando le monete mentre ve le passavano. oggigiorno si affidano completamente al registratore di cassa per fare i conti. E molti di noi stanno perdendo la capacità di leggere le carte geografiche, diventando dipendenti dal navigatore satellitare. Quanto ci vorrà prima che dispositivi tipo i Google Glass si diffondano e le persone perdano la capacità di ricordarsi i fatti? Forse nel lontano futuro? Mi sembra un racconto di Asimov...

Dipendenze pericolose

La falla è stata chiusa, ma il mondo è ancora pieno di certificati potenzialmente compromessi

Il cuore sanguina...

non è un’operazione semplice per un browser verificare se un certificato apparentemente valido è stato revocato. può consultare una lista di revoche, che però deve essere aggiornata spesso,

anche se sempre più di frequente i browser moderni non lo fanno per default. potrebbe invece usare OCSP (Online Certificate Status Protocol) per chiedere all’autorità di certificazione se un

certificato specifico è stato revocato. purtroppo nessuna di queste soluzioni sembra ottimale, dato che entrambe generano un’enorme quantità di traffico sulla rete.

Questo certificato è stato revocato?

038_041_LXP_146_LXF186.sysadmin 38 21/09/14 16:43

Page 41: 10_ottobre2014

SysadminSysadmin

38 LInux pro 146 LInux pro 146 39

(tradurre nomi netBIoS in indirizzi Ip) che Microsoft ha risolto in tre modi diversi. Il primo consiste nell’inviare a tutti i nodi della rete una richiesta (“chi di voi ha il nome netBIoS VEnuS”?). Il secondo prevede un servizio centralizzato chiamato WINS (Windows Internet Name Service), un servizio a cui si registrano le macchine netBIoS e che risponde alle richieste di risoluzione di nomi netBIoS. Il terzo è un file locale chiamato lmhosts, analogo al file /etc/hosts di Linux. Le implementazioni più recenti di CIFS girano direttamente su TCp/Ip e il vecchio meccanismo di risoluzione dei nomi netBIoS ha lasciato posto a DnS. Inutile dire che i protocolli di Linux e quelli di Windows non sono in grado di lavorare insieme. per questa ragione nel 1992 Andrew Trigell iniziò a lavorare a un’implementazione open Source del protocollo SMB chiamata Samba. La sua funzione più importante è quella di consentire la condivisione di file e stampanti con client Windows. Le versioni più recenti sono anche in grado di far parte di un Windows Domain, di agire come un pDC (Primary Domain Controller) e di integrarsi con Active Directory.

Installazione e configurazioneSe volete mettere in pratica quanto esporrò vi occorre un’installazione standard di CentOS 6.5. E se volete verificare che questa faccenda dell’interoperabilità funzioni per davvero vi occorrerà un sistema Windows da usare come client: io ho usato Windows 7.L’installazione standard di CentoS 6.5 comprende qualcosa di Samba, tra cui strumenti a riga di comando come findsmb, smbclient e smbprint, oltre a winbindd e alle librerie di supporto. ne parleremo in seguito. per installare la parte server di Samba e la documentazione ho dato i seguenti comandi:yum update -yyum install samba samba-doc

Il pacchetto samba contiene i due demoni chiave: nmbd e smbd. Il pacchetto samba-doc contiene tutte le pagine di manuale e le versioni pDF complete dei tre libri (leggete il box Per saperne di più qui sopra). Da notare che si tratta di Samba 3 (3.6.9 per l’esattezza); Samba 4 non è ancora la versione di default in CentoS, anzi, ho avuto dei problemi provando a installarla, anche se devo ammettere di non averci provato con particolare impegno. Se siete come me e vi piace avere qualcosa di funzionante nel più breve tempo possibile passate a esaminare il file di configurazione /etc/samba/smb.conf. Molto del vostro lavoro su Samba ruoterà attorno a questo file. La distribuzione CentoS fornisce un file di 288 righe), ma per la maggior parte si tratta di utili commenti e di direttive di esempio commentate. Ho quindi deciso di rinominarlo e di cominciare da zero:

I l sogno di un sysadmin che su ogni sistema nella sua azienda giri la stessa versione del medesimo sistema operativo (preferibilmente Linux) non è destinato ad avverarsi, almeno non nell’immediato

futuro. Dal mio punto di vista è un bene: mi piace che ci sia un po’ di biodiversità. nonostante ciò ci sono molte aziende che stanno introducendo Linux (sia su server sia su desktop) in quella che era una volta un’infrastruttura basata su Windows e i due sistemi devono essere in grado di parlare tra loro. non c’è bisogno di dire che in termini di interoperabilità Linux e molto più avanti rispetto a Windows.nei prossimi mesi parlerò quindi di alcuni degli strumenti che facilitano l’integrazione tra sistemi Linux e sistemi Windows. Samba gioca un ruolo importante in tutto questo, ma ci sono altre soluzioni per l’interoperabilità, per esempio Wine, che meritano attenzione. Questo mese daremo un’occhiata alla condivisione di file.

Imparare dalla storiaCome probabilmente saprete, sia Linux che Windows dispongono di protocolli nativi per consentire l’accesso a filesystem remoti. Linux ha NFS (Network File System), nato in Sun Microsystem. Windows in origine usava il protocollo chiamato SMB (Server Message Block), antecedente all’adozione da parte di Microsoft delle reti TCp/Ip, che usava una ApI di rete chiamata NetBIOS, che a sua volta si basava su un protocollo chiamato NetBIOS Frames (NBF). ogni computer della rete era dotato di un semplice nome testuale, il suo nome netBIoS, che in origine veniva usato per identificare la macchina: non esisteva nessun indirizzo numerico analogo a un indirizzo Ip. Da allora SMB ha subìto una notevole evoluzione e nel 1996 Microsoft l’ha ribattezzato Common Internet File System (CIFS). Da un lato il vecchio protocollo nBF, pensato per piccole reti locali, è stato sostituito con TCp/Ip, dando luogo a un insieme noto come NBT (NetBIOS over TCP). Questo ha introdotto il problema di definire un metodo di risoluzione dei nomi

Abbandonati i suoi piani per dominare il mondo, il buon Dottore torna alla realtà cercando di far lavorare insieme Linux e Windows

Integrare Linux e Windows

La home page del Samba Web Administration Tool (SWAT). Da qui è possibile accedere alle pagine di manuale e alle singole pagine di configurazione

Per saperne di piùCi sono tre libri gratuiti dedicati a Samba 3: Samba 3 HOWTO, Samba 3 by Example e Developer’s Guide, tutti in inglese. I pDF completi di questi tre libri fanno parte del pacchetto samba-doc di CentoS. In alternativa è possibile scaricare il tarball della documentazione (http://

www.samba.org/samba/docs, seguite il link Daily Docs Build). nel tarball ci sono anche le pagine di manuale. I libri dedicati a Samba 4 sono ancora pochi: Marcelo Leal ha però ad aprile pubblicato Implementing Samba 4, che ho ordinato. Ve ne parlerò il mese prossimo.

038_041_LXP_146_LXF186.sysadmin 39 21/09/14 16:43

Page 42: 10_ottobre2014

SysadminSysadmin

40 LInux pro 146 LInux pro 146 41

cd /etc/sambamv smb.conf smb.conf.original

Ecco il mio smb.conf minimale e funzionante:[global] workgroup = WESTWICK netbios name = LxF security = user name resolve order = wins bcast

[docs] comment = documentation path = /export/docs read only = yes

Quelli di voi che si ricordano i vecchi file .InI di Windows troveranno la sintassi familiare. Come potete immaginare, la sezione [global] definisce le impostazioni complessive per il server. un workgroup rappresenta un gruppo, identificato da un nome, di macchine (di solito circa una dozzina) all’interno di una singola rete locale. Il prossimo mese esaminerò le impostazioni di sicurezza. La riga name resolve order specifica il meccanismo da usare per eseguire la risoluzione dei nomi netBIoS; nel mio caso dovevo evitare che i programmi lato client come smbclient cercassero di usare DnS per la risoluzione dei nomi. La sezione [docs] definisce uno share, cioè un’area di file condivisi: docs non è una parola chiave, è il nome dello share. L’ho semplicemente inventato. ovviamente path specifica la directory all’interno del filesystem del server a cui corrisponde lo share. Dopo aver modificato smb.conf conviene lanciare il programma testparm che verifica la sintassi del file di configurazione. È utile per scoprire eventuali errori di battitura. per esempio, se avessi scritto male una direttiva nel file: securty = user

testparm mi segnalerebbe l’errore così:unknown parameter encountered: “securty”

Creiamo ora lo share che abbiamo definito:# mkdir -p /export/docs

# echo “come preparare il pane” > /export/docs/bread# echo “come sbattere le uova” > /export/docs/eggs Accendiamo i motoriInfine è giunto il momento di avviare i demoni smbd e nmbd. Il primo è quello che fa le funzioni effettive di file server, mentre il secondo fornisce servizi di risoluzione dei nomi e ricerca nella rete.# service smb start # service nmb start

Se volete che i servizi partano all’avvio della macchina dovrete anche dare i seguenti comandi:# chkconfig smb on# chkconfig nmb on

per consentire l’accesso alle porte su cui i due demoni sono in ascolto dobbiamo modificare la configurazione di default del firewall. Lanciate la relativa GuI di configurazione che si trova alla voce SistemaD Amministrazione D Firewall e abilitate i servizi Client samba e Samba nella pagina Servizi accreditati. prima di spingerci oltre dobbiamo fornire un account e una password che i client possano usare per collegarsi al nostro share. Il problema della definizione di account utente e dell’autenticazione in un ambiente Linux/Samba/Windows è, per usare un eufemismo, alquanto complessa e verrà affrontata, anche se non in dettaglio, il mese prossimo. per ora limitiamoci a usare il programma smbpasswd per creare un account utente (e per impostare la relativa password) che abbiano un significato nel mondo Windows. per esempio il comando# smbpasswd -a chris

creerà un account Samba per l’utente chris e ci permetterà di assegnargli un password. Da notare che perché tutto questo funzioni Chris deve già avere un account Linux regolare, per esempio in etc/passwd.

Provare da LinuxA questo punto sono tentato di precipitarmi sul mio sistema Windows per ammirare il mio nuovo share. Esistono però su Linux alcuni strumenti lato client che posso usare per verificare che tutto funzioni. per prima cosa il comando findsmb mi darà l’elenco di tutte le macchine sulla rete locale che rispondono a richieste SMB:# findsmb *=DMB +=LMBIp ADDr nETBIoS nAME WorKGroup/oS/VErSIon--------------------------------------------------------------------192.168.1.80 LxF +[WESTWICK] [unix] [Samba 3.6.9-

169.el6_5]possiamo poi usare smbclient per avere l’elenco degli share disponibili sul nostro server:$ smbclient -L LxF -u chrisEnter chris’s password:Domain=[WESTWICK] oS=[unix] Server=[Samba 3.6.9-169.el6_5]

Sharename Type Comment --------- ---- ------- docs Disk documentation IpC$ IpC IpC Service (Samba 3.6.9-169.el6_5)Domain=[WESTWICK] oS=[unix] Server=[Samba 3.6.9-169.el6_5]

Server Comment --------- ------- LxF Samba 3.6.9-169.el6_5

Workgroup Master

Perché si chiama Samba?Samba nacque nel 1991 quando Andrew Trigell usò un analizzatore di pacchetti per esaminare e fare il reverse engineering del protocollo SMB. (Vale la pena di fare una pausa per notare che tutto lo sviluppo di Samba è il risultato di faticosi reverse engineering di protocolli e non di piacevoli riunioni con i tecnici di

Microsoft). Secondo la leggenda il none è il risultato della ricerca di parole di dizionario che contengano SMB, per esempio così:grep -i ‘^s.*m.*b’ /usr/share/dict/words

anche se, quando lancio io il comando, ottengo ben 98 risultati, tra cui Stromboli e scumbag.

Usare la pagina

di SWAT per la configurazione

di uno share sembra molto

più semplice della modifica

manuale di smb.conf,

ma non aiuta in alcun modo

a comprendere quello che

succede

038_041_LXP_146_LXF186.sysadmin 40 21/09/14 16:43

Page 43: 10_ottobre2014

SysadminSysadmin

40 Linux pro 146 Linux pro 146 41

--------- ------- WESTWiCK

il misterioso IPC$ è uno share nascosto usato per la comunicazione tra processi. Fin qui tutto bene, ma il vero test consiste nello spostarsi sul nostro sistema desktop Windows (Windows 7 nel nostro caso), lanciare Windows Explorer e verificare che lo share sia visibile da lì. Ho ottenuto vari gradi di successo nel far apparire spontaneamente la macchina nella vista di rete all’interno di Explorer: a volte ho dovuto inserire esplicitamente il nome unC dello share (in questo caso \\LXF\docs) nella barra di Explorer perché diventasse visibile (guardate la schermata Windows qui a lato). Lato clientLinux può anche agire come client e accedere ai file presenti in uno share su una macchina Windows. non è necessario che i server Samba siano in esecuzione, basta il programma smbmount e gli altri strumenti lato client di Samba, che di solito sono installati di default. Come test ho abilitato la condivisione sulla mia macchina Windows 7 e ho creato uno share chiamato windowsphoto per esportare la mia collezione di foto. il nome netBioS del server è Hp250. Tornando sul sistema Linux possiamo usare il comando smbclient -L come nell’esempio precedente per ottenere l’elenco degli share su un server Windows. non riporterò qui il risultato del comando, dato che è più o meno simile al precedente. invece mi connetterò allo share, ne elencherò il contenuto e recupererò un file da esso. Se avete già usato un client a riga di comando per il protocollo FTp tutto vi risulterà familiare:# smbclient //Hp250/windowphotos -u chrisEnter chris’s password:Domain=[Hp250] oS=[Windows 7 professional 7601 Service pack

1] Server=[Windows 7 professional 6.1]smb: \> dir

2012-08-15 Germany D 0 Sat oct 26 19:56:37 2013desktop.ini AHS 504 Mon oct 28 06:04:23 2013DSC08116.JpG A 3314307 Wed oct 23 17:06:05 2013DSC08119.JpG A 3204112 Wed oct 23 17:05:53 2013florida2013 D 0 Wed Jan 1 20:46:02 2014

smb: \> get DSC08116.JpGgetting file \DSC08116.JpG of size 3314307 as DSC08116.JpGsmb: \> quit

È tutto piuttosto complicato, meglio montare lo share direttamente all’interno del filesystem Linux e accedervi usando il suo percorso come con qualsiasi altro file:# mount -t cifs -o user=chris,password=xxxxxx //Hp250/

windowphotos /mntpossiamo ora esaminare la directory e accedere ai file come se fossero parte del filesystem locale:# ls -l /mnttotal 191609drwxr-xr-x. 1 root root 655360 oct 26 19:56 2012-08-15

Germany-rwxr-xr-x. 1 root root 504 oct 28 06:04 desktop.ini-rwxr-xr-x. 1 root root 3314307 oct 23 2013 DSC08116.JpG-rwxr-xr-x. 1 root root 3204112 oct 23 2013 DSC08119.JpG

in alternativa al montaggio dello share è possibile utilizzare alcuni file manager che sono in grado di connettersi a uno share Windows e di visualizzarne il contenuto. SWATSe volete evitare di modificare manualmente il file di configurazione di Samba potete utilizzare SWAT (Samba Web Administration Tool). È necessario installare un ulteriore pacchetto:yum install samba-swat

Questo si porterà probabilmente dietro il pacchetto xinetd come dipendenza. Si tratta del “super-server” che lancia SWAT, restando in attesa delle richieste di connessione. Aprite perciò il file /etc/xinetd/swat e modificate la seguente riga:disable = yes

indisable = no

Se volete accedere a SWAT da un browser Web su un’altra macchina dovrete anche identificare la seguente rigaonly_from = 127.0.0.1

e commentarla oppure modificarla in modo da abilitare il blocco di indirizzi locale. Qualcosa del tipoonly_from = 192.168.1.0/24

una volta fatte queste modifiche riavviate xinetd:# service xinetd restart

Dovreste ora trovare SWAT in ascolto sulla porta 901: se puntate il browser su http://127.0.0.1:901 ed eseguite il login come root dovreste vedere la schermata principale di SWAT. Da qui è possibile accedere, tramite vari link, alle pagine di manuale e attraverso i pulsanti posti in alto alle singole pagine di configurazione. una delle cose che mi piacciono di SWAT è il fatto che per i parametri che possono assumere un insieme predefinito di valori è disponibile un menu a discesa, in modo da evitare errori. Anche i link Help sono molto utili, dato che portano alla voce corrispondente nella pagina di manuale di smb.conf. Attenzione quando salvate il file, perché SWAT elimina tutti i commenti, compresi tutti i suggerimenti presenti come commenti nel file originale. SWAT è uno strumento davvero utile, ma un’interfaccia grafica non vi esime dal conoscere il significato di tutti i parametri che state modificando. E questa è la parte difficile. il mese prossimo vedremo come definire gli account utente e come funziona l’autenticazione. un argomento particolarmente complesso... LXP

Interoperabilità in azione: uno share Samba visto da Windows Explorer

NomenclaturaMettendo a confronto i due sistemi di condivisione di file CiFS e nFS si nota che CiFS introduce un livello di nomi che nFS non ha. Se monto lo share nFS venus:/export/chris (d’accordo, “share” non è proprio la terminologia esatta per unix, ma concedetemelo) vedrò il percorso del filesystem esattamente come è visto sul server. Se invece monto lo share CiFS //LXF/docs non so qual è il nome della cartella sul server.

038_041_LXP_146_LXF186.sysadmin.indd 41 25/09/14 14:40

Page 44: 10_ottobre2014

42 Linux pro 146

L’angolo di

News, recensioni e guide sul sistema operativo libero per smartphone

Android

Da IFA 2014, la più importante fiera europea dedicata all’elettronica di consumo, arrivano le principali novità dei prossimi mesi

Che Berlino si consideri la capitale economica e politica dell’Europa è risaputo, che voglia

diventarne anche quella della tecnologia lo dimostra ogni anno di più ospitando IFA, la più importante manifestazione europea dedicata all’elettronica di consumo. Anche in un anno di crisi come il 2014 le novità sono molte e interessanti e si riferiscono principalmente ai dispositivi mobili che stanno letteralmente monopolizzando il settore dell’iT. il produttore da battere rimane Samsung che non si è limitato a presentare Galaxy Note 4, la quarta generazione del suo “phablet” che ha rivoluzionato il

settore della telefonia mobile portando le dimensioni dello schermo fin quasi ai 6 pollici. Le novità del Galaxy note 4 sono poche ma tutte sostanziali: la risoluzione dello schermo Super Amoled da 5,7 pollici è ora la Quad HD, cioè 2560x1440 pixel, la struttura in plastica è stata rinforzata da una cornice d’acciaio in grado di garantire una maggiore robustezza, esattamente come nel Galaxy S5. inoltre la sezione software punta tutto sul pennino che ora permette di muoversi sullo schermo esattamente come con il mouse sul pC. Ma la vera novità che nessuno si aspettava da Samsung è il Galaxy note Edge, il primo telefono con lo

Tutte le novità di Berlino

Asus, Sony e tutti gli altri

Naturalmente non tutte le principali novità hanno il marchio Samsung. Sony per esempio continua

nella sua strategia di realizzare prodotti dal design curato e sempre più resistenti alle intemperie. il nuovo smartphone Xperia Z3 ha addirittura una certificazione ip 65/68, è cioè completamente resistente all’acqua al punto di poterci anche scattare foto con la nuova fotocamera da 20,7 megapixel. Lo schermo è ora da 5,2 pollici e il processore è lo Snapdragon S801, semplicemente il più potente in circolazione. inoltre xperia Z3 può essere usato con la playStation 4 come secondo schermo. L’unico vero problema rimane il prezzo di 699 euro che

oltretutto difficilmente è destinato a scendere. Sony ha presentato anche la terza generazione del suo smartwatch che ora adotta il sistema operativo Google Wear, come la maggior parte dei concorrenti. Lo smartwatch più interessante l’ha però mostrato Asus, il suo ZenWatch è sicuramente più elegante della media dei modelli con Android Wear grazie alla struttura in alluminio e acciaio della cassa e al display Amoled da 1,63 pollici a 320x320 pixel con protezione Gorilla Glass. Senza dimenticare la dotazione hardware che integra un processore Dual Core SnapDragon 400 e 4 GB di memoria integrata. Anche Lenovo ha presentato alcune interessanti novità, come il Vibe X2 che colpisce subito per il particolare

design a tre strati di materiali diversi (tra i tanti è possibile scegliere anche il bamboo), combinabili in diverse soluzioni. il tutto con un display da 5 pollici e soli 120 grammi di peso, con la possibilità di modificare le componenti anche in un secondo momento scegliendo per esempio una batteria esterna o uno speaker da applicare sulla scocca. infine HTC che, seppur lentamente, sembra stia uscendo dalla crisi degli ultimi anni, ha presentato un nuovo smartphone di fascia media, il Desire 820 che ha come punti di forza la fotocamera anteriore da 8 Mp che lo rende uno dei migliori selfie-phone in commercio e gli altoparlanti BoomSound. uno smartphone perfetto per i millennial, cioè i ragazzi nati alla fine del

Se hai news da segnalarci o dei commenti scrivici ad [email protected]

schermo che continua anche sul bordo laterale. Le dimensioni sono le stesse del note, ma allo schermo Amoled da 2560 x 1440 pixel è stata aggiunta una striscia di pixel curvi che copre il bordo destro dello smartphone. Si tratta in pratica di un’area dedicata alle notifiche e agli avvii veloci delle app, che rischia però di diventare un incubo per i mancini. un’idea sicuramente interessante in un settore in cui ormai gli unici progressi riguardavano le dimensioni e la risoluzione dello schermo o la potenza del processore. peccato solo che non arriverà in italia, almeno non per quest’anno.

Galaxy Note Edge, il primo smartphone con il display che continua anche lungo il bordo destro, non arriverà presto in Europa, ma rimane la più interessante novità presentata a Berlino

Forme e materiali dello ZenWatch sono quelli di un classico orologio elegante, ma sotto la cassa in acciaio si nasconde un processore SnapDragon 400 con 4 GB di memoria e il nuovo sistema Android Wear

millennio scorso e all’inizio di questo che si apprestano a diventarne protagonisti anche come clienti. LXP

042_LXP_146_news android 42 21/09/14 16:44

Page 45: 10_ottobre2014

Linux pro 146 43

LG G3 S L’angolo di Android

Caratteristiche 8Prestazioni 7Autonomia 8Qualità/prezzo 8.5

LG G3 S

La versione “economica” del modello top di LG ha lo stesso software e buona parte dell’hardware del fratello maggiore.

Il voto di Linux Pro

Giudizio

Produttore: LG Web: www.lg.com/itPrezzo: €349

8

Da qualche anno i principali produttori di smartphone associano al loro modello di punta

una versione “mini” che è più piccola, meno potente e meno costosa dell’originale pur avendo la stessa interfaccia personalizzata e molte delle novità hardware. L’obiettivo è naturalmente quello di catturare i tanti appassionati di tecnologia che non possono permettersi i 700 euro del prezzo di uscita del modello top, ma che vogliono comunque avere tra le mani l’ultima novità realizzata dal produttore. È questo il caso di G3 S, il “mini” realizzato da LG che ricalca in tutto e per tutto le caratteristiche software e buona parte di quelle hardware del G3 a partire dall’autofocus laser e dai tanti sensori che comprendono anche quello a infrarossi. Un’altra risoluzione Le differenze principali riguardano schermo e processore, che sono comunque di buon livello e hanno poco da invidiare al modello superiore. il display per esempio è un luminoso ipS da 5 pollici con risoluzione HD da 1280x720 pixel. Certo, niente a che vedere con il G3 originale che ha una

risoluzione esattamente doppia di 2560x1440 pixel, che però sono difficilmente percepibili a occhio nudo a meno di non zoomare su immagini in 4K. una risoluzione così elevata richiede poi maggiore energia sia dal processore che dalla batteria e questo alla lunga è più un problema che un vantaggio. Sul G3 S manca invece il sensore di

un vero successo, presto imitato da molti. Manca la certificazione di impermeabilità presente su molti modelli della concorrenza, ma questa è una scelta di LG che le ha permesso così di contenere i prezzi. Buona fotocamera nonostante abbia un sensore da “soli” 8 megapixel, la fotocamera di G3 S si è comportata bene durante le nostre prove, anche con situazioni di luce ambiente non ottimali. il merito va in massima parte al sistema di messa a fuoco laser che permette tempi di scatto rapidissimi e immagini sempre a fuoco. La ricezione è più che buona e comprende tutti gli ultimi standard in 4G che permettono teoricamente di scaricare dati in mobilità fino a 150 MB al secondo, esattamente come nel modello superiore. Anche l’audio in vivavoce è sufficientemente alto nonostante l’altoparlante sia sistemato sul retro, questo è possibile grazie alla particolare curvatura del terminale che non viene così coperto quando è poggiato su di un tavolo. L’interfaccia è praticamente identica a quella di G3 ed

LG G3 S

è altrettanto fluida nonostante la dotazione hardware sia decisamente inferiore. potrete così utilizzare lo smartphone come telecomando per la TV grazie a Quick remote e al sensore a raggi infrarossi, mentre QSlide permette di organizzare le App in finestre fluttuanti e la barra di stato è completamente personalizzabile. in definitiva si tratta di un’ottima scelta per un prezzo di listino di 349 euro che al momento in cui scriviamo, con terminale da poco disponibile, è già acquistabile sul Web a meno di 300 euro. LXP

La versione “small” del modello di punta di LG conserva tutti i pregi del fratello maggiore con un prezzo più abbordabile

luminosità automatica e questo significa che dovrete regolare volta per volta il livello di luminosità più adatto, si tratta a nostro avviso di un limite abbastanza importante visto che questo sensore è presente ormai anche sui modelli di fascia bassa.il motore è il SoC super collaudato Qualcomm Snapdragon S400 da 1200 MHz che si è comportato benissimo anche con i giochi 3D più esigenti. Se proprio vogliamo trovare un limite questo è costituito dal solo GB di memoria rAM, un po’ poco se si vogliono fare girare più app insieme. Lo spazio di archiviazione di soli 8 GB (4 reali) rappresenta invece un problema minore visto che è possibile espandere la memoria attraverso una scheda microSD. i materiali di G3 S ci sono sembrati meno curati rispetto a quelli del modello superiore, manca la finitura “metal” e le dimensioni sono praticamente le stesse di un modello che ha comunque un display di mezzo pollice più ampio. il retro è facilmente staccabile e questo è di sicuro un vantaggio visto che permette di sostituire facilmente la batteria da 2.540 mAh, noi non abbiamo comunque avuto particolari problemi ad arrivare alla fine

di una giornata di lavoro anche intensa. La disposizione dei tasti sul retro è ormai una caratteristica degli smartphone di LG e può piacere o meno, quel che è certo però è che il sistema di avvio con il doppio tap e quello di sicurezza con la combinazione del Knock Code su diverse parti del display spento hanno rappresentato

Per risparmiare il più possibile spazio LG ha scelto di inserire i pulsanti di comando sul retro. Una scelta che però non ha convinto tutti

“Una risoluzione HD in uno schermo IPS da 5 è più che sufficiente per video e navigazione su Internet”

043_LXP_146_rec_android 43 22/09/14 15:22

Page 46: 10_ottobre2014

44 Linux pro 146

L’angolo di Android Huawei Ascend Y530

Caratteristiche 4Autonomia 6Prestazioni 4Qualità/prezzo 4

Huawei Ascend Y530

Uno smartphone dalle prestazioni troppo limitate per il prezzo richiesto.

Il voto di Linux Pro

Giudizio

Produttore: Huawei Web: www.huaweidevice.itPrezzo: € 149

5

S e si parla di prodotti entry level, sappiamo fin da subito che qualche compromesso è stato

fatto per contenere i prezzi e mantenere l’accessibilità alla portata di tutti. Con il modello Ascend Y530, Huawei si cimenta proprio in questo tipo di fascia di mercato con uno smartphone che, pur avendo qualche luce, ha anche diverse ombre. Tra le prime, possiamo annoverare la doppia interfaccia utente, una classica e una definita “simple”. Quest’ultima, che ricorda Windows phone, è costituita da icone di grandi dimensioni, che rendono l’uso del dispositivo piuttosto intuitivo. naturalmente esiste anche un’interfaccia più classica, in perfetto stile Android. pure il design fa parte delle note positive di questo smartphone. infatti il suo aspetto è sicuramente gradevole e l’apparecchio risulta sufficientemente solido. La maneggevolezza è assicurata dal buon posizionamento dei pulsanti di accensione e di regolazione del volume, entrambi sulla sinistra. La porta micro uSB si trova sul fondo e quella per l’auricolare in alto. Quando invece andiamo a valutare l’aspetto tecnico di questo apparecchio, la musica cambia in modo radicale. per esempio, lo schermo da 4,5 pollici ha una risoluzione di appena 854x480 pixel. Quindi le immagini sono di bassa qualità e i testi non risultano sempre nitidi da leggere.

pubblicazione nei nostri social network. Quindi scordiamoci di ottenere stampe di livello anche solo decente. Sempre per contenere i costi, Huawei è dovuto scendere a compromessi anche con la batteria in dotazione, optando per una da 1.700 mAh. Di conseguenza, l’uso dell’apparecchio mobile per attività multimediali ne riduce la durata in modo drastico, tant’è che rischiamo di non arrivare alla fine della giornata senza collegarlo al caricabatterie. per quel che riguarda le applicazioni preinstallate, non aspettiamoci niente di trascendentale. A parte l’interfaccia utente secondaria “simple” ne troveremo poche altre e tra le più classiche, come un notepad. Tuttavia, ce n’è una che ci ha fatto piacere trovare, visto che sta scomparendo tra i modelli più recenti: la radio FM. in conclusione, siamo di fronte a un modello di smartphone

Huawei Ascend Y530

chiaramente progettato per i neofiti che però ha un rapporto qualità/prezzo tutt’altro che attuale. infatti sarebbe stato molto più competitivo un anno fa. resta comunque il fatto che si tratta di un prodotto solido e piuttosto pratico, soprattutto per chi non ha voglia di perdere troppo tempo a imparare a usare uno smartphone. LXP

L’Ascend Y530 è stato progettato per essere uno smartphone di fascia bassa e per i neofiti di questo tipo di dispositivo

Tuttavia, siamo ancora in linea con gli smartphone della stessa fascia di mercato. il processore, un dual-core Qualcomm Snapdragon 200 da 1,2 GHz, rappresenta un po’ il minimo sindacale. oltretutto è supportato da appena 512 MB di rAM, che serve giusto per far funzionare la versione 4.3 del sistema operativo Android, per giunta non in modo molto reattivo. Va da sé che anche il caricamento delle varie app e delle pagine Web risulti piuttosto lento. problemi si riscontrano anche nel passaggio da un’app all’altra, con qualche chiusura di quelle che funzionano in background, per poter liberare rAM. nemmeno lo spazio di archiviazione è soddisfacente, poiché ben poco resta dei 4 GB di base, che vengono in buona parte occupati dal sistema operativo. Questa memoria interna viene ulteriormente ridotta dalla presenza delle applicazioni preinstallate e dall’interfaccia “simple”. Quindi diventa praticamente obbligatorio l’inserimento di una MicroSD nell’apposito slot per poter salvare brani musicali, foto e file. L’Ascend Y530 è dotato di due fotocamere, una frontale e una posteriore. purtroppo la prima ha un risoluzione VGA, che rende praticamente inutilizzabili le immagini scattate. La seconda si comporta già meglio con i suoi 5 megapixel. Tuttavia non possiamo sperare di realizzare niente più di immagini adatte alla

Scheda tecnica Sistema operativo

Android 4.3 Processore

Qualcomm Snapdragon 200 dual-core da 1,2 GHz

Memoria 4 GB, 512 MB di rAM

Dim. 132,5 x 67 x 9,3 mm Peso 145 grammi Schermo 4,5’’ Risoluzione schermo

854 x 480 pixel Espansione MicroSD

044_LXP_146_rec_android_1 44 21/09/14 16:44

Page 47: 10_ottobre2014

Linux pro 146 45

Nokia X L’angolo di Android

Caratteristiche 6Autonomia 6Prestazioni 6Qualità/prezzo 6

Nokia X

Uno smartphone con pochi punti di forza, tra i quali l’aspetto esteriore.

Il voto di Linux Pro

Giudizio

Produttore: nokia Web: www.nokia.comPrezzo: € 129

6

D i sicuro molti di noi resteranno perplessi nel ritrovare un sistema operativo

marcato Google in uno smartphone prodotto da un’azienda controllata da Microsoft. Eppure l’X di nokia è proprio questo, poiché la sua storia affonda le radici in un periodo precedente all’acquisto da parte del gigante di redmond. Tuttavia, non aspettiamoci di trovare l’ultima versione di Android, perché in questo apparecchio è installata la 4.1 di AoSp, cioè del progetto Android open Source, alla quale sono state aggiunte applicazioni come il nokia Store e Here Maps. proprio quest’ultima app lo trasforma in un ottimo navigatore satellitare, ideale per chi si sposta molto. resta però il fatto che siamo di fronte a un modello entry level di smartphone, quindi dalla potenza piuttosto limitata e dalle caratteristiche non certo esaltanti, anche considerato il prezzo di listino di 129 euro, di poco inferiore a quello di apparecchi molto più appetibili, come il Lumia 520, dello stesso produttore. Che non sia uno smartphone “da corsa”, lo si capisce subito dal processore che monta, un Qualcomm Snapdragon 200 dual-core da 1,2 GHz. A peggiorare le cose abbiamo appena 512 MB di rAM. inoltre, i 4 GB di memoria interna, in buona parte occupati dal sistema operativo e dalle app, ci costringono a valutare

posteriore, quindi gli appassionati dei selfie dovranno per forza scegliersi un altro apparecchio. inoltre, i 3,1 megapixel del dispositivo fotografico in dotazione sono troppo scarsi per ottenere immagini di qualità. Al massimo possono andare bene per la pubblicazione sui social network, non certo per stampe in alta risoluzione. L’autonomia di questo modello entry level di nokia è fortemente condizionata dalla presenza di una batteria da 1.500 mAh, che sconta anche la presenza di una tecnologia datata. Quindi, finché teniamo l’apparecchio in standby, i consumi sono accettabili, ma se lo usiamo molto, anche semplicemente per telefonare, allora la situazione peggiora in modo radicale. per fortuna la batteria è rimovibile, per cui possiamo sfruttare questa

Nokia X

Al di là dell’aspetto estetico che sicuramente piacerà a molti, questo smartphone Android di Nokia si distingue per ben poche altre caratteristiche. Tra queste c’è la capacità di gestire due SIM

caratteristica per correre ai ripari. È quindi evidente che il nokia x, pur essendo un prodotto affidabile, soprattutto per quanto riguarda la telefonia pura, ha ben pochi punti di forza e le prestazioni in generale non superano la sufficienza. LXP

Uno smartphone dual-SIM poco ingombrante che può diventare un buon navigatore satellitare

seriamente l’acquisto di una espansione MicroSD. Questo dispositivo mobile, comunque, ha anche alcuni aspetti positivi. il più evidente è l’aspetto estetico, con plastiche coloratissime, in tipico stile nokia che, pur essendo materiali non certo costosi, non sono nemmeno scadenti. Quindi l’apparecchio dà una chiara sensazione di solidità. Anche la possibilità di ospitare due SiM telefoniche può risultare utile per diversi utenti, sebbene non sia una delle caratteristiche più richieste nel nostro paese. infine, vale la pena di sottolineare la presenza di diversi client per poter chattare come e con chi vogliamo e della app nokia Mixradio, che ci permette di ascoltare musica gratuitamente in streaming. L’x è anche un buon apparecchio telefonico, con un’ottima ricezione e un altoparlante che restituisce un audio forte e nitido, perfino in modalità vivavoce. purtroppo le belle notizie finiscono qui. infatti, fin dalla prima accensione, ci accorgiamo di avere a che fare con uno schermo TFT e non con un più moderno ipS. La risoluzione di 800 x 480 pixel può essere considerata in linea con questa fascia di modelli, ma la scarsa potenza del processore, di vecchia generazione, non rende giustizia all’interfaccia utente e al software ben progettati. Sul fronte della multimedialità, l’x ci riserva un’altra delusione, poiché ha una sola fotocamera

Scheda tecnica Sistema operativo

Android AoSp 4.1 Processore

Qualcomm Snapdragon 200 dual-core da 1,2 GHz

Mem. 4 GB, 512 MB di rAM

Dim. 115,5 x 63 x 10,4 mm Peso 128,7 grammi Schermo 4’’ Risoluzione schermo

800 x 480 pixel Espansione MicroSD

045_LXP_146_rec_android_2 45 21/09/14 16:44

Page 48: 10_ottobre2014

È in edicola

min_SpecRITRATTI_210x285.indd 1 25/08/14 14.56

Page 49: 10_ottobre2014

Test >>Kano OSUn elegante e semplice sistema

operativo per Raspberry Pi pag. 48

Linksys WRT1900AC Un router tanto potente

quanto personalizzabile pag. 49

Gamdias Hades Un solido mouse da gioco

dall’aspetto sobrio pag. 50

Logitech Proteus Core Un ottimo e versatile mouse dalla

sensibilità eccellente pag. 50

OpenMandriva 2014Una distribuzione KDE veloce

e raffinata ma migliorabile pag. 52

OpenBSD 5.5Una distro BSD ricca di funzioni

e decisamente affidabile pag. 53

Confronto >>Media Player HD pag. 54∆ UMPlayer ∆ VLC ∆ Clementine

∆ Kaffeine ∆ MPV

Da non perdere >> pag. 60

OpenBSD 5.5

UMPlayer

Krita

RecensioniTutte le novità in campo software e hardware testate e valutate ogni mese dai nostri laboratori

Se vuoi segnalarci qualche novità scrivi a [email protected]

qUeSTO MeSe...

LinUx PRo 146 47

Ogni test di questa sezione

è accompagnato da un giudizio

che riassume con quattro indici numerici

le principali qualità dell’applicazione

o del prodotto hardware messo alla prova.

I laboratori di Linux Pro assegnano

un voto da 1 a 10 alle seguenti categorie:

Caratteristiche: fornisce tutte

le funzioni di cui abbiamo bisogno?

È innovativo?

Prestazioni: esegue in maniera

efficiente le sue funzioni?

È veloce e affidabile?

Facilità d’uso: dispone di un’interfaccia

grafica chiara e facilmente fruibile?

La documentazione che lo accompagna

è sufficientemente completa ed esaustiva?

Qualità/prezzo: ha un prezzo

competitivo? Vale i soldi richiesti

per il suo acquisto?

Il nostro giudizio viene

poi riassunto da un voto finale,

espresso anche graficamente.

Ecco la legenda dei voti:

10 nulla da eccepire. Un prodotto

praticamente perfetto.

8-9 Un buon prodotto. i pochi

difetti presenti non sono gravi.

6-7 Compie il suo lavoro ma

necessita di ulteriori sviluppi.

5-4 Deve migliorare prima di

raggiungere un voto sufficiente.

1-3 Un completo disastro.

Gli sviluppatori devono tornare

alla fase di progettazione.

Ricordiamo infine che i software citati

nelle sezioni Confronto e Da non

perdere sono spesso presenti nel DVD

sotto la voce “Rivista” sotto forma

di codice sorgente o binario.

Una breve legenda

047_LXP_146_introRecens 47 23/09/14 18:12

Page 50: 10_ottobre2014

48 Linux pro 146

Test Kano OS

Kano OS

Funzioni 7Prestazioni 9Facilità d’uso 9Documentazione 7

Kano OS

È una distribuzione ideale per i bambini che desiderano imparare a usare il computer; per il momento non è ancora adatta ai veri ‘smanettoni’.

Il voto di Linux Pro

Giudizio

Sviluppatore: Team Kano Web: http://kano.me/Licenza: open Source

8

Abbiamo provato un nuovo elegante sistema operativo per Raspberry Pi progettato per rendere il dispositivo più accessibile ai nuovi utenti, in particolare ai bambini

Raspbian è di fatto la distribuzione standard per la raspberry pi fin dal

lancio di quest’ultimo nel 2012. Come molte distribuzioni di Linux, però, è caratterizzato da un’ardua curva di apprendimento per i nuovi utenti, in particolare per coloro che muovono i primi passi nel mondo dei computer. È qui che entra in gioco Kano. Costruito sulle solide fondamenta di raspbian, Kano OS fa parte di un kit che ha rappresentato un popolare progetto Kickstarter verso la fine del 2013. il kit contiene tutto ciò che occorre per organizzare un laboratorio informatico in una classe di scuola, compresa un’elegante documentazione e una tastiera decisamente accattivante. in ambiente Windows o Mac oS, Kano oS può essere installato su una scheda da 4 GB per mezzo della pratica applicazione Kano Burner; per quanto riguarda Linux, però, dovremo per ora accontentarci del nostro vecchio amico dd. i nostri test hanno evidenziato che la velocità ottimale si ottiene con una scheda di classe 10. Al primo avvio, il sistema operativo presenta una schermata simile a un terminale. per prima cosa dovete dire a Kano come vi chiamate; verrà così creato il vostro account

alla struttura del sistema operativo. un’aggiunta di rilievo ai software preinstallati è rappresentata da Minecraft e da un linguaggio di programmazione visuale simile a Scratch, che permette a chiunque di creare nuovi contenuti nel mondo di Minecraft. Fra i nuovi software introdotti dal team figura Kano-Settings, uno strumento per la gestione della configurazione del raspberry pi, overclocking compreso. Kano riesce magistralmente a rendere la raspberry pi più facile da usare, introducendovi un’interfaccia utente tanto accattivante quanto accessibile ai bambini e questo è il suo principale punto di forza. Kano oS è adatto a qualunque neofita ma è progettato principalmente per i bambini, per permettere loro di sperimentare e di apprendere dall’esperienza. in sé, Kano oS è ottimo; ma per sfruttarlo al meglio è indubbiamente necessario il materiale aggiuntivo. Mentre scriviamo, quest’ultimo si limita a due libri e ai progetti integrati nel sistema operativo, che fortunatamente sono eccellenti. i libri spiegano come usare il kit e il software di Kano in modo molto semplice e metodico: sembra di leggere un manuale di istruzioni Lego. Alex Klein, uno dei fondatori del progetto Kano, promette che ulteriori contenuti saranno resi

utente. passerete quindi a un semplice indovinello decisamente in stile Matrix. Dopo aver effettuato qualche ulteriore passaggio di configurazione e aver imparato a disinnescare una bomba, potrete collegarvi al desktop di Kano. Le prime impressioni prodotte dal desktop in questione sono di eleganza e notevole reattività; il che non è poco, considerato che raspbian, nella sua forma attuale, è ancora un po’ lento. il team di Kano conferma che questi miglioramenti verranno applicati al più presto anche a raspbian, però. Tra gli altri progressi, ricordiamo la ricompilazione del kernel e lo snellimento del sistema, che comprende ora solo gli elementi essenziali. il software può essere installato mediante il normale metodo apt-get ma Kano è anche provvisto di un proprio sistema di aggiornamento, che manterrà al passo con i tempi tutte le vostre applicazioni installate.

Ricco di applicazioniKano comprende lo stesso pacchetto di applicazioni di raspbian, che tuttavia sono state a loro volta rifinite in modo da funzionare meglio in Kano. per esempio, Sonic pi è stato adattato

disponibili agli utenti di Kano tramite pacchetti di espansione.nel complesso, Kano è un progetto grandioso che risponde con successo all’esigenza di fare dell’apprendimento un’esperienza divertente; e l’integrazione di idee e di progetti ne fa un ambiente ideale per gli studenti. Sul piano tecnico, i miglioramenti in termini di velocità sono più che notevoli e riducono i ritardi che caratterizzano altre distribuzioni per raspberry pi; tuttavia, agli utenti esperti e agli sviluppatori più smaliziati converrà probabilmente rimanere fedeli a raspbian in attesa che Kano giunga a piena maturazione. LXP

In evidenza

Minecraft per tuttiMinecraft è preinstallato insieme a vari progetti che vi consentono di programmare le vostre avventure nel mondo di Minecraft.

ExtraSotto la sua livrea accattivante, Kano custodisce la maggior parte delle applicazioni presenti in raspbian oS.

Il desktop standard di Kano è allegro, colorato e facile da usare e permette ai bambini di sperimentare e concentrarsi sull’apprendimento

048_LXP_146_LXF186_rev_Kanos 48 21/09/14 22:10

Page 51: 10_ottobre2014

Linux pro 146 49

Linksys WRT1900AC Test

Linksys WRT1900AC

Funzioni 6Prestazioni 7Facilità d’uso 8Qualità/Prezzo 5

WRT1900AC

Così com’è, è solo un router costoso con qualche caratteristica interessante, un supporto OpenWRT insufficiente e capacità di connessione a 5 GHz scadenti.

Il voto di Linux Pro

Giudizio

Sviluppatore: Linksys Web: http://www.linksys.com/Prezzo: €314

5

Non offrendo un supporto Open Source migliore per il suo nuovo router, Linksys rischia di rovinare il mercato in cui opera

Nell’aspetto, questo formidabile tecno-insetto si richiama al WRT54G, probabilmente l’unico router al mondo che si possa definire un classico

Una decina di anni fa, l’azienda specializzata in reti Linksys ha aperto la strada

ai router che utilizzano Software Libero e open Source. il suo WrT54G è stato il primo a utilizzare un codice open Source e ai sensi della sua licenza Linksys ha dovuto rendere il firmware disponibile al pubblico. uno sviluppo successivo ha dato vita al software openWrT, basato su Linux, che consente di ritoccare praticamente qualunque elemento di un router. Altri importanti produttori di router quali Asus, Buffalo e D-Link hanno seguito a ruota, offrendo a loro volta un’opzione per l’installazione di firmware personalizzato. Con il WRT1900AC, Linksys riporta la situazione alle origini, proponendo un router tanto potente quanto modificabile. installarlo è quanto di più semplice: basta avvitare le antenne, collegarlo all’alimentazione e quindi connetterlo al modem. Linksys vi mette a disposizione un CD-roM per aiutarvi a farlo funzionare; in alternativa potete collegarvi a linksyssmartwifi.com. registrando un account potrete accedere a distanza al router e alla vostra rete. non sarà una soluzione completa paragonabile al setup analogo di un drive nAS; ma la possibilità di vedere chi accede a

Source, per poi immergervi nelle modalità essenziali di funzionamento del router, trafficando con client BitTorrent, gestendo server e creando Vpn. internet brulica di storie relative ai problemi di cooperazione tra openWrT e il WrT1900AC e le patch pubblicate in passato da Linksys non riuscivano a ovviare al problema. noi però siamo riusciti a far funzionare sul router il software openWrT più recente (Barrier-Breaker) senza grandi difficoltà. Mentre scriviamo il software in questione ha solo un paio di giorni di vita e quindi la comunità non ha ancora avuto modo di adattarlo pienamente. La buona notizia è che con questo sistema il fondamentale standard di rete AC da 5 GHz funziona perfettamente nei punti in cui il nostro Wi-Fi non ‘prende’; quella cattiva è che salta del tutto durante il trasferimento di file di grosse dimensioni. È un peccato, perché ci avrebbe fatto veramente piacere che il WrT1900AC segnasse il ritorno in grande stile di Linksys dopo alcuni anni di difficoltà. Linksys è stata ceduta da Cisco alla casa produttrice di accessori per computer Belkin, che aveva promesso di mantenere gli elevati standard di qualità associati a questo marchio. il caos delle patch e dei driver, tuttavia, ha finito per allontanare proprio quel settore di

che cosa sulla vostra rete ha comunque la sua utilità. Sono inoltre disponibili sistemi di controllo genitoriale ed è possibile creare un elenco di siti bloccati. Con un processore ArM dual-core da 1,2 GHz e 256 MB di memoria, il WrT1900AC ha i numeri per sopportare un’intensa attività di rete. Supporta inoltre lo standard di rete AC superveloce a 5 GHz, sebbene nei nostri test i dispositivi più distanti non siano affatto riusciti a effettuare la connessione, cosa che non ci è mai capitata con altri router AC. Altre caratteristiche interessanti sono il generatore di codice Qr che può essere utilizzato per collegare dispositivi con videocamera tramite Wi-Fi, la rete ospiti che permette ai visitatori di andare online senza connettersi ad altri dispositivi della vostra rete e il sistema di assegnazione di priorità ai servizi multimediali per alcune applicazioni (come Spotify e Skype) e giochi. il tutto è ben presentato e facile da usare ma manca delle opzioni approfondite di personalizzazione che amiamo trovare nei router.

Chiaro come il soleÈ qui che entra in gioco openWrT. potete infatti sostituire il firmware con il sistema operativo open

mercato su cui Linksys puntava. Senza openWrT, questo è semplicemente un router mediocre dotato di funzioni elementari e di sicuro non vale il prezzo che costa. E se siete affascinati dal suo aspetto rétro, vi consigliamo comunque di attendere che la comunità di openWrT riesca a risolvere i problemi del firmware o, meglio ancora, di contribuire voi stessi sporcandovi le mani con patch e driver. in ogni caso, aspettate che il prezzo scenda un po’. per il momento, il netgear nighthawk da noi recensito in un precedente numero è più economico e offre un supporto openWrT di gran lunga più maturo. LXP

In evidenza

Espansioneil router ha una porta uSB 3 più una uSB 2 via eSata. Basta aggiungerci un drive per ottenere un sistema nAS con funzioni FTp e media server.

ApplicazioniGeneratore di codice Qr e via dicendo; ma l’unico modo per accedere al router da uno smartphone è farlo mediante le applicazioni di Linksys.

049_LXP_146_LXP_186_rev_linksys 49 22/09/14 15:22

Page 52: 10_ottobre2014

Test Mouse da gioco

50 Linux pro 146

Gamdias HadesQuesto mouse vale effettivamente il suo nome da leggenda greca?

Funzioni 7Prestazioni 7Facilità d’uso 7Qualità/prezzo 7

Mouse Hades Extension

Non è male come mouse da gioco ma manca della precisione di alcuni prodotti rivali.

Il voto di Linux Pro

Giudizio

Sviluppatore: Gamdias Web: www.gamdias.comPrezzo: €65

7

Con ogni probabilità, il nome Gamdias non vi dirà molto. Tuttavia, pur essendo in

circolazione solo dal 2012, questa casa produttrice taiwanese di periferiche ha grandi idee su come ridefinire il mondo degli sport elettronici con i suoi dispositivi ispirati ai miti greci. Abbiamo scritto ‘ispirati’ ma non abbiamo idea di che cosa potrebbe esserci in comune tra un mouse da gioco e Ade, il signore degli inferi; a meno che Gamdias non intenda riferirsi ironicamente al fatto che le statue greche sono ormai generalmente prive di braccia. Lo diciamo perché una delle caratteristiche più interessanti del mouse Hades Extension è la sua struttura sostanzialmente ambidestra, con componenti rimovibili che potete utilizzare per modificarne la forma

e adattarla alla mano destra o alla mano sinistra. Queste tre coppie di componenti magnetiche rappresentano un sistema di personalizzazione decisamente efficace, che tuttavia non garantisce una comodità ottimale. Ci sono quattro pulsanti configurabili, più l’interruttore Dpi e la rotella di scorrimento. non siamo riusciti a capire esattamente che cosa sia il ‘sensore laser avanzato da gioco’ ma dato che il mouse Zeus di Gamdias utilizza l’Avago ADnS 9800 con lo stesso valore massimo di 8200 Dpi, deduciamo che anche questo modello impieghi lo stesso sensore. Come mouse da gioco, il Gamdias Hades in sé non può competere con la potenza del Logitech TEG502 proteus Core recensito più in basso. il Ballista,

un altro mouse da gioco che prediligiamo, rimane un prodotto coi fiocchi (malgrado il sensore laser philips del Logitech risulti chiaramente superiore nell’azione di gioco), grazie al sensore posizionato sotto l’indice che garantisce una maggiore precisione e ai pulsanti aggiuntivi. i pulsanti extra dell’Hades risultano a volte un vero e proprio ostacolo, specie se si utilizzano alcuni dei pannelli sostitutivi; inoltre, la combinazione tra sensore e movimento del mouse non permette un livello di precisione paragonabile. LXP

Logitech Proteus CoreCome se la cava questo versatile mouse con la sua sensibilità ad alta velocità? Lo abbiamo messo a dura prova

Da quando i mouse hanno iniziato a utilizzare i sensori laser, il livello massimo di Dpi

è aumentato vertiginosamente. negli ultimi 12 mesi circa si era stabilizzato intorno agli 8.200 Dpi ma Logitech ha sfondato anche questa quota grazie al nuovo sensore che costituisce il cuore del G502 Proteus Core, che raggiunge un massimo di 12.000 Dpi. Tuttavia, con valori così elevati il cursore diventa praticamente incontrollabile. Su un desktop da 1.440 pixel è ancora gestibile ma a una risoluzione da 1.080 pixel tutto diventa decisamente più difficile. in un videogioco, una simile sensibilità è semplicemente troppo elevata per i tempi di reazione umani, anche ad alta risoluzione. un momento, però. L’impostazione massima effettiva

disponibile quando si collega il mouse per la prima volta è di circa 6.400 dpi. il che ha perfettamente senso, dato che questo valore è molto più gestibile sia su un desktop medio sia in un gioco. A che serve allora un’impostazione Dpi massima così elevata? in sostanza, significa che a velocità inferiori questo sensore è più preciso di quelli che operano in prossimità del loro livello massimo di sensibilità. A 6.400 dpi il G502 è meravigliosamente fluido e riproduce ottimamente i movimenti all’interno del gioco. per il resto, il mouse è all’altezza di questo spettacolare sensore laser? Si tratta di un dispositivo da gioco robusto, ben progettato, comodo che può diventare sia piacevolmente pesante sia leggero come una piuma. il corpo

del mouse risulta altrettanto confortevole sia per chi appoggia il polso sul tappetino (palm-grip) sia per chi lo appoggia sul mouse (claw-grip) e abbiamo veramente apprezzato il robusto compartimento magnetico che può alloggiare il peso aggiuntivo. Meno entusiasmante è la rotella di scorrimento a due modalità, un po’ ballerina. La funzione free-wheeling è eccellente ma si percepisce che il meccanismo si muove quando si sposta il mouse. Anche l’estetica ci lascia perplessi: prevediamo che questa miscela di linee curve e angoli squadrati diventerà ben presto obsoleta. il proteus Core rimane però un ottimo mouse da gioco. LXP

Risoluzione elevatissima e peso regolabile: un eccellente mouse

Funzioni 9Prestazioni 9Facilità d’uso 8Qualità/prezzo 8

Mouse G502 Proteus Core

Un mouse che sfrutta bene la sua caratteristica più importante invece di limitarsi a sbattervela in faccia.

Il voto di Linux Pro

Giudizio

Sviluppatore: Logitech Web: http://gaming.logitech.comPrezzo: €75

9

Per essere un mouse da gioco, ha un design piuttosto sobrio

050_LXP_146_LXP186_rev_mouse 50 21/09/14 16:46

Page 53: 10_ottobre2014

Completa la tua collezione ordinando gli arretrati

su www.spreastore.it/linuxprooppure utilizzando il modulo qui sotto

Informativa e Consenso in materia di trattamento dei dati personali - (Codice Privacy d.lgs. 196/03) Sprea Editori S.p.A. Socio unico Sprea Holding S.p.A. con sede legale in via Beltrami 21, 26100 Cremona, è 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.

Spedizione tramite posta tradizionale al costo aggiuntivo di € 2,90Spedizione tramite Corriere Espresso al costo aggiuntivo di € 7,00

ToTalE CoMPlESSIVo €

SCElGo Il SEGUENTE METoDo DI SPEDIZIoNE: Indica con una ˝ la forma di spedizione desiderata

SCEGlI l‘arrETraTo ChE VUoI orDINarE

INSErISCI I CoDICI delle pubblicazioni che desideri ricevere:€

€ Totale ordine

SE VUoI orDINarE VIa PoSTa o VIa FaX, CoMPIla QUESTo CoUPoNRitaglia o fotocopia il coupon, invialo in busta chiusa a: Sprea Editori S.p.a. Via Torino, 51 20063 Cernusco s/n (MI), insieme a una copia della ricevuta di versamento o a un assegno. Oppure via fax al numero 02.700537672. Per ordinare in tempo reale i manuali collegati al nostro sito www.spreastore.it. Per ulteriori infor-mazioni puoi scrivere a [email protected] oppure telefonare allo 02/87158224 tutti i giorni dalle 14.00 alle 18.00

SCElGo Il SEGUENTE METoDo DI PaGaMENTo (Indica con una ˝ quello prescelto)

∆ Versamento su CCP 99075871 intestato a Sprea Editori S.P.a. aBBoNaMENTI Via Torino 51 20063 Cernusco Sul Naviglio MI (Allegare ricevuta nella busta o al fax)

∆ Bonifico intestato a Sprea Editori S.P.a. abbonamenti sul conto IBaN IT05 F076 0101 6000 0009 9075 871

∆ Carta di Credito N. (Per favore riportare il numero della Carta indicandone tutte le cifre)

Scad. CVV Nome e Cognome del Titolare della carta (può essere diverso dall’abbonato)

NoME

CoGNoME

VIa

N° C.a.P. ProV.

CITTà

TEl.

E-MaIl

Se leggi Linux Pro, ti possono piacere anche...

I segreti dello smartphone Android

più acclamato dell’anno

OFFERTA SPECIALE

CoD. SlP7€ 9,90

CoD. SlP8€ 9,90

CoD. SaJ4 € 4,90

N 134 - oTToBrE 2013COD. lP134

Inoltre…Android libero! Google ha dato un giro di vite al suo SO: ecco come rimediare

Alla scoperta di Rust Il linguaggio di programmazione per un Web a prova di hacker

Diventa protagonista nel mondo Linux

∆ Confronto: editor video liberi ∆ Guida all’ottimizzazione del kernel

PRO

Silenzioso e ricco di porte,ideale come media center

Linux Pro 139 - 2014 - Mensile - €5,90 - CHF 13,60

Concetti I segreti della compressione JPEGScratch Il linguaggio ideale per i neofitiFirefox OS Realizzare e pubblicare un’app

ACCADEMIA DEL CODICE

10 pagine di pura programmazione

TARI

FFA

R.O

.C. -

PO

STE

ITAL

IAN

E SP

A -

ABB

. PO

ST. -

D.L

. 353

/200

3 (C

ON

V. IN

L. 2

7/02

/200

4 N

. 46)

ART

. 1, C

OM

MA

1, S

/NA

- D

ISTR

IBU

TORE

: PRE

SS-D

I, M

ILAN

O

Spioni ed enti governativi penetrano le tue difese...l’Open Source li blocca!

Raspberry Pi Le migliori espansioni

per la scheda dei miracoli

Sistema operativo Come raggiungere il mito

dell’installazione perfetta

Kindle HDXSchermo da urlo

e prestazioni al top

PROTE

CT YOUR PRIVACY

SSL TOR OTR TRUECRY P T G PG CRYPTOCAT TA

ILS

Penguin Wee Desktop

A PROVA DI

NSA

229 €

415 €

LXP_cover_139.indd 1 27/02/14 15:40

Diventa protagonista nel mondo Linux

∆ Dai stabilità al sistema operativo con Systemd ∆ Crea la tua piattaforma di blogging

Pro

Inoltre…Monitoring professionale Gli strumenti avanzati per controllare le prestazioni dei PC in rete

GnuPG: privacy totale Tieni alla larga occhi indiscreti con questa tecnologia

AccAdemiA del codice

11 pagine di pura programmazione

Gambas Il Basic orientato agli oggettiPython Crea il tuo client Twitter su misuraMySQL Lavorare in SQL coi fogli di calcolo

DRM no problem Come visualizzare i video

in formati proprietari sul Web

Panorami a 360° Realizzare foto panoramiche

è un gioco da ragazzi con Hugin

Raspberry PiStampa in 3D il case

personalizzato!

Tari

ffa

r.O

.C. -

PO

sTe

iTal

ian

e sP

a -

abb

. PO

sT. -

D.l

. 353

/200

3 (C

On

v. in

l. 2

7/02

/200

4 n

. 46)

arT

. 1, C

Om

ma

1, s

/na

- Di

sTri

buTO

re: P

ress

-Di,

mil

anO

Linux Pro 143 - 2014 - Mensile - €5,90 - CHF 13,60

una linux boxPERFETTa Abbiamo messo alla prova i componenti migliori per creare il computer ideale per gli utenti Linux più esigenti

le fantastiche 5

Quale distro vale davvero la pena di tenere

sul proprio computer? Ecco il verdetto!

LXP_cover_143 1 25/06/14 12:26

Diventa protagonista nel mondo Linux

∆ I coder del futuro all'HackMeeting 2014 ∆ Lavorare nell'Open Source: il data center

Pro

Inoltre…Trova l'IDE perfetto Gli strumenti per lavorare con qualsiasi linguaggio

Hackerare Minecraft Come riprogrammare il mondo del gioco con la Pi Edition!

AccAdemiA del codice10 pagine di pura programmazione

ChromebookUn OS davvero completo

per il tuo portatileTariffa r.O

.C. - PO

sTe iTaliane sPa - abb. PO

sT. - D.l. 353/2003 (CO

nv. in

l. 27/02/2004 n. 46) arT. 1, C

Om

ma 1, s/n

a - DisTribuTOre: Press-Di, m

ilanO

Linux Pro 144 - 2014 - Mensile - €5,90 - CHF 13,60

PADRONIDELLA RETE Scopri i trucchi del mestiere dei professionisti del networking per mettere in sicurezza la tua LAN e combattere al meglio hacker e guasti del sistema

LINUX PRO 126

LINUX Pro

Cosa trovi nel

LINUX PRO 144

LINUXPro

SPARKYLINUX GAMEOVER 3.4

8GB

LA NUOVISSIMA VERSIONE DELLA DISTROPER UTENTI PROFESSIONALI E SERVER WEBC

entO

S 7

Cent

OS

7

COP_001_LXP144_cover 1 22/07/14 12:05

Diventa protagonista nel mondo Linux

∆ Anatomia di un pacchetto Open Source ∆ Streaming audio su misura con Mopidy

Pro

Inoltre…Arrivano i replicanti! Ecco le stampanti 3D in grado di duplicarsi da sole p.40

Basso consumo Distro e applicazioni per dare nuova vita a vecchi PC p.26

AccAdemiA del codice8 pagine di pura programmazione

da pagina 84

Ripara UbuntuCome rimediare

agli errori di Canonical

Tari

ffa

r.O

.C. -

PO

sTe

iTal

ian

e sP

a -

abb

. PO

sT. -

D.l

. 353

/200

3 (C

On

v. in

l. 2

7/02

/200

4 n

. 46)

arT

. 1, C

Om

ma

1, s

/na

- Di

sTri

buTO

re: P

ress

-Di,

mil

anO

Linux Pro 145 - 2014 - Mensile - €5,90 - CHF 13,60

toP secret

LINUX PRO 126

LINUX Pro

Cosa trovi nel

LINUX PRO 145

8GBLINUX

Pro

LA NUOVA VERSIONE DELLA DISTRO ELEGANTE E PRATICA DA USARE

ROBOLINUX 7.5.6 - SALIX 14.1 MATE

DEEPIN EDIzIONE 2014

LXP145_bustinaDVD 1 06/08/14 12:21

I METODI SICURI E GRATIS PERCREARE Un VPS PROTETTOCRIPTARE I DISChI fISSIBlInDARE lE PASSwORDDIfEnDERE lA TUA PRIVACy

l

Data Firma del titolare

N 135 - NoVEMBrE 2013COD. lP135 N 136 - DICEMBrE 2013COD. lP136 N 137 - GENNaIo 2014COD. lP137

N 138 - FEBBraIo 2014COD. lP138 N 139 - MarZo 2014COD. lP139 N 140 - aPrIlE 2014COD. lP140 N 141 - MaGGIo 2014COD. lP141

N 142- GIUGNo 2014COD. lP142 N 143 - lUGlIo 2014COD. lP143 N 144 - aGoSTo 2014 N 145- SETTEMBrE 2014COD. lP145COD. lP144

046_LXP_146_arretrati 46 21/09/14 16:45

Page 54: 10_ottobre2014

52 Linux pro 146

Test OpenMandriva 2014

OpenMandriva 2014

Caratteristiche 8Prestazioni 9Facilità d’uso 8Documentazione 5

OpenMandriva Lx 2014.0

Una distribuzione KDE veloce e raffinata, che sta dando il meglio di sé. Tuttavia ha ancora diversi aspetti da ottimizzare e perfezionare.

Il voto di Linux Pro

Giudizio

Produttore: openMandriva Association Web: www.openmandriva.orgLicenze: Varie

7

Imbattendoci in questa nuova distro Mandriva, non possiamo fare a meno di chiederci se non sia effettivamente una nuova versione di Ubuntu

OpenMandriva sfrutta un desktop KDE. Gli sviluppatori hanno poi deciso di dotarla del launcher Homerun

Proprio quando pensate di aver sentito l’ultima su Mandriva, ecco che esce una nuova

versione. La distro nata sotto il nome di Mandrake Linux ha visto più volte generazioni di fork. Mageia e la sua organizzazione no-profit potevano sembrare la conclusione più logica per un progetto che nessuna società avrebbe potuto monetizzare con successo. Tuttavia adesso c’è OpenMandriva, creata sotto l’egida di un’altra organizzazione no-profit francese da sviluppatori che hanno lavorato su roSA (una fork russa di Mandriva). Come distro, Mageia è difficile da inquadrare e su openMandriva 2014.0 non possiamo sbilanciarci troppo, in quanto è solamente la seconda release. Tuttavia è già possibile vedere alcune differenze principali tra i progetti. in primo luogo, openMandriva utilizza un singolo desktop KDE, mentre Mageia supporta tutti i più popolari ambienti del momento ed è quindi onnicomprensiva. inoltre, openMandriva si basa su roSA Desktop e quindi ne eredita tutti gli strumenti. Questa versione utilizza KDE 4.12.4, il quale è stato recentemente rilasciato e in più sfrutta il launcher Homerun. un’altra aggiunta che non può passare inosservata è plasma

Il progetto c’èil processo d’installazione è tipico di Mandriva, anche se quando abbiamo finito è possibile rimuovere il supporto hardware e la localizzazione dei pacchetti inutilizzati. L’applicazione di benvenuto è poi una delle migliori caratteristiche della distro e vi permette di familiarizzare con l’ambiente, nonché accedere ai collegamenti più importanti per le attività di amministrazione, l’aggiornamento, l’installazione di nuovo software e la configurazione del desktop. La distro non viene fornita con tutti i codec proprietari, ma è possibile installarli durante la prima fase di avvio. in più, sempre dall’applicazione di benvenuto, siete in grado di aggiungere software popolari come Skype, Dropbox, Steam Client, Calligra office Suite, Calibre ebook suite, Eclipse, GiMp, VirtualBox e molto altro ancora. nonostante il suo già ottimo funzionamento non dovete però scordare che la distro è ancora in fase di sviluppo. per esempio, Drakfirewall di Mandriva è stato sostituito con firewall-config, che si basa su firewalld preso in prestito dal progetto Fedora. per come stanno le cose, il nuovo firewall può impedire agli utenti di condividere qualsiasi cosa sia con Samba sia con nFS, in quanto le impostazioni

Media Center di KDE, capace di riprodurre file multimediali in locale e recuperare contenuti da fonti online come YouTube e Flickr. La distribuzione include anche VLC Media player, più tutte le più popolari applicazioni KDE come Krita, Kamoso, Kopete, okular, Amarok eKMail, nonché Firefox 29 e Libreoffice 4.2.3.3. Dietro le quinte, questa prima versione di openMandriva Lx include anche il supporto per il boot EFi. Attenzione, però, perché questo standard potrebbe non funzionare su tutte le macchine con uEFi abilitato, il che rende la situazione piuttosto controversa. La caratteristica più importante della distro è il suo kernel personalizzato, che consente di avere prestazioni migliorate con tanto di patch Con Kolivas e uKSM per una migliore gestione della memoria. non manca neppure Tuxonlce che permette di sospendere e ibernare i servizi, in modo da avere una migliore gestione sulle attività del sistema. Anche l’avvio è stato sensibilmente migliorato grazie all’aggiunta del filesystem squashfs nel kernel, che permette così di utilizzare tutte le Cpu in configurazione multi-core, rendendo la procedura di lancio molto più veloce rispetto a prima. in più, sempre squashfs, comprime file, inode e directory.

predefinite puntano alla massima sicurezza. un altro aspetto da considerare è l’inattività del parental control divenuto invece famoso in Mandriva. in questo momento, la distro è piuttosto soddisfacente e possiamo dire che il lavoro svolto su roSA è davvero ben fatto. Tuttavia manca ancora qualcosa per influenzare in modo degno di nota gli utenti affezionati alle fork più famose di Mandriva. Certo, questa distro ha un fondamento tecnico davvero valido, ma il progetto ha bisogno di trovare una spinta maggiore se vuole veramente diventare un’alternativa ai nomi più blasonati del settore. LXP

In evidenza

Wizard di benvenutointroduce la distro, con link agli strumenti di configurazione.

Plasma Media Centeruna nuova applicazione per gestire i file multimediali.

052_LXP_146_LXF186_rev_OpenMandriva 52 22/09/14 15:22

Page 55: 10_ottobre2014

Linux pro 146 53

OpenBSD 5.5 Test

OpenBSD 5.5

Caratteristiche 8Prestazioni 8Facilità d’uso 5Documentazione 7

OpenBSD 5.5

Una versione che aggiunge interessanti novità e che rende OpenBSD ancora più sicuro. Peccato solo sia così difficile da utilizzare per gli utenti desktop.

Il voto di Linux Pro

Giudizio

Produttore: openBSD Foundation Web: www.openbsd.orgLicenza: BSD

7

Mettetevi comodi ed esplorate con noi le tante funzioni di questa distro BSD

I repo di OpenBSD includono i desktop più popolari come Gnome, KDE e Xfce, più applicazioni come LibreOffice e Firefox

Open BSD è di fatto conosciuto come uno dei nomi più importanti nel

panorama della sicurezza. infatti chi vuole puntare su una configurazione blindata punta tutto sulla rigorosa revisione del codice imposta dal modello di sviluppo di openBSD, così da creare firewall e sistemi di rilevamento e anti-intrusione anche per i server più importanti. openBSD non è un sistema operativo di uso generale e non dovrebbe essere giudicato con gli stessi parametri con cui si guarda alle distro desktop più tradizionali. Bensì è pensato per utenti esperti che sanno dove mettere le mani e sono disposti a tutto pur di gestire nel dettaglio le funzioni che offre. una delle peculiarità più singolari di openBSD è il suo installer testuale. Se siete piuttosto esperti, vista la presenza di numerose impostazioni predefinite, non dovreste comunque avere grandi problemi ad affrontarlo. una novità di questa ultima versione 5.5 è l’aggiunta di uno script di auto-installazione, che consente di aggiungere in modo del tutto autonomo gli aggiornamenti. È particolarmente utile se volete gestire contemporaneamente più macchine nello stesso tempo

di protezione firmando i propri pacchetti e consentendo agli utenti di verificarli prima dell’installazione. A tal fine, su openBSD 5.5 ha debuttato l’utility Signify, che permette di installare il sistema operativo senza prima verificare i pacchetti (gli sviluppatori sconsigliano ovviamente questa pratica). Lo strumento pkg-Add per l’installazione e l’aggiornamento dei pacchetti software precompilati è stato modificato per fidarsi solo di quelli firmati. Gli sviluppatori hanno poi verificato l’intero albero dei sorgenti del kernel, comprese le librerie e le applicazioni a livello utente, così da assicurarsi che supportino la nuova variabile time_t a 64-bit. usando quest’ultima su tutte le piattaforme, infatti, openBSD introduce un supporto temporale eccezionalmente lungo. i programmatori hanno poi usato il bug Heartbleed come un’opportunità per creare una fork della popolare libreria openSSL. L’intenzione principale dietro questo nuovo progetto è crearne una versione più affidabile rispetto all’originale; in più, seguendo il programma LibreSSL, l’idea è di fornire un’alternativa a openSSL, riproponendosi di riscriverne in modo sostanziale il codice, così

e quindi si rivela un’ottima soluzione anche per i sysadmin. un altro miglioramento che non passa inosservato è che le immagini iSo per i386 e piattaforme x86-64 adesso possono essere scritte su unità flash uSB. parlando di piattaforme, openBSD supporta oltre una dozzina di architetture diverse, tra cui i sistemi Hp Alpha, gli Aviion creati da Data General e vari sistemi basati su ArMv7. Ci sono poi tantissimi miglioramenti hardware. Da segnalare i nuovi driver per il supporto virtuale, quelli per la connessione wireless che supportano vari chip intel Centrino Wireless-n e un nuovo driver touchpad che gestisce il Broadcom multi-touch trackpad che trovate sui nuovi MacBook, MacBook pro e computer portatili Macbook Air. inoltre, questa è anche la prima release di openBSD a supportare le schede grafiche AMD radeon con porting kernel mode-setting (KMS) per il kernel FreeBSD. Dopo l’installazione avrete quindi un sistema barebone con una manciata di servizi abilitati e un desktop minimale basato su FVWM.

Sicurezza al topil sistema operativo estende ulteriormente le sue credenziali

da controllare eventuali vulnerabilità. LibreSSL, inizialmente, sarà disponibile solo in openBSD, la cui prima versione è prevista per la release 5.6 della distro, che secondo indiscrezioni dovrebbe essere disponibile già dai primi di novembre. Tutto sommato, quindi, openBSD 5.5 migliora ulteriormente le credenziali di sicurezza del sistema operativo, e anche se noi continuiamo comunque a sconsigliarlo per gli utenti desktop, niente vi impedisce di provarlo. Se quindi volete una distro davvero sicura, questa può essere un’opzione molto interessante. LXP

In evidenza

Install automaticoÈ uno script che fa tutto per noi, anche gli aggiornamenti.

Installazione sicuraVersioni e pacchetti hanno tutti firme crittografate.

053_LXP_146_LXF186_rev_openBSD 53 23/09/14 18:13

Page 56: 10_ottobre2014

Roundup Office suitesTest Confronto

54 Linux pro 146

Una delle migliori caratteristiche di Linux è la possibilità di riprodurre video ad alta qualità senza usare particolari configurazioni. Tuttavia,

il connubio tra file multimediali e il pinguino non è sempre rose e fiori, soprattutto in quei paesi dove, per questioni giuridiche, le distro non possono essere rilasciate con i giusti codec pre-installati. Come sempre, però, la comunità ha raccolto la sfida e ha fornito una serie di ottime soluzioni a questo genere di problemi. Cercare di capire gli aspetti legali riguardanti i codec fa venire il mal di testa, pertanto ci siamo buttati essenzialmente sul

Ogni mese mettiamo a confronto prodotti e programmi per farvi scegliere al meglio!

Modalità del test

mettere alla prova vari lettori multimediali, per vedere così qual è il migliore. naturalmente la scelta di un media player anziché un altro è una faccenda molto delicata e personale, per molti versi simile alla preferenza di una distro. Tutti noi abbiamo il lettore a cui non rinunceremo per niente al mondo, mentre ce ne sono altri che odiamo a prescindere. VLC,

Kaffeine, Clementine o qualunque sia il vostro media player, quando si tratta di riprodurre audio e video un lettore può essere così importante da riunire intere comunità o dividerle. Sentitevi quindi liberi di prendere il nostro confronto come una serie di linee guida e, nel caso, non mancate di farci sapere le vostre interpretazioni.

Media Player HD

La nostra selezione Clementine

Kaffeine

MPV

UMPlayer

VLC

Se siete appassionati di film e video, sul vostro PC non può mancare una buona serie di media player adatti a tutti gli usi. Nel confronto di questo mese ne mettiamo alla prova cinque, per scoprire qual è il migliore

La possibilità di attingere a una quantità impressionante di distribuzioni Linux con cui provare i media player è stata un po’ fuorviante. Abbiamo quindi deciso di focalizzare l’attenzione su una delle distro più usabili e pratiche degli ultimi tempi, vale a dire Linux Mint 16 con desktop Cinnamon. Per l’occasione, la macchina utilizzata per le prove, dal punto di vista hardware, monta un processore AMD FX-8350 con 8 GB di RAM e una scheda video Radeon HD7870. Il tutto collegato a una TV, che ci ha permesso di analizzare nel dettaglio la visualizzazione, senza dover sottostare alle ristrettezze in fatto di dimensioni tipiche dei monitor da PC. Abbiamo poi visualizzato i contenuti a 720p e 1080p con flussi provenienti da DVD, AVI, MP3 e MKV, più diversi file MP3, Ogg e musica da CD.

“Scegliere un media player è una questione molto personale, simile alla scelta di una distro”

054_059_LXP_146_LXF187.round 54 21/09/14 22:06

Page 57: 10_ottobre2014

Roundup Office suites

Linux pro 146 55

Confronto Test

UMPlayer ha davvero un numero impressionante di funzioni

L’installazione di un media player non è mai particolarmente complessa. negli ultimi anni,

inoltre, è diventato tutto ancora più facile, in quanto la maggior parte dei migliori lettori sono integrati direttamente nella distro (VLC è un ottimo esempio). Come risultato, quindi, abbiamo programmi sempre aggiornati tramite i repo delle distro stesse. VLC, naturalmente, mette a disposizione anche la compilazione da sorgente e inoltre è disponibile in svariati pacchetti per Debian, openSuSE, Arch e distribuzioni basate su red Hat. Basta accedere al sito ufficiale del lettore e seguire i link che portano alla pagina Download. Kaffeine, che può essere considerato il lettore multimediale predefinito per le distro KDE, può comunque funzionare correttamente anche su Gnome o qualsiasi altro desktop. L’installazione da sorgente può

Procedura d’installazione

Impostazioni di default

Sono facili da integrare nelle distro?

Cosa offrono appena installati?

non essere così semplice come nel caso di altri lettori multimediali, ma nel 99% dei casi potrete procedere direttamente dal vostro Software Center. MPV è un altro che si distingue per l’installazione non del tutto intuitiva. Generare il pacchetto dai sorgenti è il metodo migliore, tuttavia sono disponibili anche quelli dedicati a determinate distro. L’unica cosa a cui porre attenzione è assicurarsi di avere tutte le dipendenze al proprio posto e in anticipo. per un utente avanzato, questo passaggio è piuttosto semplice, ma se siamo alle prime armi non può certo essere considerato scontato. infatti, per ottenere MpV pronto e funzionante su una distro, è necessario intraprendere una procedura tutto sommato non necessariamente immediata. Clementine, invece, è estremamente facile da integrare nel sistema, sia tramite il proprio sito Web, sia con i

pacchetti precompilati o addirittura semplicemente tramite terminale o Software Center. naturalmente niente vi impedisce di imbarcarvi nella compilazione da sorgenti, per la quale dovrete procurarvi le varie dipendenze di cui necessita (tutte presenti in una lista sul sito ufficiale del programma). UMPlayer segue la stessa filosofia di semplicità di Clementine. insieme al sorgente, dispone direttamente dei pacchetti rpM e DEB presenti sulle pagine ufficiali. il nostro consiglio, comunque, è iniziare proprio con questi ultimi, che offrono il miglior approccio anche per i neofiti.

N elle caratteristiche di un media player c’è molto di più della semplice visione di un film

o dell’ascolto di musica. VLC, per esempio, ha praticamente tutto quello di cui si può aver bisogno in

campo multimediale: riproduzione audio e video da qualsiasi supporto, facoltà di streaming, condivisione e conversione. Kaffeine fornisce un eccellente supporto per i segnali TV digitali e in streaming, mentre MpV si distingue

per essere un superbo lettore ad alta definizione, anche se, rispetto agli altri programmi, non offre niente di particolarmente interessante. Tuttavia, c’è da dire che MpV eccelle per leggerezza e nei controlli tramite riga di comando. Clementine vanta una serie di caratteristiche molto importanti, tra cui il supporto per i servizi Cloud, la transcodifica, gli album, il download di Mp3 e la gestione degli iDevice. inoltre, testi e biografie degli artisti, con tanto di foto scaricabili, danno una marcia più alle playlist dinamiche di cui potete far uso. infine, uMplayer offre la ricerca su YouTube e su SHouTcast e in più fornisce buone opzioni di codifica, che possono essere comparate a quelle di VLC. inoltre, sfrutta una buona serie di uscite AV e filtri, che ben si integrano nella sua interfaccia pratica e particolarmente accogliente.

Tutti i player analizzati si sono dimostrati molto capaci, ma il migliore è UMPlayer, che ha una grande varietà di funzioni.

Verdetto

Clementine

Kaffeine

MPV

UMPlayer

VLC

Il vincitore di questa prova non è molto chiaro, ma MPV è il più difficile da installare.

Verdetto

Clementine

Kaffeine

MPV

UMPlayer

VLC

A causa della sua complessità, MPV non è il programma più adatto a essere usato dai principianti

054_059_LXP_146_LXF187.round 55 21/09/14 22:06

Page 58: 10_ottobre2014

Test Confronto

56 Linux pro 146

Interfaccia e semplicitàÈ possibile personalizzarli? E quanto sono facili da usare?

C hiedetevi cosa volete veramente dal vostro media player. È sufficiente che digerisca qualsiasi formato

multimediale, oppure volete che si adatti perfettamente alla vostra distro, offrendovi anche funzioni accessorie? E ancora, vi accontentate di un software che sia

complesso, oppure è importante che sia semplice e pratico da usare? indipendentemente da tutto, uno degli aspetti più importanti per un buon riproduttore multimediale è proprio la praticità. Tutti gli strumenti devono essere a portata di mano e sebbene l’estetica sia spesso un’opinione personale, quando

valutiamo un player, non possiamo fare a meno di metterla tra i primi posti. infatti, è proprio per questo che ci sono numerose comunità pronte a creare skin e interfacce sempre più all’avanguardia per i lettori multimediali. i nostri contendenti, quindi, come se la cavano sotto questo punto di vista?

Clementinein Clementine c’è qualcosa di particolarmente piacevole. il programma è basato su Qt e adatta il proprio tema a quello della distro che utilizzate, fornendovi così un approccio immediato fin da subito. Tuttavia l’interfaccia può essere modificata tramite il comando qtconfig e inoltre, tramite le preferenze, potete mettere mano alle immagini degli album, al set di colori e a molte altre funzioni interamente modificabili. Tutto sommato, Clementine si conferma uno dei lettori tra i più facili e intuitivi da utilizzare, con un buon connubio tra interfaccia grafica usabile e praticità degli strumenti messi a disposizione. L’ambiente, infatti, è facile da gestire e consultare e la possibilità di mettere mano alle funzioni presenti è resa ancor più pratica dalla buona gestione dei menu.

KaffeineKaffeine, in realtà, non supporta la personalizzazione degli skin e nonostante i nostri tentativi per smentire un’iniziale presentimento, abbiamo appurato che non c’è modo di modificare l’interfaccia. Quest’ultima rispecchia piuttosto bene l’ambiente desktop e il tema che utilizziamo, ma ciononostante non ci ha convinto in pieno. Tuttavia, se mettiamo da parte il nostro gusto stilistico e puntiamo alla semplicità e alla praticità d’uso, questo media player non ha niente da invidiare a nessuno. una caratteristica, questa, che lo rende ideale soprattutto per i nuovi utenti del mondo Linux. Dall’altro canto, però, un utente più avanzato potrebbe sentire la mancanza di un accesso agli strumenti maggiormente incisivo e quindi verrebbe penalizzato in partenza. nel complesso, se si vuole qualcosa di veramente facile da usare, Kaffeine è perfetto.

VLC ha una serie immensa di funzioni, così come ci si potrebbe aspettare da un player che è

sulla cresta dell’onda oramai da decenni. La conversione dei media e la possibilità di modificare la skin con moltissimi temi ne fanno uno dei programmi più potenti in circolazione. Le funzioni DVB di Kaffeine sono superbe e di conseguenza il suo supporto per il telecomando, la scansione dei canali e la registrazione non sono secondi a nessuno. Combinato

Quantità di funzioniI moderni media player sono davvero full-optional?

con un modulo TV, Kaffeine può fare davvero la differenza. Tuttavia, a meno di non utilizzarlo per il DVB, non sorprende più di tanto. MpV ha un vasta serie di caratteristiche complesse e professionali. Se vi immergete nei dettagli troverete alcune opzioni davvero incredibili, come la capacità di gestire l’offload processing della Gpu in percentuale. Si tratta comunque di funzioni troppo complicate, che faranno gola solo a una ristretta nicchia di persone. Clementine ha la sua

quota di opzioni, dove il supporto per la Cloud, il podcast e il CuE la fanno da padroni. La visualizzazione a schede e le playlist radio e internet si combinano perfettamente in un mix pratico e funzionale. uMplayer è un altro riproduttore con una serie di funzioni impressionante: caching avanzato, supporto ipv5, riproduzione di qualsiasi formato audio e video, TCp unicast e il supporto Closed Caption sono solo alcuni esempi più significativi.

Grazie al vasto elenco di ottime funzioni che possiede, VLC stacca gli altri player a eccezione di UMPlayer.

VerdettoClementine

Kaffeine

MPV

UMPlayer

VLC

054_059_LXP_146_LXF187.round 56 21/09/14 22:06

Page 59: 10_ottobre2014

Linux pro 146 57

Confronto Test

MPV PlayerMpV è un lettore ancora relativamente giovane (rispetto agli altri software presi in considerazione nella nostra comparativa). Seppure siamo convinti che sia possibile modificare la skin, non siamo riusciti nell’intento neppure dopo numerosi tentativi. Tuttavia, come player si presenta con una buona caratteristica di usabilità e, una volta installato, siamo rimasti soddisfatti dall’utilizzo generale. per quanto riguarda la semplicità d’uso, MpV offre alcune opzioni interessanti, che potete sfruttare tramite la riga di comando. per visualizzarle è sufficiente utilizzare l’istruzione -list-option. A questo proposito, suggeriamo agli sviluppatori di permettere l’accesso a tale lista anche dall’interfaccia grafica, così da facilitare chi non si trova a proprio agio con il terminale. nel complesso, comunque, una volta presa confidenza con i comandi, è un player abbastanza facile da usare.

UMPlayeruMplayer ha un certo numero di skin disponibili, che possono essere utilizzate senza particolari conoscenze specifiche. Tuttavia, tramite le istruzioni presenti sul proprio sito Web, chi è interessato può perfino creare i propri temi grafici con cui implementare quello di base. Alcune skin sono comunque molto brillanti ed estremamente elaborate, tanto da lasciare stupefatti dall’ottima qualità con cui sono state realizzate. Questo è uno dei riproduttori multimediali più facili da usare provati in questo confronto. Si tratta sostanzialmente di un programma utilizzabile tramite il mouse con il semplice “punta e clicca”. possiamo quindi gestire tutte le funzioni in modo pratico e veloce, senza perderci in complesse operazioni che richiedono comandi testuali. in definitiva, lo consigliamo a chi vuole avere tutto sott’occhio fin dal primo accesso, senza sforzarsi nell’affrontare situazioni particolari.

VLCVLC è probabilmente il lettore più popolare in circolazione e quindi non sorprende che all’attivo abbia un vasto numero di progetti utili per la modifica della propria skin. in generale, è possibile cambiare i colori, ma ci sono alcuni temi che modificano direttamente tutta l’interfaccia, come per esempio quello che raffigura una Sony pS. L’installazione delle nuove skin è incredibilmente semplice: basta aggiungere i contenuti scaricati nella cartella ~/.local/share/vlc/skins2, o utilizzare l’opzione Custom Skin per puntare alla directory appena citata. in termini di semplicità d’uso, VLC è formidabile. Basta solo fare doppio click sui file multimediali e siamo a posto. per lo streaming e le altre caratteristiche più avanzate, però, è necessaria una conoscenza più approfondita che richiede un minino di studio delle funzioni e del programma.

Supporto per i dischi otticiCome si comportano dando loro in pasto CD e DVD da leggere?

La maggior parte di noi avrà archiviato i propri file multimediali direttamente sul disco fisso.

Tuttavia, seppure i supporti ottici stiano cadendo sempre più in disuso, non possiamo certo ignorarli. Molte persone, infatti, hanno ancora collezioni ben nutrite di CD e DVD, che sicuramente vorranno vedere anche sul pC. VLC, pur essendo andato bene in tutte le prove, ha avuto seri problemi nel momento in cui abbiamo deciso di riprodurre

un filmato da DVD. i menu erano tutti corrotti e non abbiamo potuto scegliere alcune voci. Durante la riproduzione abbiamo appurato la presenza di singhiozzi e del tearing, che peraltro non è mai comparso con AVi o MKV. in Kaffeine il nostro DVD era del tutto inguardabile, con una serie di rallentamenti senza alcuna ragione apparente. i CD, però, non hanno riscontrato alcun problema. MpV non è riuscito a visualizzare né i DVD né i CD

e nonostante avessimo provato di tutto, non siamo riusciti a smuoverlo di un centimetro. Clementine e uMplayer se la sono cavata molto meglio. L’output DVD di Clementine era discreto, anche se il menu non ha funzionato particolarmente bene. È andata meglio con uMplayer, che ha riprodotto il DVD alla perfezione fin da subito e senza alcun tipo di problema. Addirittura i menu hanno funzionato splendidamente, così come la lettura dei CD.

Verdetto

Praticamente tutti i player hanno dimostrato di avere qualche difficoltà nella riproduzione dei DVD. Tutti tranne UMPlayer.

Clementine

Kaffeine

MPV

UMPlayer

VLC

054_059_LXP_146_LXF187.round 57 21/09/14 22:06

Page 60: 10_ottobre2014

Test Confronto

58 Linux pro 146

vogliamo guardare DVD o CD. Tuttavia, abbiamo stimato che per almeno il 75% di riproduzione giornaliera, Clementine può essere un buon partito. uMplayer non è altrettanto potente come VLC, ma dobbiamo ammettere che tra tutti i programmi analizzati nella nostra comparativa, è quello che offre la migliore esperienza d’uso. Consente di riprodurre i media da qualsiasi fonte, tanto CD quanto DVD e non ha mai dimostrato alcun problema neppure nell’uso intensivo. pertanto non possiamo fare a meno di reputarlo il migliore in questo senso.

Le prove sono una cosa, ma la vita quotidiana è tutta un’altra storia. una volta installato, è quindi

importante capire se il lettore può soddisfarci nell’uso intensivo di tutti i giorni. VLC, utilizzato come player di default, è ancora piuttosto lontano dall’essere perfetto. Certo, i media riprodotti in streaming o da disco fisso non hanno dato problemi, ma con i DVD è stato un mezzo disastro. Kaffeine è perfetto per le canzoni, ma per i video non soddisfa in pieno e comunque, sul lungo periodo, lo troverete limitato.

Valutare il futuro di un media player è sempre piuttosto difficile. innanzitutto sarebbe

errato pensare che per riprodurre file multimediali, una volta che si sono aggiunti i codec necessari, non ci sia molto altro da fare. infatti esistono tecnologie emergenti che fanno coppia con piattaforme sempre in evoluzione, che di conseguenza portano alla modifica dei formati multimediali. VLC è un esempio di player che abbraccia meglio di altri la filosofia del nuovo che avanza, anche se però c’è da dire che il supporto Blu-ray non è certo facile da far funzionare. Kaffeine si sviluppa di pari passo con KDE e anche se non

Utilizzo quotidiano

Sviluppo attivo

MpV, sotto questo profilo, è forse il peggiore. Anche se il materiale archiviato sul disco rigido non ha avuto particolari difficoltà a essere letto, la sua mancata riproduzione di qualsiasi altra fonte lo rende difficile da usare nel quotidiano. inoltre, l’utente medio potrebbe trovare l’utilizzo di un player da riga di comando troppo complesso per i propri gusti. Clementine, invece, è più controverso. La gestione dei contenuti musicali non è seconda a nessuno, ma sul video non è altrettanto brillante, obbligandoci a passare a un altro lettore nel momento in cui

è all’avanguardia, funziona bene e senza problemi. MpV potrebbe essere quello più in pericolo, per cui uno sviluppo futuro non è così certo. in altre parole, dovrebbe puntare maggiormente sulla versatilità e aprirsi di più al pubblico, anziché puntare su una stretta nicchia di appassionati. Clementine, invece, sta avanzando con passi da gigante, implementando addirittura il controllo avanzato da remoto e il supporto di archiviazione online. uMplayer ha visto il suo ultimo aggiornamento risalire a circa un anno fa. Considerando che viviamo in un mondo in cui nessuno si ferma, un periodo di tempo così lungo potrebbe essere paragonato a un

Come si comportano nell’utilizzo continuato e tradizionale?

Cosa possiamo aspettarci dal futuro di questi media player?

UMPlayer è il miglior lettore multimediale per l’utilizzo quotidiano: semplice e versatile, digerisce qualsiasi formato

decennio. C’è quindi da domandarsi se uMplayer potrà davvero rimanere al passo con i tempi.

Verdetto

Verdetto

Ancora una volta è UMPlayer a staccare di netto gli altri lettori. Si tratta del miglior programma per l’uso quotidiano.

VLC è il player più avanzato e quello con il miglior sviluppo attivo. Anche Clementine, però, non è da meno.

VLC è rivolto alle nuove tecnologie

Clementine

Kaffeine

MPV

UMPlayer

VLC

Clementine

Kaffeine

MPV

UMPlayer

VLC

054_059_LXP_146_LXF187.round 58 21/09/14 22:06

Page 61: 10_ottobre2014

Linux pro 146 59

Confronto Test

programma adatto a tutte le stagioni, allora questo è ciò che fa per voi. VLC è probabilmente il lettore più utilizzato in tutto il mondo e siamo stati davvero combattuti nel metterlo al secondo posto, ma stando alle nostre prove non si è rivelato così perfetto come uMplayer. Clementine si è posizionato al terzo posto, immediatamente dietro a VLC. A essere onesti, questo player ci è piaciuto molto: semplice da usare e in grado di gestire la maggior parte dei media. Se avete bisogno di un lettore di riserva, Clementine è perfetto. Subito dopo abbiamo messo Kaffeine, che pur essendo un buon programma, manca di alcune specifiche più incisive presenti invece in altri lettori. in ultima

L ’abbiamo già detto all’inizio: scegliere un lettore multimediale è sempre una cosa molto personale.

A questo proposito, i risultati delle prove che esprimiamo potrebbero essere interpretati diversamente a seconda delle vostre preferenze. infatti, ognuno di noi ha la propria esperienza e come tale è portato a decidere secondo gusti e aspetti che esulano dalle prove sul campo che abbiamo compiuto. per esempio, se noi abbiamo avuto problemi con la riproduzione di CD e DVD con alcuni player, non è detto che altre persone abbiano mai sofferto di questi inconvenienti. pertanto, insieme al funzionamento in sé del programma, è altrettanto importante valutare la presenza o meno di strumenti disponibili.

La nostra sceltaÈ interessante notare come uMplayer se ne esca come il miglior media player che abbiamo provato. Se volete un

posizione il “caro vecchio” MpV. ne parliamo così perché ci dispiace vedere un potenziale enorme utilizzato solo a metà. Se però il progetto riuscisse a ingranare meglio, si tratterebbe senza ombra di dubbio di un programma da tenere fermamente sott’occhio.

Media Player

Il verdetto

Ci sono tantissimi lettori multimediali e può essere difficile trovarne uno davvero ad hoc. Molte persone, di solito, optano per un paio di soluzioni che utilizzano alternativamente in base a ciò che vogliono fare. Tuttavia ci teniamo a citare un particolare player che

non abbiamo inserito nel confronto: Miro. potete installare Miro se utilizzate Mint o ubuntu tramite apt-get install miro, oppure visitando il sito www.getmiro.com, quindi seguendo le istruzioni specifiche per il vostro sistema. principalmente scritto in python,

questo player ha numerosi fan e vi permette di riprodurre qualsiasi genere di supporto (QuickTime, WMV, MpEG, AVi e xviD), convertire musica e video, condividere i supporti, acquistare i pezzi da Amazon e scaricare direttamente tramite Torrent. LXP

Considerate anche...

UMPlayer1° Kaffeine4°Web: http://bit.ly/KaffeinePlayer Licenza: GPL 2 Versione: 1.2.2

Kaffeine ha bisogno di maggiore sostanza se vuole scalare la vettaWeb: www.umplayer.com Licenza: GPL Versione: 0.95

È veramente potente ma purtroppo poco aggiornato

non siete d’accordo con le nostre scelte? Avreste usato altri lettori? inviate le vostre opinioni su questo Confronto a: [email protected]

A voi la parola...

VLC2°Web: http://www.videolan.org/vlc Licenza: GPL Versione: 2.1.5

VLC ha sempre un occhio molto attento al futuro dei file multimediali

Clementine3°Web: www.clementine-player.org Licenza: GPL 3 Versione: 1.2.3

Con un po’ di sviluppo, Clementine potrebbe migliorare ulteriormente.

MPV5°Web: http://mpv.io Licenza: GPL 2 Versione: 0.5.1

MpV ha del potenziale e potrebbe essere facilmente uno dei migliori

“Se volete un programma adatto a tutti gli usi, non esiste soluzione migliore di UMPlayer”

UMPlayer è il vincitore del nostro confronto

054_059_LXP_146_LXF187.round 59 21/09/14 22:06

Page 62: 10_ottobre2014

60 Linux pro 146 Linux pro 146 61

“Krita è un software dedicato alla pittura e al disegno grafico”

Krita è un’applicazione pensata per il disegno e la pittura, piuttosto che per la modifica

delle immagini come Gimp. L’ultima versione dovrebbe aver raggiunto i repository della vostra distro, ma se non fosse così potete sempre scaricarla dal sito ufficiale senza alcuna difficoltà. Krita è comunque disponibile sulla maggior parte delle distro, in quanto fa parte di Calligra, la suite artistica e dedicata all’ufficio di KDE che sta continuando a raccogliere consensi e programmi aggiuntivi. Ciò significa che se non state utilizzando KDE sarete impegnati a recuperare un vasto

Kritanumero di dipendenze. una situazione, questa, che comunque non dovrebbe crearvi problemi, a meno di non essere a corto di spazio. una cosa di cui avrete bisogno è però una tavoletta grafica; disegnare con il mouse, infatti, oltre che complicato, non è per niente divertente. Abbiamo utilizzato un normale prodotto in commercio nei maggiori store di informatica e, seppure non abbia alcuna

caratteristica particolare, ci ha permesso di lavorare con soddisfazione.

Ricco di funzioniKrita supporta openGL, ma si fregia anche di un algoritmo di scaling estremamente moderno, che riesce a restituire immagini di grande qualità. La modalità openGL, comunque, offre risultati altrettanto ottimali. nell’interfaccia, possiamo scegliere il colore dello sfondo e gestire le barre degli strumenti che si vuole utilizzare, così come le scorciatoie da tastiera. in pratica potete cucirvi addosso il programma secondo le vostre esigenze. nelle prossime versioni gli sviluppatori hanno dichiarato di voler sostituire il database HSQLDB con Firebird, che permetterà una maggiore versatilità e praticità d’uso. Tra le altre caratteristiche che potremmo definire sperimentali, troviamo una migliore gestione del bilanciamento colore, il supporto per il filtro G’mic, uno strumento per la clonazione e una più adeguata gestione delle risorse e dei collegamenti personali.

Versione: 2.8 Web: www.krita.org

Krita JSON to CSV Flex-fw Galculator NewLISP Frescobaldi Asunder Inkscape FatRat Cssed Catfish The legend of Edgar Freecell Solver

Software grafico

L’interfaccia di Krita

Nuova interfacciaL’interfaccia di Krita è molto compatta. infatti avete tutti gli strumenti più importanti direttamente a portata di mano.

Mascotteogni software che si rispetti ha una propria mascotte. pensiamo a Tux per Linux... Krita, invece, ha Kiki.

PennelliKrita 2.8 fornisce una larga serie di pennelli predefiniti, che potete sfruttare per qualsiasi occasione.

Da non perdere

Non è obbligatorio, ma sentitevi liberi di creare la vostra opera cinematografica

LivelliSi possono selezionare facendo click su questa scheda, ma anche premendo R.

Supporto OpenGLSi tratta dello standard utilizzato da Krita, che si distingue anche per il rendering migliorato.

Test Da non perdere Da non perdere Testi migliori nuovi programmiopen Source del pianeta

060_066_LXP_146_LXF184.hot 60 22/09/14 15:22

Page 63: 10_ottobre2014

60 Linux pro 146 Linux pro 146 61

Se siete abituati a lavorare con grandi quantità di dati, allora considererete JSON un passo

avanti rispetto a xML. Tuttavia, per parecchi utenti si tratta solo di un ostacolo alla raccolta di informazioni che poi devono essere condivise. Ecco perché, tali persone, pur utilizzando JSon, spesso contribuiscono anche alla creazione di file CSV. proprio a questo proposito è nato il convertitore di cui stiamo parlando, creato da Eric Mill e disponibile direttamente dalla sua pagina di GitHub. per ottenere l’ultima versione, tutto quello che dovete fare è usare questo comando:git clone https://github.com/konklone/json.git

il file json/index.html che ne deriva può poi essere salvato come collegamento sul desktop o come segnalibro nel browser. in alternativa, potete provare anche la versione online,

D ietro a un nAT e a un firewall si potrebbe pensare che il pC sia al sicuro. in linea di massima

lo è, ma se aggiungiamo anche l’uso di iptables configurato a dovere, riusciamo a chiudere ogni accesso, tagliando di fatto una serie di strade che potrebbero essere utilizzate per portare a termine attacchi più o meno devastanti. Se poi usate la rete Wi-Fi di un vicino o di un amico, la necessità di filtrare i pacchetti diventa essenziale. Se avete una o due macchine è piuttosto facile dimenticarsi la sintassi iptables, essendo soprattutto impegnati nella configurazione del firewall ed è appunto qui che entra in gioco Flex-fw. Questo software, infatti, mira a farvi sfruttare alcune configurazioni in modo molto più semplice rispetto all’uso di un firewall BSD. i file che contengono le specifiche sono in etc/flex-fw/ in cui trovate istruzioni del tipo:

JSON to CSV

Flex-fw

disponibile alla pagina http://konklone.io/json.

Affidabile e sicuroCome potete vedere dallo screenshot qui a fianco, i dati originali e il CSV possono essere scaricati. una volta fatto, il sistema operativo dovrebbe concedervi di aprire il CSV in un foglio di calcolo, che permette di visualizzare le informazioni in modo molto più pratico e comodo rispetto a un file JSon. Se premete la combinazione Ctrl+U nel browser, comparirà la sorgente del convertitore con una serie di righe in JavaScript che riportano

# Access to servers in DMZallow forward to DMZ proto icmpallow forward to DMZ proto tcp dports

ssh,http,httpsper inciso, in questo caso la DMZ è in /etc/flex-fw/defines/zones/DMZ.

Sintassi facilei prerequisiti sono davvero minimi: bash, dash (o ash per Slackware), iptables e conntrack (che gestisce la connessione in-kernel). procuratevi il codice con:svn checkout http://flex-fw.googlecodecom/svn/ flex-fw-read-only

quindi dovreste trovare degli script per pacchetti Deb, rpM e Slackware.

Convertitore

Front end per iptables

istruzioni come jquery-csv e highlight.js, così come il codice adattato da csvkit di Chris Grozkopf. Mills, in un recente post sul blog http://sunlightfoundation.com, ha spiegato le ragioni che lo hanno portato a creare questo convertitore. in sostanza, il suo progetto era togliere quell’alone mistico che avvolge JSon per renderlo più digeribile durante un convegno sugli open Data. Dati i risultati, non possiamo che dargli atto della riuscita del proprio tentativo.

nel nostro caso, siamo andati avanti con:su -c “./make-debian-pkg.sh”

riuscendo a generare il tutto senza problemi. L’autore del progetto afferma che non ha avuto ancora tempo di preparare una documentazione appropriata, ma che la lettura del file changelog, del rEADME e del sito dovrebbe darvi abbastanza informazioni per iniziare. Forse non sarà abbastanza per chi non si sente a proprio agio ad alterare gli equilibri di sicurezza del sistema, ma è comunque un buon punto di partenza.

Versione: 20140311 Web: http://bit.ly/1he7HaB

Versione: 0.2.1 Web: http://bit.ly/flex-fw

Ecco un esempio di come lavora il convertitore che potete trovare online su http://konklone.io/json

Un po’ di documentazione per le nuove funzioni vi aiuterà a gestire a dovere la configurazione del firewall

“Il formato CSV è ideale per leggere senza problemi i dati JSON”

“Con Flex-fw potete gestire iptables senza particolari difficoltà”

Test Da non perdere Da non perdere Test

060_066_LXP_146_LXF184.hot 61 22/09/14 15:22

Page 64: 10_ottobre2014

Anche i più ferrati in matematica prima o poi hanno bisogno di una calcolatrice. infatti, non per niente

i calcolatori sono sempre inclusi in smartphone e tablet, così da seguirci ovunque. Certo, su Linux niente vieta di aprire una shell python e immettere i vostri calcoli direttamente lì. Tuttavia, per alcune operazioni, utilizzare un linguaggio di scripting potrebbe non essere esattamente l’ideale. Ecco perché la nuova versione di Galculator permette di rivalutare l’uso di un’interfaccia basata su GTK. Questa release aggiunge traduzioni in spagnolo e ungherese, nonché migliora perfino quella in turco. inoltre, risolve alcuni problemi e bug che erano stati messi in luce nelle precedenti versioni. Va comunque detto che non ci sono grandi cambiamenti, anzi, per dirla tutta, ce ne sono davvero pochi. Questo, però, non deve essere considerato come un

C lojure è sicuramente uno dei linguaggi più utilizzati, ma anche Lisp sta godendo di una seconda

vita. Se il primo ha bisogno di una Java Virtual Machine ed è considerato eccessivo in molteplici situazioni, Lisp può essere ancora più pesante. NewLISP, invece, risolve il problema alla fonte, offrendoci un ambiente ricco di tutte le funzioni di cui abbiamo bisogno. newLiSp, infatti, è un linguaggio di scripting che, seppure non possa sostituire Clojure per operazioni complesse, si utilizza senza particolari problemi per le operazioni più comuni. in altre parole, è veloce e facile da scrivere e altrettanto intuitivo da leggere. Se siete emotivamente legati a Lisp, probabilmente non riuscirete a digerire fin da subito le novità progettuali di newLisp, ma vi consigliamo comunque di provarlo così da rendervi conto

Galculator

NewLISP

punto a sfavore, perché Galculator si è sempre distinto per la propria stabilità, quello che una calcolatrice deve avere. pertanto, perché modificare quello che già funziona egregiamente?

Calcoli su cartaGalculator offre tre modalità d’uso: Basic, Scientific e paper. Le prime due non hanno bisogno di grandi spiegazioni, in quanto sono presenti in tutte le calcolatrici di nostra conoscenza. paper, invece, permette di sfruttare una shell interattiva che consente di vedere tutti i passaggi di un particolare calcolo, esattamente come se lo stessimo svolgendo sulla carta.

di quanto sia intuitivo il suo utilizzo. inoltre, ingombra davvero poco; basta pensare che il binario completo pesa solo 300 KB e contiene ogni funzione.

Piccolo è belloprogrammi minuscoli progettati in newLiSp possono essere incredibilmente potenti. Se non avete familiarità con il linguaggio Lips, in pochi minuti potrete mettere mano alle sue funzioni semplicemente leggendo l’eccellente manuale presente sul sito ufficiale. Questo mostra anche come trasformare il vostro programma in un file eseguibile:

Calcolatrice desktop

Linguaggio di scripting

Questa funzione consente quindi di seguire l’esatto processo di sviluppo di una funzione matematica, eventualmente modificando i parametri in corso d’opera. infatti, la modalità paper permette di inserire formule durante lo svolgimento dell’operazione. naturalmente, Galculator supporta diverse unità di misura angolare (DEG, rAD, GrAD) e diverse basi numeriche (decimale, esadecimale, ottale e binario). in pratica, ce n’è per tutti i gusti.

newlisp -x mylisp_prog.lsp mylisp_progchmod 755 mylisp_prog

Avviare rEpL newLiSp (vale a dire Read Evaluate Print Loop - l’ambiente Lisp a riga di comando) è il modo migliore per provare questo linguaggio. ricordate però che per aggiungere istruzioni in multilinea è necessario aggiungere una riga vuota. Solo così si entrerà nella modalità di scrittura apposita che consente di utilizzare più linee di codice. Se siete alla ricerca di un motivo per provare Lisp, partire da questo linguaggio è sicuramente la miglior mossa da fare.

Versione: 2.1.3 Web: http://galculator.sf.net

Versione: 10.6 Web: www.newlisp.org

Potete gestire la modalità d’uso di Galculator dal menu View, quindi scegliere tra Basic, Scientific e Paper

NewLISP riduce ai minimi termini la sintassi di Lisp, rendendo il tutto molto più intuitivo e versatile

“Galculator è già stabile e quindi non ha bisogno di ulteriori modifiche”

“Lisp è formidabile, ma NewLISP è facile da scrivere e leggere”

62 Linux pro 146

Test Da non perdere Da non perdere Test

060_066_LXP_146_LXF184.hot 62 22/09/14 15:22

Page 65: 10_ottobre2014

Dopo aver parlato spesso di altri strumenti per lavorare con i file musicali, è venuto il momento

di dare spazio a Lilypond, l’impostazione predefinita per il rendering della punteggiatura. Tuttavia, questo standard non è certo privo di inconvenienti: è tutt’altro che facile da usare e non è al pari di MusixTex per la partitura in bella copia. Questo perché Lilypond è stato progettato per trattare con le spaziature non simmetriche, come per esempio le terzine. Frescobaldi, con la sua evidenziatura della sintassi e il completamento automatico, permette di sfruttare colori configurabili, gestire i font e le scorciatoie da tastiera e consente di utilizzare Lilypond senza particolari difficoltà. Lo Score Setup Wizard mette subito a disposizione l’ambiente appropriato per cominciare e in più offre una serie di opzioni per gestire le parti corali e le sezioni

La sempre crescente necessità di rendere i gestori di finestre compatibili con interfacce

touchscreen continua a lasciare indietro chi preferisce una Gui più tradizionale. Così, coloro che aspirano a desktop minimali, devono trovare alternative ai programmi multimediali più usati. Asunder è un eccellente software audio per il ripping dei CD e la codifica audio, che può salvare tracce in WAV, Mp3, ogg Vorbis, FLAC, opus, Wavpack, Musepack, ACC e file Monkey. Asunder può codificare in più formati in una singola sessione e non è legato a nessun ambiente desktop specifico. Anzi, ha caratteristiche grafiche davvero minimali e propone un approccio senza fronzoli, che si rivolge a chiunque voglia uno strumento semplice e intuitivo da usare. il programma è disponibile nella maggior parte delle distro Linux, comprese quelle

Frescobaldi

Asunder

arrangiate. Molte funzioni, poi, aggiungono maggiore flessibilità a tutti gli strumenti che vengono messi a disposizione. La musica può essere importata ed esportata in MusicxML e la sorgente Lilypond viene esportata anche in HTML.

Tool astronomicoFrescobaldi dispone di un player MiDi per riprodurre file generati con Lilypond, in modo da ascoltare rapidamente i risultati e scongiurare eventuali errori di partitura. il MiDi può essere utilizzato per riprodurre la musica fin dagli inizi della partitura, ancor prima di sintonizzare il file Lilypond. Questo editor utilizza poi rumor per

più leggere come puppy Linux. La nuova versione ha poi corretto diversi bug e migliorato la stabilità generale del programma.

Installazione facileper installarlo è sufficiente scaricare e decomprimere il tarball, quindi dare un’occhiata al file rEADME per controllare se avete le librerie necessarie già installate. Libcddbd, Cdparanoia e GTK, sono i requisiti principali, cui vanno aggiunti i formati di codifica che si vogliono utilizzare, come Lame (supporto Mp3) o Vorbis-Tools (ogg Vorbis) e così via. Lo script di configurazione vi dirà se

Editor musicale

Ripper ed encoder di CD

rilevare i dispositivi MiDi in tempo reale, consentendo di iniziare la composizione direttamente da una tastiera. Trovate questo programma nella maggior parte dei gestori software delle distro. per l’ultima versione, però, è meglio rivolgersi a GitHub. Controllate le dipendenze e lanciate python frescobaldi, o sudo python setup.py install. Sul sito di Lilypond potete poi mettere mano a centinaia di strumenti utili in più occasioni, come SATB per la musica corale.

vi mancano delle librerie o se la versione che avete è troppo vecchia. una caratteristica molto interessante di questo software è la capacità di creare playlist M3u per un media player o un dispositivo Android. il suo punto di forza è però la facilità d’uso, che permette di mettere mano a tutti gli strumenti necessari fin dal primo avvio. La funzione Preferenze, infatti, è quella principale, che consente di gestire il formato di salvataggio, la codifica, la compressione e scegliere la directory dove archiviare il file.

Versione: 2.0.16 Web: www.frescobaldi.org

Versione: 2.5 Web: http://littlesvr.ca/asunder

Frescobaldi semplifica in modo formidabile il lavoro che si può fare con un file LilyPond

Questa è una di quelle interfacce che non possiamo che definire come ridotta ai minimi termini

“Frescobaldi permette di lavorare con LilyPond in modo semplice e veloce”

“Asunder farà la felicità di chi vuole un software ben fatto e minimale”

Linux pro 146 63

Test Da non perdere Da non perdere Test

060_066_LXP_146_LXF184.hot 63 22/09/14 15:22

Page 66: 10_ottobre2014

Se avete una tavoletta grafica e siete appassionati di disegno, non potete farvi mancare Inkscape,

un programma pensato per la grafica vettoriale. Disponibile nel gestore software della maggior parte delle distro, può essere perfezionato con l’aggiunta di alcune estensioni, molte delle quali usano ruby, libxml-xql-perl, python-numpy e python-lxml. pertanto, prima dell’installazione, è opportuno recuperare questi pacchetti per poter godere di tutte le funzioni. inkscape è capace di aprire e salvare i vostri file in formato SVG. Tuttavia è anche in grado di esportare in bitmap e pnG, così da ampliare l’uso della grafica che create sia per il Web sia per eventuali stampe. È l’ideale per creare loghi o immagini che possano essere ridimensionati a piacere senza perdita di qualità. Al di là di questo, comunque,

Gestire i download può essere molto semplice, ma se siete soliti scaricare ingenti quantità di file

e usando protocolli diversi, le cose cambiano. È qui che entra in gioco FatRat, un gestore di download scritto in C++ e basato su Qt4. il suo punto di forza è senza dubbio la versatilità, che gli consente di gestire una quantità di protocolli davvero impressionante. oltre al classico HTTp e FTp, supporta anche gli rSS e BitTorrent, consentendo poi di sfruttare anche un motore di ricerca torrent. Se usate un proxy, non ci sono problemi, perché Fatrat può funzionare senza problemi anche dietro SoCKS5. non manca poi la gestione di rapidShare.com sia in upload sia in download. in più può essere controllato in remoto via jabber o interfaccia Web. per non farsi mancare niente, infine, funziona anche come downloader per i

Inkscape

FatRat

Questo è un programma completo che può fare la felicità, oltre che degli amatori più esigenti, anche dei professionisti della grafica. L’interfaccia richiama molto da vicino quella dei più comuni programmi di grafica, come CorelDraw, e consente di creare diverse forme base partendo dalla semplice selezione dello strumento apposito. naturalmente possiamo utilizzare il mouse ma è preferibile sfruttare una tavoletta, così da poter disegnare al meglio e con maggiore facilità. oltre alle forme 2D, è possibile generare oggetti tridimensionali, che possono poi essere gestiti nei vari dettagli,

video di YouTube. Le dipendenze di Fatrat sono diverse, tra cui libpion-net4.0, liblog4cpp5 e libtorrent-rasterbar5, ma essendo disponibile nel gestore applicazioni della maggior parte delle distro, non dovreste avere problemi a soddisfare tutte le richieste. Se volete procedere dal sito, basterà collegarsi alla pagina Download e scaricare il codice sorgente dell’ultima versione disponibile. in alternativa, lo trovate anche su Git usando il comandogit clone git://git.dolezel.info/fatrat.git

cui potete sostituire “fatrat” con il nome di qualsiasi plug-in disponibile. una volta scaricato il file, non dovrete fare altro

Disegno vettoriale

Download manager

modificandone forme e dimensioni per adattarsi al contesto anche una volta che sono stati creati. Da segnalare la nutrita presenza di filtri, che consentono di processare operazioni complesse in un solo click del mouse. infatti, possiamo realizzare colorazioni e sfumature particolari per ottenere la simulazione di specifici materiali, creare forme complesse, ombre e aloni, sfocature e sovrapposizioni, nonché gestire le trasparenze e il canale Alpha.

che compilarlo con cmake, make, make install. La Gui è piuttosto intuitiva: sulla sinistra trovate il menu che mostra i download in coda, mentre al centro e sulla destra è presente la schermata in cui vengono riepilogati i dettagli dei file che state scaricando. nella parte superiore, infine, sono disponibili i vari strumenti. A questo proposito, per configurare le varie opzioni relative ai diversi tipi di download, vi consigliamo di fare una vista al menu Settings, che suddivide per funzioni ogni specifica a cui mettere mano.

Versione: 0.48.5 Web: www.inkscape.org

Versione: 1.2.0 Web: http://fatrat.dolezel.info/

Non siamo certo artisti della grafica, ma qualcosa siamo riusciti a creare anche noi

Nel menu Settings di FatRat potete gestire a dovere ogni aspetto del programma, a cominciare dai vari protocolli

“Inkscape è un software per la grafica vettoriale ricco di strumenti”

“FatRat rende la gestione dei download un vero e proprio spasso”

64 Linux pro 146

Test Da non perdere Da non perdere Test

060_066_LXP_146_LXF184.hot 64 22/09/14 15:22

Page 67: 10_ottobre2014

Chi crea siti Web sa cosa significa mettere a punto uno o più fogli stile. Ebbene, Cssed ha il pregio di

rendere questa operazione pratica, intuitiva e alla portata di tutti, anche di chi non ama mettere mano alla tastiera e scrivere in codice. Si tratta di un piccolo editor che integra uno strumento di validazione per sviluppatori, ideato appunto per scrivere codice CSS. Basato su GTK2, ha un’interfaccia MDi, dispone del completamento automatico e vi permette di inserire valori complessi senza alcun problema. La filosofia nella semplicità d’uso si vede fin dall’installazione, visto che non necessita di alcuna dipendenza. inoltre può essere esteso facendo uso di plug-in e script in pyhton. proprio a proposito dei componenti aggiuntivi, andando nell’apposita pagina dedicata sul sito Web ufficiale, ne troviamo alcuni tra cui un terminale virtuale e un motore di ricerca interno ai file.

S iete stufi di utilizzare la funzione di ricerca della vostra distro, che talvolta non trova esattamente

quello che volete? Bene, allora è il momento di dare un’occhiata a Catfish, un semplice tool per la ricerca in Linux e unix scritto in python e con un’interfaccia basata su Gtk3+. il punto di forza di Catfish è il suo funzionamento. potete utilizzarlo come semplice motore di ricerca interno senza tanti fronzoli, ma anche come un potente strumento per raffinare nel dettaglio qualsiasi query datagli in pasto. potete scaricarlo dal gestore applicazioni della vostra distro o, in alternativa, recuperare il tarball direttamente dal sito ufficiale. Attualmente, stando alle fonti riportate sulla pagina, la versione 1.2.1 che stiamo utilizzando è in fase di sviluppo, mentre la 0.8 è data come stabile.

Cssed

Catfish

per ogni plug-in, inoltre, è disponibile la documentazione appropriata, che consente di installarli senza particolari difficoltà. Cssed è disponibile per la maggior parte delle distro, a cominciare da Debian, Gentoo, Slackware, Suse e molte altre. potete scaricare il tarball sul sito, quindi scompattarlo e compilarlo con il tradizionale ./configure, make, make install. Volendo, è possibile utilizzare anche rpM, servendosi poi del comando da root:rpm -ivh cssed-0.4.0-0.i386.rpm

per le distro Debian, invece, è disponibile sia nel gestore applicazioni sia con il classico sudo apt-get install. una volta avviato, veniamo accolti da un’interfaccia ben strutturata, dove possiamo iniziare a mettere

una volta installato, se accedete al menu Impostazioni avanzate che trovate facendo click sull’icona in alto a destra, potete inserire una serie di restrizioni riguardanti il tipo di file che state cercando. per esempio, siete in grado di raffinare la ricerca scegliendo un documento modificato in un dato periodo di tempo, oppure selezionare il tipo di formato. Sempre tra le opzioni, avrete la possibilità di scegliere la ricerca per corrispondenza esatta, oppure scandagliare anche i file nascosti. in caso di ricerca completa, il sistema verrà messo sotto la lente d’ingrandimento da Catfish, che vi

Editor grafico per CSS

Motore di ricerca per distro

mano ai CSS premendo l’icona Selezione carattere. Da qui è possibile scegliere la notazione tipografica, il tipo di carattere, la dimensione, le varianti e la famiglia carattere. Volendo poi proseguire con il colore, abbiamo a disposizione una tavolozza apposita che consente di gestire le cromie di caratteri fin nei minimi dettagli. ogni volta che aggiungiamo un particolare, il foglio di stile si compila automaticamente con la rispettiva istruzione. una volta finito, non resta che salvarlo come file CSS.

restituirà tutti i report relativi. naturalmente, niente vi impedisce di restringere il campo a determinate porzioni del disco fisso, come partizioni o addirittura singole cartelle. infine, è importante ricordare che per avere un risultato di ricerca quanto più accurato possibile è necessario aggiornare gli indici, in modo che il database delle posizioni sia sempre preciso. per farlo, sarà sufficiente selezionare la voce Aggiorna indice di ricerca, quindi inserire la password per utilizzare i diritti amministrativi.

Versione: 0.4.0 Web: http://cssed.sf.net

Versione: 1.2.1 Web: https://launchpad.net/catfish-search

Accedendo al pannello Selezione carattere di Cssed potete gestire nel dettaglio le specifiche della formattazione

Utilizzando le impostazioni avanzate, siete in grado di perfezionare a dovere qualsiasi ricerca

“Cssed potrebbe essere definito un editor WYSIWYG per CSS”

“Catfish è molto meglio di un segugio: non sbaglia mai una ricerca”

Linux pro 146 65

Test Da non perdere Da non perdere Test

060_066_LXP_146_LXF184.hot 65 22/09/14 15:22

Page 68: 10_ottobre2014

Giochi Applicazioni per il tempo libero

N el momento in cui il padre di Edgar, il protagonista del gioco, non torna a casa dopo

una notte buia e tempestosa, il figlio deve andare a salvarlo in una fortezza al di là di una palude. Certo, non è una sceneggiatura da oscar, ma il fatto che questo platform sia dotato di una seppure minima trama lo rende comunque più piacevole. L’interazione del personaggio con il mondo che lo circonda e le quest in stile rpG, senza però tutta la confusione della micro gestione dei giochi di ruolo, rendono questo titolo piuttosto divertente. La grafica è

The legend of Edgar

piacevole, i suoni sono arcade e gli effetti visivi non mancano. Si comincia armati di spada, ma in giro potrete trovare una vasta gamma di armi da utilizzare in più occasioni. prima di addentrarsi nel vivo del gioco, comunque, è possibile sfruttare il livello che fa da tutorial, così da iniziare a sentirsi a proprio agio con i principali comandi, come le interazioni e il

Tutto inizia mettendo al sicuro dei polli...

Platform

movimento. il sito mette a disposizione i binari basati su Debian/ubuntu, ma la compilazione non è comunque difficile: l’unica cosa di cui ha bisogno sono le librerie SDL. Le opzioni a riga di comando includono l’utilizzo di un joypad analogico, la registrazione/riproduzione di input da tastiera e l’impostazione della lingua a scelta tra le 30 disponibili.

Versione: 1.17.1 Web: http://bit.ly/LegofEd

“Grafica piacevole e suoni arcade sono i punti di forza di questo gioco”

Forse un programma pensato per risolvere un gioco non è da considerarsi un vero e proprio

videogame. Tuttavia ci sono molte persone che amano proprio questo genere di intrattenimento, vale a dire cimentarsi nella risoluzione di un problema altrimenti insormontabile. Freecell è un gioco di carte basato sul solitario, che permette di utilizzare un mazzo standard da 52 carte. Tuttavia si differenzia dalla maggior parte dei simili, in quanto vi mette davanti a difficoltà davvero estreme. il gioco è stato reso popolare in versione MS-DoS per Windows, ma Freecell Solver non si incentra solo su Freecell, ma anche su altri solitari simili, compresi quelli in cui le sequenze sono costruite per seme,

Freecell Solverper colore alternato o per rango. L’installazione è facile: basta usare cmake o ccmake. È inoltre possibile utilizzare la versione Gui con cmake-gui. La vostra distro dovrebbe avere una versione abbastanza recente, ma se volete l’interfaccia grafica date un’occhiata a kpat, che utilizza Freecell Solver per risolvere la propria piattaforma di Freecell. Volendo, è poi possibile collegare pySolFC (un gioco di solitario in python) a Freecell Solver. il binario si chiama fc-solve e lancia un file board. Comunque, qualsiasi sia il

Freecell Solver riprende un layout tipico di Freecell da riga di comando, quindi vi offre ogni soluzione plausibile

Risolutore di solitari

problema che volete affrontare, che si tratti di uno schema di solitario troppo difficile, oppure una semplice prova per vedere come potrebbe essere risolta una situazione particolare, questo programma può fare al caso vostro. C’è una larga documentazione in giro per la rete, nonché un libro con una spiegazione sullo sviluppo del software per tutti i programmatori. LXP

Versione: 3.26 Web: http://fc-solve.shlomifish.org

“Non risolve soltanto Freecell, ma anche molti altri solitari simili”

66 Linux pro 146

Test Da non perdere Da non perdere Test

060_066_LXP_146_LXF184.hot 66 22/09/14 15:22

Page 69: 10_ottobre2014

TutorialI nostri esperti offrono ogni mese i loro consigli di programmazione e di amministrazione del sistema

TuTorial TerminaleUna guida sui comandi principali dei programmi di base per gestire file, reti e modificare i propri testi pag. 68

SysadminImparate a gestire la vostra distro con i consigli sulle basi di amministrazione di sistema dello staff di Linux Pro pag. 70

Kerbal Space ProgramCreare un controller su misura personalizzato è davvero divertente: basta seguire il nostro tutorial pag. 74

MediaWikiCome installare e gestire il popolare modulo perfetto per collaborare ai contenuti con un gruppo di persone pag. 80

aCCaDEMia DEl CoDiCEDjangoNon volete mettere le mani sul PHP? Alleviate il vostro mal di CMS con questo framework e seguite le istruzioni per creare un piccolo sito Web o un blog con Django e Zinnia pag. 84

BashProgrammare con la shell per far lavorare il computer al vostro posto è un’ottima idea per risparmiare tempo e potervi dedicare ad altro. Ecco una guida a funzioni software e alias pag. 88

LINUx Pro 146 67

La vostra guida di riferimentoEsiste sempre qualcosa di nuovo da imparare in campo informatico, soprattutto in un mondo dinamico come quello di Linux e dell’Open Source. Ogni numero di Linux Pro presenta una corposa sezione dedicata a tutorial realizzati da esperti in moltissimi settori: programmazione, sicurezza,amministrazione di sistema,networking. Troverete informazioni utili sia che siate dei veterani di Linux sia degli utenti alle prime armi. Studieremo con cura anche le applicazioni più diffuse sia in ambito lavorativo che desktop. Il nostro scopo è quello di fornire in ogni numeroil giusto mix di argomenti, ma se avete suggerimenti su temi particolari che vorreste vedere trattati, scriveteci via e-mail all’indirizzo [email protected]

Si presenta spesso la necessità di riportare le linee di codice di un programma. Per favorirne la lettura evidenzieremo le singole linee in questo modo: begin mniWordWrap.Checked := notend Quando una riga di codice supera la lunghezza della colonna la riporteremo su più righe utilizzando la notazione seguente:printf(“Vi preghiamo di inserireuna password.“);

Comerappresentiamo Le Linee di CodiCe

067_LXP_146_introTutorial 67 22/09/14 01:32

Page 70: 10_ottobre2014

Tutorial Mopidy Programmi Terminale Tutorial

68 Linux pro 146 Linux pro 146 69

Tutorial xxxxTerminale i comandi principali per gestire file, reti e modificare i propri testi

I programmi di baseTra le migliaia di comandi disponibili da terminale, lo staff di Linux pro vi illustrerà i più utili per risparmiare tempo

Abbiamo parlato di svariati comandi disponibili da shell nel corso dei nostri articoli, ma ogni volta il tutto era finalizzato a portare a termine un determinato lavoro.

È giunto il momento di dare un’occhiata ad alcuni comandi che possono tornare utili nell’utilizzo quotidiano. Esistono migliaia di comandi da terminale, dai più comuni fino a quelli quasi sconosciuti, ma basta padroneggiarne una manciata per iniziare a lavorare. in questo articolo daremo un’occhiata ai comandi di base più utilizzati, fornendo una breve descrizione sul loro utilizzo. ovviamente, la man page offre molti più dettagli sul loro utilizzo di quanti possiamo darne noi qui. ogni volta che si lavora con il terminale, si lavora sui file, per creare, rimuovere, elencare o farci altre attività. Ecco i comandi principali per farlo.

ls: elenca il contenuto della directory corrente o di quella data in input.

ls -l:: come ls ma offre molte più informazioni per ogni oggetto.possiamo rendere più leggibile la dimensione dei file utilizzando -hls -lh LeMieFoto rm: elimina dei file. possiamo utilizzare -i per richiedere una

conferma di eliminazione per ogni file oppure -f per forzare l’eliminazione. utilizzando -r elimina le directory e il loro contenuto.

rmdir: elimina una directory, che deve essere vuota. df: mostra lo spazio libero sul disco di tutti i filesystem

o soltanto di quello dato in input. du: mostra la quantità di spazio occupato da ogni file

o directory.df -h /homedu -sh /home/utente/* file: identifica la tipologia di un file. A differenza di Windows,

che utilizza l’estensione del nome, questo comando controlla all’interno del file per verificare ciò che contiene realmente.

find: cerca all’interno della directory corrente (o di quella data) per trovare file che corrispondono a determinati criteri.

per esempio potete trovare semplicemente i fogli di calcolo di Libreoffice utilizzando:find Documenti -name ‘*.ods’ locate: anche questo comando cerca i file ma utilizza un

sistema molto più veloce. il database di locate viene aggiornato automaticamente ogni giorno da updatedb. È molto veloce ma non conosce le modifiche più recenti.

Gestione dei testii file di testo sono ovunque, dalle email ai file di configurazione, per questo esistono moltissimi comandi per gestirli. Se volete modificare un file di testo, non avete che l’imbarazzo della scelta, i due concorrenti principali sono Emacs e Vi. Entrambi sono molto avanzati, se volete semplicemente modificare un file di configurazione provate nano:nano -w nomefile.txt

L’opzione -w disabilita il wrapping automatico, che sicuramente non volete se state modificando un file di configurazione. La barra di stato in basso mostra i comandi principali, per esempio, premete Ctrl+X per salvare il file e chiuderlo. Questo ovviamente presuppone che sappiamo quale file dobbiamo modificare, ma cosa possiamo fare se sappiamo cosa stiamo cercando ma non come si chiama il file che lo contiene? in questo caso, possiamo usare grep. Questo comando cerca all’interno dei file un testo o un’espressione regolare.grep deltesto *.txt

Questo comando cerca all’interno di tutti i file .txt presenti nella cartella corrente la stringa “deltesto” e mostra tutte le righe che la contengono presenti in ogni file, oltre ovviamente al nome del file stesso. possiamo cercare anche nell’intera gerarchia della directory con -r (o --recursive)grep -r -i deltesto cartella

Fate attenzione se ricercate all’interno di directory molto estese: potrebbe impiegare molto tempo e ripornare strani risultati da file non di testo. L’opzione -I dice a grep di saltare i file binari. il testo è anche il modo preferito di passare dati tra

Trovare aiutoLa riga di comando potrebbe sembrare poco amichevole all’inizio, ma esistono moltissimi aiuti se si sa dove cercarli. Molti comandi hanno l’opzione --help che vi dice quali opzioni sono presenti. La pagine di man e info sono le principali fonti di informazione per qualsiasi cosa. per conoscere tutte le opzioni di un programma e il loro utilizzo scrivete:man nomeprogramma

Le man page sono divise in sezioni numerate. normalmente le più usate sono:

1 comandi utente;

5 formato dei file e conversioni; 8 tool amministrativi

Se non si specifica il numero, man prende in automatico la prima disponibile; di solito funziona. Ma le man page non sono limitate ai programmi, coprono anche i file di configurazione. per esempio, le password sono gestite dal comando passwd, e le informazioni sono salvate nel file /etc/passwd quindi potete usare:man passwdman 1 passwdman 5 passwd

Le prime due righe vi mostreranno il manuale relativo al comando passwd mentre la terza vi spiegherà cosa contiene il file /etc/passwd.Le man page hanno tutte le informazioni in un’unica pagina mentre le pagine info sono una collezione di pagine collegate in un unico file. Solitamente offrono più dettagli ma sono meno intuitive da leggere, provate a digitare info info per darci un’occhiata. Spesso è più facile utilizzare un motore di ricerca per ricercare la versione online delle pagine info che contiene le stesse informazioni in un formato HTML molto più familiare.

fACIlE

068_069_LXP_146_LXF186.tut_terminal 68 21/09/14 16:47

Page 71: 10_ottobre2014

Tutorial Mopidy Programmi Terminale Tutorial

68 Linux pro 146 Linux pro 146 69

molti programmi, utilizzando i pipe come abbiamo visto in un articolo precedente. A volte vogliamo passare i dati direttamente da un programma a un altro, ma a volte è necessario modificarli prima. possiamo inserire il testo in un file, modificarlo e poi inviare il file al nuovo programma, oppure possiamo utilizzare i pipe e modificarlo al volo. nano modifica i file in modo interattivo, grep ricerca al loro interno automaticamente, quindi abbiamo bisogno di un programma per modificarli in modo automatico per automatizzare il processo, questo programma si chiama sed (Stream EDitor). Sed prende uno stream di testo da un file o da un pipe ed effettua le modifiche che gli dite di fare. normalmente si usa per eliminare o sostituire. Sed invia l’output alla stdout, ma l’opzione -i permette di salvare l’output in un file:

sed -i ‘’ s/vecchiotesto/nuovotesto/g unfile.txtsed -i ‘’ /vecchiotesto/d unfile.txt

il secondo esempio elimina tutte le righe che contengono la stringa “vecchiotesto”. un altro programma utile è awk, che può essere utilizzato per stampare oggetti specifici da un file di testo o stream.awk ‘{print $1}’ unfile.txtcat *.txt | awk ‘/^Ciao/ {print $2}’

il primo esempio stampa la prima parola di ogni riga del file. il secondo prende il contenuto di tutti i file che finiscono in .txt, prende le righe che iniziano con “Ciao” (la stringa tra le due barre è il pattern da ricercare) e poi stampa la seconda parola delle righe corrispondenti.

NetworkingSolitamente quando si parla di software per la rete si pensa a grandi programmi ricchi di grafica come Chromium e Thunderbird, ma esistono molti programmi da riga di comando per impostare, testare e utilizzare la rete o la connessione a internet.

Ping invia un piccolo pacchetto a un server remoto e controlla quanto tempo impiega per ricevere la risposta, molto utile se volete controllare se un sito è disponibile o se la vostra connessione funziona.ping -c 5 www.google.it wget: scarica dei file. il solo argomento di cui ha bisogno

è un indirizzo internet, anche se offre moltissime opzioni che raramente si utilizzano.

hostname: mostra l’hostname del vostro computer, oppure l’indirizzo ip se utilizzate il flag -i.

lynx: è un browser testuale. Anche se non è intuitivo quanto Chromium o firefox, è importante conoscerlo, per poter effettuare ricerche in internet anche se per qualche motivo non dovesse più funzionare l’ambiente grafico. lXP

Comandi, opzioni e argomentiSentiamo spesso parlare di argomenti e opzioni quando si parla di comandi, ma esattamente cosa sono? Le opzioni e gli argomenti sono le cose che dicono a un programma come comportarsi. Banalizzando un po’, gli argomenti dicono al comando cosa fare, mentre le opzioni gli dicono come farlo, anche se il confine è molto labile. prendiamo come esempio il comando ls che elenca il contenuto di una directory. Senza alcun argomento o opzione, elenca il contenuto della directory corrente:lsDesktop Downloads Musica Video Documenti Foto

Se vogliamo vedere il contenuto di una directory diversa, passiamo il nome della directory come argomento:ls Foto

oppure ls Desktop Downloads

Gli argomenti vengono passati al comando semplicemente scrivendo il nome, le opzioni invece sono precedute da un trattino. La convenzione classica dei programmi Gnu e condivisa anche da molti altri è di avere una versione lunga e una corta delle opzioni.

La versione corta è formata da un trattino e un carattere, per esempio -l che dice a ls di fare l’elenco nel formato approfondito, fornendo informazioni aggiuntive per ogni file. La versione lunga è formata da due trattini seguiti da una parola, come per esempio ls --reverse, che mostra l’elenco in ordine inverso, come si evince dal nome. ls -r fa la stessa cosa ma è meno ovvio. Molte opzioni, come questa, hanno sia la versione lunga che la versione corta, ma esistono soltanto 26 lettere nell’alfabeto quindi le opzioni meno utilizzate spesso sono disponibili soltanto in versione lunga. La versione corta è facile da leggere ma quella lunga è più chiara. Confrontiamo:ls -l --reverse --time

conls -l -r -t

o anchels -lrt

ogni comando dà un elenco in formato esteso ordinato in ordine cronologico inverso. notate come più opzioni corte possono essere combinate utilizzando un unico trattino. Mentre stiamo parlando di ls ne approfittiamo per parlare dei file ‘nascosti’. in Linux, un file,

o una directory, il cui nome inizia con un punto è considerato nascosto e non viene mostrato dall’output di ls, ne nella maggior parte dei file manager. Di solito si tratta di file di configurazione che farebbero solo confusione, ma se volete vederli è sufficiente aggiungere l’opzione -A a ls.

facendo passare l’output di du attraverso sort, e aggiungendo qualche opzione a entrambi i comandi, possiamo vedere quali directory occupano più spazio

filelight di KDE, che potete vedere qui, e GDU di Gnome offrono un’alternativa grafica a du, mostrando graficamente l’utilizzo del disco

068_069_LXP_146_LXF186.tut_terminal 69 21/09/14 16:47

Page 72: 10_ottobre2014

Tutorial Xxxx

70 Linux pro 146

Torniamo alle basi

Basi di amministrazione prendete in mano la vostra distro e imparate ad amministrarla

Avete bisogno di alcune basi di amministrazione di sistema per usare Linux a pieno. Leggete questo articolo per saperne di più...

Dal momento che state leggendo Linux pro, c’è un’elevata probabilità che abbiate già installato la vostra distribuzione Linux preferita. Avete

probabilmente anche già usato il gestore di pacchetti per installare software aggiuntivo e potete scrivere documenti, navigare, vedere video e ascoltare musica. Magari giocare ai videogame. Anche se potreste andare lontano con il vostro setup attuale, prima o poi avrete bisogno di modificare qualche cosa, installare un nuovo pezzo di hardware, sistemare le performance di un’app o condividere il vostro computer con altri. La maggior parte delle distribuzioni integra degli strumenti per aiutare gli utenti a gestire vari aspetti dei loro sistemi. Alcune, come ubuntu, hanno degli strumenti di amministrazione piuttosto semplici, mentre altre hanno dei menu estesi a volte non immediatamente comprensibili. L’utente medio non deve avere le conoscenze e la praticità di un amministratore di sistema qualificato, benché non faccia male avere in repertorio alcune capacità per gestire con efficienza il proprio computer. La gestione degli utenti è una delle skill basilari che dovreste avere in un sistema Linux, anche se siete i soli a usarlo. Questo perché conoscere utenti e gruppi è imperativo per rendere sicuro il sistema e controllare l’accesso ai dati. Anche se potete gestire gli utenti da riga di comando, praticamente tutte le distribuzioni Linux

moderne includono uno strumento grafico per aiutarvi a creare, controllare e rimuovere account. Ci sono tuttavia un paio di cose che dovreste conoscere nella gestione di utenti e gruppi. potrebbe suonare ovvio, ma un utente è chiunque usi un computer. Alcuni servizi di sistema vengono eseguiti con account ristretti o privilegiati. il superuser (root) ha accesso completo al sistema operativo e alla sua configurazione. utenti non privilegiati possono usare i comandi su e sudo per privilege escalation controllata. Dietro le quinte, uno username ha una stringa unica di numeri conosciuta come user iD (uiD). Allo stesso modo, i gruppi hanno il group iD (GiD). L’utente root è uiD 0. i numeri da 0 a 499 e il numero 65.534 sono utenti di sistema, a volte chiamati utenti logici o pseudoutenti. Gli utenti regolari hanno uiD da 1.000 in su. nel creare un utente l’amministratore può aggiungerlo a gruppi esistenti dei quali fanno parte altri utenti che condivideranno lo stesso GiD; alternativamente può essere creato un nuovo gruppo esclusivo, il cui GiD coinciderà probabilmente con l’uiD dei singoli utenti. ricordate che un gruppo non può essere membro di un altro gruppo in Linux.

File e permessiin Linux tutto è un file, incluse le directory e i dispositivi. ogni file ha un set di permessi che forniscono sicurezza dei dati definendone gli accessi. Con questi è possibile definire chi può leggere, scrivere ed eseguire un file. Questi tre permessi sono impostati individualmente per tre tipi di utente: il proprietario di un file, i membri del gruppo cui il file fa capo, e tutti gli altri utenti. per elencare i permessi dei file usate il comandols -l

utilizzato senza un preciso nome di file, elencherà i permessi di tutti i file in una directory in questo formato:-rw-r--r-- 1 lestat lestat 8980 Apr 24 09:21 note.txtdrwxr-xr-x 9 lestat lestat 4096 May 29 07:42 Downloads

il primo carattere nell’output indica il tipo di file. il trattino nell’esempio rappresenta un file normale e d una directory. Ci sono altri caratteri per indicare diversi tipi di dispositivo. Tale carattere è seguito dai permessi per il proprietario, gruppo, e altri utenti. il numero che segue indica se è un file normale (1) o il numero di file aggiuntivi collegati con hard-link. un file con hard-link è una copia esatta del file che potrebbe essere memorizzata in un altro punto del sistema. A seguire c’è il nome del proprietario (l’utente che ha creato il file) e il gruppo i cui utenti possono accedere al file. i seguenti pezzi di informazione indicano la dimensione del file in byte e la data di ultima modifica. Tornando ai permessi, come potete vedere sono indicati con tre caratteri: r per la lettura, w per la scrittura e x per l’esecuzione (o per la lettura di una directory). i permessi sono raggruppati per proprietario, gruppo e altri. il proprietario di note.txt, lestat, può leggere e scrivere il file (rw), mentre gli altri membri del gruppo lestat, così come tutti gli altri utenti, possono solo leggerlo (r--). Molti utenti preferiscono usare i codici numerici in base ottale

Facile

Tiputilizzando diverse combinazioni di impostazioni potete impostare velocemente un ambiente più sicuro.

070_073_LXP_146_LXF187.tut_sysadmin 70 22/09/14 01:35

Page 73: 10_ottobre2014

Tutorial Xxxx

Linux pro 146 71

Sysadmin Tutorial

Strumenti come Deja Dup vi semplificano operazioni complesse come i backup

per rappresentare i permessi. i permessi di scrittura valgono 4, quelli di scrittura 2 e l’esecuzione 1. Applicandoli all’esempio, il file ha permessi 644 dato che l’utente con lettura (4) e scrittura (2) ottiene un valore di 6, mentre quelli in sola lettura hanno 4 ognuno. potete modificare i permessi di un file utilizzando la notazione letterale o numerica con il comando chmod. Ci sono diverse opzioni se volete usare le forme letterali di chmod. i tre permessi per il proprietario sono governati con u, g controlla i permessi di gruppo e o gli altri. il carattere a ha effetto su tutti gli utenti, mentre i caratteri r, w e x controllano i singoli permessi. potete usarli con il simbolo + per aggiungere o il simbolo - per rimuovere un dato permesso. il seguente comando, per esempio, dà permessi di lettura e scrittura al proprietario del file:chmod u+rw note.txt

Tuttavia è consigliato usare la notazione ottale per alterare i permessi, perché è più facile da comprendere. il comando di cui sopra può essere replicato conchmod 600 note.txt

Con questo avete dato permessi di lettura e scrittura al proprietario e negato qualunque permesso a tutti gli altri. il comando chown vi permette di trasferire la proprietà di un file. Con chown karma note.txt passa il proprietario a karma. Allo stesso modo potete spostare un file da un gruppo ad un altro con il comando chgrp. per esempio, il seguente comando sposterà il file index.html al gruppo www-data di Apache:chgrp www-data index.html

Compilare il softwareLa compilazione del software è un’altra abilità che tornerà utile nel vostro arsenale. Anche se la maggior parte del software è disponibile in forma pre-compilata dal gestore di pacchetti della vostra distribuzione, prima o poi vi imbatterete in qualcosa che dovrete compilare da voi. potrebbe essere l’ultima versione di un programma critico per il vostro workflow che la vostra distribuzione non ha ancora aggiornato.La compilazione da sorgente non è molto difficile e solo un po’ più lunga rispetto all’installazione dei binari. Tuttavia dovrete assicurarvi di avere tutti gli strumenti necessari: se state usando una distribuzione basata su Debian, come ubuntu, vi basterà installare il pacchetto build-essential:sudo apt-get install build-essential

Gli utenti di distribuzioni basate su rpM come Fedora dovranno installare i singoli componenti:yum install make automake gcc gcc-c++ kernel-devel

il codice sorgente della maggior parte del software arriva in tarball compressi. Sono file TAr compressi con Gzip con estensione .tar.gz. Scaricate il codice sorgente nella vostra directory home e decomprimetelo con il comando tar:tar xvzf miosorgente.tar.gz

potete quindi entrare nella directory decompressa e cercare un file chiamato Install o Readme o qualcosa del genere. Questo file di testo contiene tutte le istruzioni specifiche per la compilazione di quel software. La procedura standard per compilare inizia chiamando uno script di configurazione con il comando ./configure che controllerà tutti i requisiti necessari. Se vi mancano librerie o dipendenze, lo script di configurazione si fermerà indicandovi l’errore e permettendovi di installare le cose mancanti con il gestore di pacchetti. una volta completato con successo lo script di configurazione potete avviare la compilazione con il comando make, che richiederà un po’ di tempo a seconda della dimensione del software che dovete installare. Terminata la compilazione, concludete con il comando make install lanciato come utente root.

Navigare il filesystemDovreste essere familiari con la vostra directory utente in /home. per diventare un utente avanzato dovreste familiarizzare con tutto il resto del filesystem e la sua organizzazione. i comandi essenziali per tenere in piedi il sistema sono in /bin. Diversamente dalle normali app che

Se effettuate il dual-boot con Linux c’è il rischio che altri sistemi operativi possano sostituire il proprio bootloader con quello della distro. La buona notizia è che potete ripristinare il bootloader di Grub2 (predefinito nella maggior parte delle distribuzioni) con poco sforzo. il modo raccomandato è quello di avviare il Live CD della vostra distribuzione e aprire un terminale dalla sessione Live. ora individuate il disco in cui è installata la distribuzione: potete usare il comando sudo fdisk -l command

una volta recuperata quest’informazione, lanciate il comando seguente da terminale:sudo grub-install /dev/sdx

Assicuratevi di sostituire la X del comando con la lettera dell’alfabeto che identifica il disco, come sda o sdb. Questo dovrebbe reinstallare il bootloader di Grub2 nel master boot record del disco. Fatto questo dovrebbe comparirvi il solito menu di Grub al riavvio del computer.in alternativa potete usare lo strumento grafico Boot-Repair installandolo all’interno dell’ambiente Live utilizzando il metodo raccomandato per la vostra distribuzione. una volta installato, lanciatelo e lasciate che scansioni il sistema. una volta comparsa la finestra schiacciate il grosso pulsante Riparazione Raccomandata per ripristinare il bootloader.

Ripristinare il bootloader

Lo strumento Boot-Repair è la soluzione più facile per sistemare i problemi con il bootloader Grub

TipQuando la compilazione fallisce controllate i messaggi d’errore e quindi lanciate make clean prima di cominciare daccapo. Lanciare make uninstall come root per rimuovere qualsiasi software installato da sorgente.

070_073_LXP_146_LXF187.tut_sysadmin.indd 71 25/09/14 14:39

Page 74: 10_ottobre2014

72 Linux pro 146

Tutorial Sysadmin

alcune distribuzioni includono uno strumento grafico per visualizzare i log

sono linkate dinamicamente e dipendono da librerie condivise, i comandi sotto /bin sono linkati staticamente e non dipendono da librerie software mantenute in altre posizioni. La directory /etc contiene i file e le directory di configurazione del sistema. Anche se alcuni pacchetti software come Apache e openSSH hanno le proprie directory all’interno di /etc, altri come fstab usano un solo file di configurazione. una directory effettivamente importante sotto /etc è modprobe.d/ che contiene istruzioni per caricare i moduli del kernel durante lo startup del sistema. La directory /proc differisce dal resto perché i suoi contenuti sono creati in memoria ed esistono solo finché il sistema è in esecuzione. potete recuperare informazioni sul computer leggendo i file qui contenuti. Questo comando visualizzerà vari dettagli riguardo la Cpu: cat /proc/cpuinfo

C’è poi la directory /usr che contiene app, librerie e altri tipi di dati condivisi per l’uso da parte di tutti gli utenti del sistema. La directory /var contiene directory usate da vari servizi di sistema per code e log. Alcuni di questi, come le code di stampa in /var/spool, esistono solo temporaneamente. Altre, come i log in /var/log, sono rinominati e ruotati regolarmente. parlando di file di log, controllarli è un compito fondamentale per ogni admin. il kernel di Linux, i servizi critici di rete e altre app importanti registrano le attività critiche all’interno dei file di log che risiedono in /var/log. Due importanti log che dovreste controllare regolarmente sono auth.log che registra tutti i tentativi di login nel sistema e boot.log che registra i messaggi generati al boot del sistema e all’avvio dei servizi. infine c’è la partizione /home che già conoscete. È decisamente sempre buona norma tenerla separata dal resto del filesystem per assicurarsi che i dati registrati all’interno effettivamente sopravvivano a qualsiasi danno ad altre parti della distribuzione.

controllare il sistemaun altro importante aspetto del lavoro di amministrazione è assicurarsi che il computer che state controllando funzioni velocemente. potete verificare quali servizi sono in esecuzione con il comando ps -e che elencherà una lunga lista dei processi del sistema. potete troncare la lista mostrando solamente i processi di proprietà dell’utente attuale chiamando ps senza argomenti. L’output di ps include il process iD (piD) assieme al nome del programma in esecuzione. È più comune passare la lista a un filtro per visualizzare informazioni riguardo un programma. Questo comando vi mostrerà informazioni solo sui processi associati a Libreoffice:ps aux | grep libreoffice

una volta che conoscete il piD di un processo potete terminarlo con il comando kill. Assumendo che Libreoffice abbia piD 8899 potete terminare una sessione che non risponde conkill 8899

potete usare il comando top per vedere una lista di operazioni in corso ordinate per consumo di Cpu. il comando top visualizza vari pezzi di informazione riguardo i processi, incluso il piD. Ha anche una serie di comandi interattivi: per esempio potete terminare un processo premendo il tasto K, che vi chiederà di inserire il piD del processo da terminare. Se avete un processo che sta consumando tutte le risorse del computer, il comando renice gli può assegnare una priorità inferiore. Linux assegna una priorità a ogni processo e quelli con priorità maggiore avranno accesso favorito alle risorse di sistema, mentre altri dovranno attendere il proprio turno. il comando renice può assegnare un valore di priorità tra -20 e 19. Minore il numero, maggiore la priorità. per esempio, se volete recuperare le risorse da Libreoffice (piD: 8899) potete assegnargli una priorità inferiore con questo comandorenice 15 8899

Se la riga di comando non è proprio alla vostra portata,

TipAssicuratevi di fare sempre un backup dei file di configurazione prima di cominciare a modificarli, usando il comando cp: per esempio cp file_config file_config.original.

070_073_LXP_146_LXF187.tut_sysadmin 72 22/09/14 01:35

Page 75: 10_ottobre2014

Linux pro 146 73

Sysadmin Tutorial

i desktop Gnome e KDE includono degli strumenti per il controllo del sistema, e ne troverete altre controllando l’archivio software del repository ufficiale della vostra distro.

Backup regolariAnche se una distro Linux è piuttosto stabile e più protetta da programmi minacciosi che girano sulla rete, l’hardware su cui gira e l’operatore che la usa non sono infallibili: è buona norma quindi implementare una strategia di backup. L’utente desktop medio dovrebbe fare il backup della propria directory home così come dei file di configurazione. un backup settimanale dovrebbe essere sufficiente per la maggior parte degli utenti. potete memorizzare diverse settimane di backup in un disco uSB esterno. una volta che cominciate a essere a corto di spazio, potete eliminare i backup più vecchi o masterizzarli su un disco ottico. Esistono diversi strumenti open Source per il backup con diversi gradi di complessità e diverse caratteristiche. tar è l’utility di backup di gran lunga più popolare: potete usarla per creare facilmente archivi compressi di intere directory. Questo comando creerà un archivio della directory Downloads:tar cvf downloads.tar ~/Downloads

per comprimere il backup, modificate il comando così:tar cvzf downloads.tar.gz ~/Downloads

L’unica differenza tra i due comandi è l’aggiunta dell’opzione z, che indica a tar di creare un archivio compresso gzip. Anche il filename è cambiato. A seconda della dimensione delle directory di cui state facendo il backup, tar potrebbe metterci un po’ di tempo nel creare il file di backup compresso. Se avete molti dati da archiviare è meglio pensare a un backup incrementale che archivi solamente i file modificati dall’ultima volta che è stato lanciato. prima di creare un backup incrementale dovrete farne uno completo usando il comando visto prima. poi dovrete successivamente creare un file speciale che contenga una lista di tutti i file contenuti nel backup:tar cvzg increment-file -f downloads.tar.gz ~/Downloads

Dopo una settimana, utilizzate increment-file per fare il backup dei soli file modificati. il comando seguente crea un nuovo file di backup considerevolmente più piccolo di un backup totale:

tar cvzg increment-file -f 20140904-downloads.tar.gz ~/ Downloadsusate quest’ultimo comando per creare backup incrementali ogni settimana. ricordate di usare un nome diverso per ogni backup. Quando volete recuperare dati da questi ultimi, cominciate con l’estrazione della copia completa seguita dall’estrazione degli incrementali in ordine cronologico. Ciò significa che dopo aver estratto il file di backup completo dovrete estrarre il primo incrementale e terminare con l’ultimo:tar xvzf downloads.tar.gztar xvzf 20140904-downloads.tar.gztar xvzf 20140911-downloads.tar.gz

i contenuti della directory saranno quindi ripristinati come memorizzati dall’ultima istantanea. Se non siete interessati alla creazione di backup incrementali e volete uno strumento semplice, date un’occhiata a Deja Dup. L’app ha un’interfaccia minimale e non vi chiede la creazione di nuovi utenti con mille opzioni. Viene usata come strumento di backup standard per diverse distribuzioni, inclusa ubuntu. per usare Deja Dup indicate le cartelle da archiviare e specificate dove volete salvarle: può essere su un hard disk o una posizione remota via SSH, FTp o Samba. potete anche impostare una pianificazione e l’app regolerà il backup delle cartelle in background. Seppure questo tutorial non sia in alcun modo un elenco completo per l’amministratore, ora dovreste avere le abilità minime per prendervi cura del vostro computer. lXP

Alcune operazioni amministrative, per esempio creare i backup e download pesanti, sono molto più efficaci quando le pianificate. il comando at vi aiuta a pianificare le operazioni che dovete eseguire in un preciso momento. per esempio, se dovete scaricare un file pesante è meglio pianificarlo in orario notturno o il mattino molto presto. il comando at 1am tomorrow modificherà il prompt in at> e tutto quello che scriverete sarà eseguito all’orario prefissato. per scaricare un file passatene l’indirizzo al comando wget. premete invio per specificare un altro comando, per esempio potreste voler spostare il file in una directory specifica. una volta terminata la sequenza di comandi usate ctrl+D per salvare il job. Al momento indicato il comando at eseguirà le azioni specificate. il comando vi permette delle specifiche temporali

piuttosto complesse: oltre ad AM e pM accetta anche orari in formato HH:MM e riconosce date particolari. Quando premete ctrl+D per impostare un job, il comando vi ritorna un job iD. usate il comando atq per elencare tutti i job in coda e atrm seguito da un iD per rimuovere quel job dalla coda. Se volete ripetere un’operazione nel tempo vi converrà invece usare cron. usate questo comando per modificare il vostro file crontab:crontab -e

La prima volta che lancerete il comando vi sarà chiesto di scegliere uno degli editor di testo disponbili. ogni job è descritto da sette campi che ne definiscono l’orario, il proprietario e il comando stesso. i primi cinque specificano l’orario, il sesto il giorno della settimana, l’ultimo il comando da eseguire. potete usare il comando

crontab -l per elencare i job programmati. Le crontab di sistema si trovano in /etc/crontab mentre quelle degli utenti in /var/spool/cron.

Pianificare le operazioni

il monitoraggio di sistema di KDe può visualizzare qualsiasi genere di risorsa all’interno del computer

Usate l’utility online su http://corntab.com per impostare facilmente le crontab

070_073_LXP_146_LXF187.tut_sysadmin 73 22/09/14 01:35

Page 76: 10_ottobre2014

Tutorial Kerbal Space Program Kerbal Space Program Tutorial

74 Linux pro 146 Linux pro 146 75

Tutorial xxxxArduino Create un controller su misura per il vostro simulatore di volo spaziale preferito

Kerbal Space ProgramCreare un controller personalizzato per Kerbal non richiede affatto competenze balistiche, parola di Linux pro

La tastiera del pC non è ottimale per giocare con i simulatori di volo. Ma solo perché un gioco utilizza la tastiera non deve per forza essere una normale Qwerty. Arduino Leonardo (http://bit.ly/LXFleon) è un microcontroller che emula una normale tastiera uSB. È possibile utilizzarlo per far sì che anziché premere Esc per espellervi dalla cabina di pilotaggio, dobbiate sollevare la gabbietta che protegge l’interruttore, ruotarlo per armare il sistema e premere il pulsante rosso lampeggiante… tutta un’altra cosa. ognuno ha la propria idea di come dovrebbe essere un controller personalizzato. potreste cercare un dispositivo generalizzato che funzioni con tutti i simulatori di volo, oppure volerne uno ottimizzato per un gioco. in questo tutorial vedremo come costruire un controller pensato esclusivamente per essere utilizzato con Kerbal Space Program. Ma i principi generali sono sempre gli stessi ed è ciò che vedremo ora. partiamo da Arduino. Esistono moltissime versioni, ma noi vogliamo Leonardo. Questa è l’unica in grado di emulare una tastiera uSB. potete procurarvene uno per una ventina di euro, se questo però è il vostro primo progetto tenete presente che avrete bisogno anche di resistenze, LED e almeno una breadboard per progettare i collegamenti. Esistono moltissimi kit per iniziare disponibili online che contengono già tutto il necessario. il principio di base è che un pulsante o interruttore viene collegato ad Arduino e programmato in modo che quando viene premuto invii un segnale che corrisponde alla pressione di uno o più tasti sulla tastiera del pC. il vostro gioco si comporterà esattamente come se aveste premuto il tasto sulla vostra tastiera, e potete tenere anche la vostra tastiera collegata, quindi non è necessario replicare ogni singolo tasto, soltanto quelli che nel vostro gioco hanno le funzioni più divertenti. potreste utilizzare soltanto bottoni o interruttori per ogni funzione presente nel gioco, ma perché limitarsi quando si sta partendo da zero?

i joystick analogici non sono adatti a ogni gioco, ma sono abbastanza economici. ogni direzione può essere programmata per corrispondere a un tasto della tastiera e così le lettere WASD possono essere trasformate in un joystick a quattro direzioni. potreste addirittura rimappare il joystick al volo in modo che corrisponda a tasti diversi a seconda del contesto. per esempio con un interruttore possiamo utilizzarlo per spostarci o per ruotare la visuale.

ManopoleLe funzioni di accelerazione non devono necessariamente essere programmate come pulsanti più e meno, possiamo creare invece un controllo di rotazione. il modo più semplice di fare ciò è utilizzando un potenziometro, che è un dispositivo elettrico equivalente a un partitore di tensione resistivo variabile, in pratica una manopola come quella che si utilizza per alzare o abbassare il volume. È possibile collegare la sua uscita con un input analogico di Arduino e trasformerà la tensione in continua variazione in un numero discreto compreso tra zero e 1,023. Lo svantaggio dei potenziometri è che hanno una fine fisica. nel nostro controller, per esempio, abbiamo dei pulsanti prefissati che ci permettono di accelerare allo 0%, 20%, 80% o 100% con una semplice pressione. Se utilizzassimo un potenziometro per portare la potenza al 100% e poi premessimo il pulsante che riporta allo 0, la manopola rimarrebbe comunque girata fino al massimo e non riusciremmo ad aumentare nuovamente la potenza. una soluzione è quella di utilizzare un encoder rotativo, che può essere ruotato all’infinito in entrambe le direzioni. Sono molto economici, ma programmare Arduino in modo che capisca la direzione della rotazione è un po’ impegnativo. in più, la maggior parte di loro fa soltanto 12 passi con un intero giro, il che non li rende molto sensibili. Alla fine noi abbiamo optato per l’encoder rotativo

DebouncingGli interruttori e i bottoni sono dispositivi meccanici che soffrono di imperfezioni meccaniche. Quando chiudete un interruttore, il contatto elettrico rimbalza leggermente (questo effetto viene chiamato bouncing), chiudendo e riaprendo il circuito continuamente per qualche millisecondo finché non si assesta. Se il vostro Arduino invia un segnale di tasto premuto ogni volta che scatta il contatto, invierete svariati segnali quando invece ne volevate solo uno. La soluzione è chiamata debouncing ed è molto semplice. Tutto ciò che dovete fare è programmare Arduino in

modo che dopo aver ricevuto la pressione di un tasto per i successivi cinque millisecondi, o giù di lì, scarti le successive chiamate. Dovete fare il debounce di tutti gli interruttori e bottoni meccanici. potete trovare un programma di esempio su Arduino.cc (http://bit.ly/SB77zp). Alcune schede di espansione come la Sx1509 utilizzata nel nostro progetto, includono funzionalità di debouncing hardware. in questo caso, dovete semplicemente inviare un singolo comando per abilitare il debouncing per i pin di input desiderati quando inizializzate la scheda.

Effettuate il debounce dei vostri input via software

per eliminare il rumore elettrico

DiFFiciLE

074_079_LXP_146_LXF187.tut_Kerbal.indd 74 25/09/14 17:59

Page 77: 10_ottobre2014

Tutorial Kerbal Space Program Kerbal Space Program Tutorial

74 Linux pro 146 Linux pro 146 75

assoluto magnetico MAE3. Leggermente costoso, ma vale ogni centesimo. È molto sensibile, fluido nel movimento e facile da programmare. oltre che inviare informazioni al videogioco potrebbe essere utile anche ricevere informazioni da esso. Kerbal Space program vi permette di passare alla visualizzazione della mappa per vedere i vostri parametri orbitali, per esempio. Con il nostro controller, possiamo vedere questi dati su dei display LCD quando vogliamo. possiamo decidere di visualizzare l’altitudine o cambiare e vedere la velocità orizzontale. Anche se non avete bisogno di un display LCD, è utile sapere per esempio se il carrello di atterraggio è realmente sceso quando avete premuto il relativo pulsante. per accedere alle informazioni del gioco ovviamente avete bisogno di un gioco che vi permetta di farlo. Kerbal Space program permette di creare i propri plug-in che possono accedere praticamente a ogni informazione del gioco. il plug-in impacchetta questi dati e li spedisce attraverso una connessione seriale direttamente dentro al cavo uSB del nostro controller. Tutto questo può sembrare scoraggiante ma considerate che quando abbiamo iniziato a scrivere questo articolo non avevamo mai fatto

Programmare ArduinoArduino offre un ambiente di sviluppo (iDE) tutto suo, quindi potete scrivere programmi (chiamati sketch) e caricarli sulla rAM di Arduino. Quando viene acceso Arduino esegue automaticamente lo sketch. L’iDE utilizza il C++ come linguaggio. Anche se non avete mai programmato prima, è molto semplice iniziare a farlo. ogni sketch ha una funzione di setup che viene eseguita una volta quando Arduino si avvia, e una funzione continua che viene eseguita ripetutamente finché non viene spento Arduino. Se avete un bottone connesso al pin digitale 2, dovete inizializzarlo nella funzione setup con il comando pinMode(2, iNPUT). per monitorare lo stato dovete utilizzare il comando digitalRead(2) per leggere i dati dal pin 2. il C++ è case sensitive, quindi fate attenzione pinMode non è la stessa cosa di pinMode. L’iDE colora in automatico il codice dei comandi built-in in arancione, quindi se qualcosa non cambia colore, saprete immediatamente di averlo scritto male. Quando siete pronti per provare, cliccate l’icona a forma di freccia per compilare il vostro sketch. Questo comando converte il vostro codice in istruzioni macchina e carica il tutto su Arduino. La versione Leonardo offre soltanto 28.672 byte di memoria per contenere lo sketch. normalmente sono sufficienti, perché non c’è nessuna parte grafica che occupi memoria, ma se siete abituati a programmare, dovrete fermarvi un attimo a pensare a come ottimizzare il vostro codice. Cliccando su File D Esempi potete caricare moltissimi sketch di esempio che mostrano il funzionamento degli elementi di base come i bottoni o i LED, oltre ovviamente al codice per comunicare la pressione dei tasti al pC.

Non sostituite tutti i tasti con un bottone, a volte interruttori e manopole possono rivelarsi più adatti

nulla di elettronico o con Arduino. La maggior parte dei pezzi difficili di codice sono stati copiati da altri progetti Arduino e Kerbal. Se non volete costruire un intero controller, partite da più in basso. Anche un semplice pulsante Abort può vivacizzare la vostra esperienza di gioco.

074_079_LXP_146_LXF187.tut_Kerbal 75 22/09/14 14:47

Page 78: 10_ottobre2014

Tutorial Kerbal Space Program Kerbal Space Program Tutorial

76 Linux pro 146 Linux pro 146 77

1 Prototipo del progettonon tuffatevi subito nella creazione del vostro pannello di controllo. Vi consigliamo di creare prima una versione di cartone per decidere la grandezza e cosa volete metterci. utilizzate penne, pezzi di lego o i pulsanti e gli interruttori veri per provare layout differenti finché ne trovate uno che sia di vostro gradimento (come abbiamo fatto noi con il nostro, qui a sinistra). Vi suggeriamo anche di non rimpiazzare ogni pulsante presente nel gioco con un bottone: provate a pensare se un interruttore o un pulsante luminoso renderebbe più realistica la vostra esperienza di gioco.

La parte elettronica

Connettere interruttori e luci utilizzando la magia della saldatura

3 come saldareSaldare è principalmente una questione di mano ferma. Bloccate le parti da saldare con morsetti in modo che le parti si sovrappongano poi colateci sopra una goccia di stagno. Siate certi che la saldatura abbia avuto il tempo di raffreddarsi prima di muovere qualsiasi cosa.

4 Aggiungere cavi di collegamentoogni interruttore e luce sul vostro pannello di controllo ha bisogno di cavi di connessione. i cavi a nastro rendono il cablaggio più ordinato, ma sono più difficili da saldare e non potete spostare gli interruttori se cambiate idea sul loro posizionamento. utilizzate delle guaine termorestringenti da 2,4 mm per isolare le estremità.

2 Test di funzionalitàper muovere i primi passi con Arduino, provate a costruire un dispositivo semplice. prendete un interruttore normale e connettete una gamba a un pin GnD di Arduino e l’altra al pin digitale 2. ora utilizzate la breadboard per connettere la gamba lunga di un LED a una estremità di un resistore da 1,000-ohm. Connettete la parte libera del resistore al pin digitale 3 di Arduino e la gamba corta del LED a un altro pin GnD. ora vedete se riuscite a programmare Arduino in modo che quando l’interruttore è premuto si accenda il LED. potete trovare molti consigli e suggerimenti all’indirizzo http://playground.arduino.cc/italiano/HomePage.

capicordainfilare i fili come sono dentro ad Arduino è difficile perché le punte dei fili non sono abbastanza rigide. Avrete bisogno di punte di metallo chiamate capocorda da infilare

alla fine dei vostri fili. potete comprare cavi già pronti da 30 cm: così potrete tagliarli a metà e avere un’estremità libera da saldare ai vostri interruttori e una dotata di capocorda.

074_079_LXP_146_LXF187.tut_Kerbal 76 22/09/14 14:47

Page 79: 10_ottobre2014

Tutorial Kerbal Space Program Kerbal Space Program Tutorial

76 Linux pro 146 Linux pro 146 77

5 Espandere ArduinoArduino Leonardo ha soltanto 20 pin digitali di input/output ma a noi ne servono molti di più. per esempio, un singolo LCD può necessitare anche di sette pin separati. uno dei metodi più versatili per aumentare i propri pin è quello di utilizzare il Sx1509 (una decina di euro). utilizza due pin per comunicare con Arduino, ma offre 16 pin aggiuntivi. Se ne possono collegare fino a quattro a un singolo Arduino e condividono tutti gli stessi due pin di comunicazione. Quindi un totale di 64 pin al prezzo di due! in più l’Sx1509 avvisa Arduino quando uno dei suoi input cambia, così non è necessario monitorare costantemente ogni singolo input.

6 Saldare gli headerpotete utilizzare Sx1509 per far sì che i vostri LED lampeggino o si spengano automaticamente. Se andate su http://bit.ly/LXFsx1509 potete trovare una grande libreria open Source che rende la programmazione dell’Sx1509 estremamente semplice. invece di saldare i fili direttamente nell’Sx1509, è preferibile aggiungere un header. Gli header possono essere comprati in strisce da tagliare alle dimensioni desiderate. ogni pin va saldato con il contatto sottostante.

7 Testare tuttoutilizzate la breadboard per testare ogni pezzo quando lo aggiungete. Questo vi garantirà di non aver commesso errori nel collegare i cavi e vi aiuta a imparare la programmazione di Arduino in modo effettivamente incrementale.

8 connettere l’LcDun semplice display LCD 16x2 costa molto poco, ma l’interfaccia di default necessita di molti pin per essere controllata. La scheda SerLCD (www.sparkfun.com) utilizza un cavo per comunicare con Arduino (e altri due rispettivamente per la messa a terra e l’alimentazione) tramite la sua interfaccia di comunicazione seriale. potete comprare anche schede con il SerLCD già installato ma aggiungerlo è molto semplice. Si salda direttamente nel circuito stampato dell’LCD utilizzando i pin di connessione esistenti, e offre un potenziometro regolabile con un cacciavite che vi permette di regolare il contrasto. La comunicazione seriale è diversa dal bus i2C che utilizzano le schede di espansione Sx1509, ma è bello avere entrambi nello stesso progetto. Anche per questa scheda è disponibile molta documentazione e svariate librerie software online, reperibili all’indirizzo http://bit.ly/LXFserlcd.

La legge degli OhmSe connettete un LED direttamente a un pin da 5V di Arduino si accenderà al massimo dell’intensità e potrebbe anche rompersi. Questo perché i LED sono semiconduttori e sono praticamente privi di resistenza. La legge degli ohm dice che il Voltaggio = Corrente x resistenza, il che significa che C = V / r. Quindi se r è molto bassa, la corrente diventa molto alta. per evitare che ciò accada, inserite sempre un resistore in serie con i vostri LED. un LED verde ha un voltaggio interno di circa 2.2V. per offrirgli una corrente di 10 milliampere dovrete utilizzare un resistore da 280 ohm, perché (5 - 2.2) / 0.01 = 280.

074_079_LXP_146_LXF187.tut_Kerbal 77 22/09/14 14:47

Page 80: 10_ottobre2014

Tutorial Kerbal Space Program Kerbal Space Program Tutorial

78 Linux pro 146 Linux pro 146 79

9 La base della scatolaCreate il retro e la base della scatola con un pannello di MDF largo 6 mm. perché è semplice da tagliare e forare, e offre una base isolante per il materiale elettrico. Tagliate dei pezzi inclinati per i lati da un pannello di MDF da 20 mm, fatene 2 in più in modo da inserire due sostegni all’interno della scatola per evitare che il pannello frontale possa flettersi. Avvitate il tutto.

10 il pannello frontaleil pannello frontale è un foglio di alluminio da 3 mm. potete trovarlo facilmente già tagliato alle dimensioni che desiderate su eBay. Se cercate qualcosa di più semplice da forare ma che offra un aspetto simile potete provare con l’ACM (Aluminium Composite Material), che sostanzialmente è un foglio di plastica ricoperto da due fogli di alluminio. utilizzate un CAD o un programma di disegno, come open office o FreeCAD, per determinare l’esatta posizione di tutti gli interruttori e bottoni, assicuratevi di segnare il centro di ogni foro. Stampate l’immagine specchiata e incollatela al retro del pannello frontale. Questo vi permetterà di forare dal retro lasciando la carta incollata, isolando così la superficie interna in metallo.

11 ForareLa maggior parte degli interruttori e pulsanti necessita di un foro da 9 mm. utilizzate un punteruolo (o una vite) e un martello per segnare con delicatezza il centro di ogni foro. Assicuratevi che il pannello sia fermamente bloccato in posizione e fate un primo foro pilota da 3 mm. passate poi alla punta da 9 mm e allargate il buco.

12 Montare il pannello frontaleA questo punto, pulite tutti i residui dal pannello (dato che una volta montati tutti gli interruttori sarà molto più difficile pulirlo). Montate il pannello sulla scatola e aggiungete tutti gli elementi. Lasciate staccato il posteriore in legno in modo da poter avere accesso.

La scatola

Creare un pannello di controllo degno del programma Apollo

Energia Arduino Leonardo ha soltanto due pin per la terra e uno per +5V quindi non potete connettere tutto direttamente. una soluzione semplice è quella di utilizzare una striscia di Veroboard e saldarci sopra alcuni header. potete collegarla al pin GnD di Arduino e l’intera Veroboard farà da messa a terra.

074_079_LXP_146_LXF187.tut_Kerbal 78 22/09/14 14:47

Page 81: 10_ottobre2014

Tutorial Kerbal Space Program Kerbal Space Program Tutorial

78 Linux pro 146 Linux pro 146 79

13 Utilizzare i diodii diodi sono dei dispositivi semiconduttori che funzionano come valvole a senso unico per l’elettricità. possono essere utilizzati per creare degli encoder che permettono di risparmiare qualche pin sul vostro Arduino. Supponete di avere una ghiera rotante a quattro posizioni. normalmente, ogni posizione dovrebbe avere il proprio input (e quindi il proprio pin su Arduino), ma potete farlo con soltanto due pin. Cablando la posizione 2 a un pin e la posizione 4 all’altro. Connettete la posizione tre a entrambi i pin, utilizzando i diodi in modo che la posizione 2 e 4 rimangano elettricamente isolate. Quando impostate la ghiera sulla posizione 1 nessun pin riceverà il segnale (perché la posizione 1 non è connessa). Quando la spostate sul 2, soltanto il primo pin sarà acceso. Sul 3 entrambi lo saranno. Spostando infine sul 4 soltanto il secondo pin sarà acceso. potete estendere questo concetto a una ghiera a sei posizioni in modo da utilizzare soltanto tre pin di Arduino e via di seguito.

14 Tastiera a matriceSe avete molti bottoni che verranno premuti uno alla volta, collegateli come una griglia in modo che ogni riga e colonna abbia un connettore comune. il Sx1509 controllerà ogni riga e colonna per trovare quali bottoni vengono premuti. Questo è un altro modo per salvare molti pin.

14 il test finaleQuando si inizia a lavorare con Arduino può essere difficile capire quali errori sono dovuti all’hardware e quali al software, per questo è importante procedere per piccoli passi. Vi suggeriamo di partire con un singolo interruttore. programmate Arduino per capire quando è chiuso e accendete un LED per verificare il funzionamento. ripetete questa procedura per ogni interruttore e bottone connesso direttamente ad Arduino. Vi consigliamo di utilizzare le librerie delle schede Sx1509 per testare ogni componente connesso a esse. Quando avete la certezza che i pulsanti e interruttori funzionano, provate a mostrare un messaggio sul monitor LCD, e via di seguito. Quando vi capiterà una qualche anomalia (e sicuramente capiterà), non intimoritevi, rimuovete il pannello posteriore e controllate il voltaggio nei vari pin con un multimetro digitale. Controllate bene che non ci siano corto-circuiti dovuti a saldature deboli. LXP

15 Mettere insieme il tuttoMontate Arduino sul pannello posteriore e collegate il tutto. Segnatevi da qualche parte cosa è collegato dove e non dimenticatevi di scrivervi a cosa corrispondono i colori dei cavi, in questo modo se qualcosa non dovesse funzionare sarà più semplice trovare il problema.

correnteArduino può fornire un massimo di 200mA nell’uscita 5V e 50mA in quella 3.3V. Se il vostro dispositivo ha molti LED supererete in fretta questi limiti e il vostro Arduino inizierà ad avere problemi di funzionamento. un modulo di alimentazione per breadboard da pochi euro vi offrirà altri 500mA. utilizzatelo per alimentare i vostri componenti e lasciate che Arduino utilizzi il cavo uSB.

074_079_LXP_146_LXF187.tut_Kerbal 79 22/09/14 14:47

Page 82: 10_ottobre2014

80 Linux pro 146

W ikipedia è uno dei siti più visitati sul Web. in termini semplici, un wiki è un sito Web modificabile. Diversamente dai tipici siti Web

creati con strumenti come Wordpress o Drupal che vi richiedono di accedere a un sistema CMS prima di effettuare modifiche, un wiki è più accessibile: vi basta schiacciare il pulsante Modifica. Wikipedia gira sul software open Source MediaWiki, che potete installare sul vostro server Web per mettere in piedi un wiki modificabile da una community limitata di utenti, come la vostra università o la biblioteca locale, o anche tra i vostri compagni di classe. Anche se potete usarlo per mettere in piedi il vostro sito Web personale o un sito di news che richiede modifiche frequenti, MediaWiki dà il meglio di sé quando usato per la scrittura condivisa. potete installare MediaWiki con l’installer Web-based, facile da navigare; per usarlo però avrete bisogno di alcuni componenti nel vostro server Web. nel tutorial le operazioni saranno fatte prendendo ubuntu Server come base; potete anche lanciare il server Web su un raspberry pi (vedete il box sotto).

Preparare il sistemaCome al solito, il primo passo da fare è assegnare un indirizzo ip statico alla macchina che fungerà da server Web. il modo più facile per farlo è tramite la pagina di amministrazione del vostro router. La maggior parte dei router identificheranno l’installazione del Web server tramite l’indirizzo MAC della scheda Ethernet o wireless e vi permetteranno di impostarlo a un valore fisso. La procedura esatta per farlo varia da router a router. per gli scopi di questo tutorial viene assunto che la macchina abbia un ip uguale a 192.168.1.131. per servire le pagine Wiki, MediaWiki richiede un server Web come Apache. potete installarlo con le sue dipendenze con il comandosudo apt-get install apache2

Dovrete quindi aggiungere il supporto per il linguaggio pHp in cui è scritto MediaWiki:

sudo apt-get install libapache2-mod-php5 php-apcCon questo installerete pHp in Apache e anche il pacchetto Alternate pHp Cache (apc), un’estensione di pHp pensata per migliorare le prestazioni dei programmi. MediaWiki necessita altresì di un database per memorizzare i dati, inclusi gli account utente e le pagine che creerete. userete MySQL allo scopo:sudo apt-get install mysql-server php5-mysql

Mentre vengono installati i pacchetti MySQL vi verrà chiesta una password per l’utente admin. Tenete traccia di questa password poiché vi servirà più avanti per creare il database di MediaWiki. Dovrete altresì installare una libreria per la modifica delle immagini che servirà a MediaWiki per creare le anteprime e trasformare le immagini: per la sua versatilità la scelta ricade su imageMagick che potete installare con facilità:sudo apt-get install imagemagick

una volta terminata l’installazione di tutti i componenti riavviate Apache consudo service apache2 restart

per provare il tutto aprite un browser nella rete locale e fatelo puntare all’indirizzo dell’ip prefissato: se tutto va bene dovreste vedere una pagina con il titolo Apache Ubuntu Default Page.

Installare MediaWikiCon i componenti fondamentali al posto giusto, potete cominciare l’installazione di MediaWiki. iniziate andando sul sito www.mediawiki.org e scaricando l’ultima versione del software, disponibile come archivio compresso nel formato .tar.gz. una volta scaricato l’archivio dovrete estrarlo e metterlo al posto giusto nella directory del Web server. il comando:sudo tar xvzf mediawiki-1.23.3.tar.gz -C /var/www/htmlsudo mv /var/www/html/mediawiki-1.23.3

/var/www/html/wikidecomprimerà i file mettendoli nella directory wiki nella

InterMeDIo

Tutorial xxxxMediaWiki installate il più popolare software di wiki sul vostro server

Un server personalizzatoSe dovete collaborare ai contenuti con un gruppo di persone, MediaWiki può essere lo strumento perfetto: ecco come cominciare

Wiki su raspberry Pipotete usare una raspberry pi per lanciare MediaWiki. Accendete la pi, assegnatele un indirizzo e fate il login via SSH. Assumendo che stiate usando raspbian, aggiornate gli archivi con sudo apt-get update. potete quindi seguire le istruzioni del tutorial per installare MediaWiki, oppure installarlo dagli archivi di raspbian. il comando sudo apt-get install mediawiki installerà tutti i componenti richiesti per il server Web assieme allo stesso MediaWiki. Se

installate MediaWiki dagli archivi, dovrete aprire il suo file di configurazione di Apache (/etc/mediawiki/apache.confz) in un editor di testo e decommentare le righe #Alias /mediawiki /var/lib/mediawiki togliendo il # iniziale. Salvate il file e riavviate Apache con sudo apachectl restart. ora se l’indirizzo del pi è 192.168.1.131, aprite un browser e puntatelo su http://192.168.1.131/mediawiki, così da accedere al processo di setup descritto nel tutorial.

Il leggero wiki tiddlyWeb funziona a meraviglia sulla fantastica scheda raspberry Pi

080_083_LXP_146_LXF187.tut_wiki 80 22/09/14 15:22

Page 83: 10_ottobre2014

Linux pro 146 81

MediaWiki Tutorial

directory di default del Web server (la directory deve essere già esistente!). Dopo l’estrazione dovrete dare i permessi al server Web su tutta la directory con:sudo chown -r www-data:www-data /var/www/wiki

ora riavviate Apache consudo service apache2 restart

Quindi lanciate un browser da qualsiasi computer della rete e navigate all’indirizzo http://192.168.1.131/wiki. Se tutto è stato fatto correttamente vi troverete di fronte l’installer di MediaWiki. L’installer da Web per prima cosa

si assicurerà che il vostro computer abbia tutti i componenti richiesti. Se alcune dipendenze mancano, potete installarle con apt-get da riga di comando. Quindi vi verranno chieste le credenziali per il vostro database MySQL. inserite la password specificata sopra. potete scegliere le opzioni di default per il motore del database. inserite quindi il nome del wiki e i dettagli per l’account di amministrazione: sono tutte le informazioni di base che l’installer necessità per creare il wiki. potete chiedergli di saltare le restanti domande, anche se è consigliabile terminare la procedura.

estendere MediaWikiun’installazione standard di MediaWiki arriva completa di diverse feature, ma potete renderla ancora più ricca con estensioni e plugin. Queste estensioni possono essere usate per aggiungere caratteristiche come la conversione di articoli in pDF, aggiungere un CApTCHA alla pagina di login, un player integrato per i file Mp3 e via dicendo. il sito MediaWiki ospita più di 2.000 estensioni con vario grado di attività. potete usare la matrice delle estensioni per vedere i raggruppamenti e il supporto riguardo le versioni di MediaWiki (http://www.mediawiki.org/wiki/extension_Matrix), che elenca anche le 500 create più di recente. per installare un’estensione, visitate la relativa pagina dove troverete un link per lo scaricamento che dovrete copiare nella sottodirectory extensions del wiki. La pagina mostrerà anche la riga che

dovrete aggiungere al file LocalSettings.php per caricare l’estensione. ogni pagina dell’estensione ha dettagli riguardo il suo uso. Alcune estensioni (come Disqus) sono disponibili tramite un Wikicode personalizzato, mentre altre come Submission upload saranno elencate tra le pagine Speciali. Alcune tra le più interessanti sono l’estensione FlashMp3 che integra un player Mp3 per gli audio e la VideoFlash per visualizzare video da YouTube, DailyMotion e altri servizi. per gestire le discussioni c’è l’estensione WikiChat che aggiunge una chatroom a ogni articolo e ArticleComments che aggiunge un modulo inline per l’aggiunta di commenti.

1 Create un accountuna volta creato un account potete definirne la modalità di visualizzazione nel wiki e tener traccia delle modifiche e addirittura delle modifiche fatte da altri ai suoi articoli. per creare un account, cliccate su Crea account in alto a destra su ogni pagina e inserite i dettagli per il login.

3 Modificare l’esteticapotete modificare altre impostazioni dalla pagina Preferenze (come la vostra password) selezionando la scheda Profilo utente. Andate alla scheda Aspetto per modificare il look&feel del wiki. potete scegliere una skin diversa e personalizzare alcuni elementi come i link, per adattarli alle vostre preferenze.

2 Impostare le opzioniCreato un account accederete automaticamente a MediaWiki. La pagina di benvenuto vi porterà alle preferenze che potrete usare per le personalizzazioni del vostro wiki. La sezione Preferenze è in diverse schede: passate alla scheda Casella di Modifica per personalizzare il box di modifica.

Passo passo Aggiungere un utente

Potete installare e abilitare diverse estensioni durante il setup

di MediaWiki

080_083_LXP_146_LXF187.tut_wiki 81 22/09/14 15:22

Page 84: 10_ottobre2014

82 Linux pro 146

Politica di modificaSe decidete di continuare dovrete selezionare un profilo utente. Le quattro opzioni per questo campo determinano la politica di modifica per il wiki. per esempio, la predefinita Wiki aperto permette a chiunque di modificare mentre la Creazione account necessaria limita le modifiche ai soli utenti registrati. Ci sono altre opzioni per limitare ulteriormente i diritti di modifica. per le opzioni seguenti potete usare tranquillamente le opzioni di default a meno che non abbiate esigenze particolari. Queste coinvolgono la visualizzazione di una licenza di copyright in fondo a ogni pagina, Se avete configurato il server Web per inviare email, potete impostarne qui le credenziali. L’installer vi mostrerà un elenco di estensioni (vedete il box estendere MediaWiki) che potete attivare per aggiungere

caratteristiche al wiki. Altre cose che potreste voler attivare sono gli upload dei file e gli instant commons: il primo vi permetterà di caricare file nel wiki, mentre il secondo consentirà di usare i media del sito Wikimedia Commons (http://commons.wikimedia.org). infine, completate il setup abilitando la cache per gli oggetti pHp per migliorare le performance del wiki. Questo richiede il modulo ApC che avete installato in precedenza assieme ad Apache. Fatto. L’installer MediaWiki creerà i dati necessari alla configurazione in un file LocalSettings.php che vi chiederà di scaricare o copiare. una volta scaricato dovrete spostarlo nella directory base dell’installazione (in questo caso /var/www/html/wiki: fatto questo, ricaricate l’indirizzo http://192.168.1.131/wiki nel vostro browser e cominciate a scrivere!

1 Pagine Specialinella sidebar a sinistra trovate una sezione contenente alcuni link. Pagine Speciali vi porta a una pagina che contiene un elenco di collegamenti ad altre pagine del wiki. Da qui potete vedere le pagine che non sono state modificate da lungo tempo, o che hanno avuto poche revisioni, quelle non categorizzate e via dicendo.

Passo passo Usare MediaWiki

2 Pagine utenteogni utente registrato in MediaWiki ha una pagina utente. per vedere la vostra pagina utente cliccate sul nome utente nel menu opzioni. Se la pagina non esiste vi verrà presentata la form di modifica per crearla: fatto questo potete salvarla come ogni altro articolo e addirittura caricare la foto del vostro utente.

3 Cercare gli articoliLe pagine individuali in un sito MediaWiki sono definite articoli. potete usare la casella di ricerca nell’angolo in alto a destra di qualsiasi pagina wiki per cercare articoli specifici. inserendo del testo, MediaWiki vi mostrerà in tempo reale gli articoli corrispondenti. un articolo corrisponde se contiene tutte le parole della vostra ricerca.

4 Pagine Discussione e Cronologiaogni articolo ha una pagina Discussione associata, dove i visitatori possono aggiungere commenti. per visitare una pagina Discussione di un articolo, cliccate la scheda corrispondente. MediaWiki tiene anche traccia di ogni modifica alla pagina: cliccando la scheda Cronologia vedrete chi ha modificato l’articolo, quando e quali modifiche sono state fatte.

Tutorial MediaWiki

080_083_LXP_146_LXF187.tut_wiki 82 22/09/14 15:22

Page 85: 10_ottobre2014

Linux pro 146 83

toolbox di octave

5 Modifiche successiveper modificare un articolo esistente cliccate sulla scheda Modifica nella pagina. La pagina di modifica per un articolo esistente è leggermente diversa da quella per un nuovo articolo. oltre all’opzione normale di anteprima, mostra modifiche e salvataggio pagina, noterete una checkbox per indicare se è una modifica minore.

6 Annullare le modifichepotreste voler annullare le modifiche di un articolo. per farlo cliccate su Cronologia per vedere un elenco di modifiche alla pagina assieme alle informazioni sull’autore. in fondo alla riga il link (annulla) vi permetterà di annullare quella specifica modifica. LXP

1 Cercatelonon troverete un pulsante Crea in un articolo in MediaWiki. per creare un nuovo articolo dovrete usare la casella di ricerca per cercarlo. Se non esiste, MediaWiki vi informerà e vi presenterà l’opzione di crearlo. Cliccate sul link mostrato per aprire la pagina di modifica.

Passo passo Creare un articolo

2 Inserite il contenutoChe stiate creando un articolo o modificandone uno esistente, la barra di modifica vi tornerà molto utile. potete usarla per operazioni comuni sul testo come l’aggiunta di corsivi. La barra contiene anche pulsanti per facilitare l’inserimento di media e link esterni.

3 oggettouna volta aggiunto il contenuto principale dell’articolo, andate a fondo pagina. Troverete un campo oggetto dove inserire una breve descrizione delle modifiche. Come vi aspettereste, cliccando Salva la pagina l’articolo sarà salvato, e Mostra modifiche evidenzierà le differenze tra le vostre modifiche e l’ultima versione della pagina.

4 Spostare un articoloun aspetto importante nella manutenzione di un wiki è assicurarsi che gli articoli siano organizzati correttamente. A volte i collaboratori usano nomi non appropriati per un articolo. per rinominarlo, cliccate su Sposta articolo (freccetta in fianco alla casella di ricerca) nella pagina, quindi inserite il nuovo nome e usate la casella Motivo per specificare la ragione dietro la scelta di spostamento.

MediaWiki TutorialTutorial MediaWiki

080_083_LXP_146_LXF187.tut_wiki 83 22/09/14 15:22

Page 86: 10_ottobre2014

84 Linux pro 146

Costruire il proprio CMSodiate Wordpress, Drupal odia voi e tutti odiano il pHp. Cosa potete fare? Lo staff di Linux pro vi aiuterà ad alleviare il vostro mal di CMS

L ’ecosistema dei CMS (Content Management System) è dominato da Drupal e WordPress. Entrambi sono grandi progetti pHp/*SQL; Wordpress è nato come

semplice piattaforma per costruire blog, ma è cresciuto fino a diventare una giungla contenente codice molto datato assieme a codice più moderno. Combinando il tutto con temi e plug-in di ogni genere vi permette di fare praticamente qualsiasi cosa riusciate a immaginare. non esiste un framework a comandare il tutto e quindi tutte queste estensioni sono costruite ad hoc, spesso riscrivendo funzioni fondamentali di Wordpress stesso per raggiungere i loro scopi. Corre voce che l’unico motivo per cui tutto il codice continua a funzionare sia un potente rito voodoo, con possibili sacrifici umani, svolto quotidianamente nel quartier generale di Wordpress. Drupal invece non permette a nessuno di toccare le sue funzioni fondamentali e per questo è stato progettato tenendo a mente l’estensibilità. possiede degli schemi ben definiti attraverso i quali le personalizzazioni possono essere implementate come moduli. Tutto questo lo rende estremamente affascinante agli occhi degli sviluppatori, perciò potete trovare un grande numero di moduli nell’universo Drupal. purtroppo però per tutti i non sviluppatori costruire qualcosa di più di un sito rudimentale con Drupal può risultare molto oneroso in termini di tempo e a volte frustrante.

Capire i frameworkAl fine di dividere la progettazione, i contenuti e il codice sottostante, l’umanità ha inventato i framework. Questi aiutano gli sviluppatori meno esperti a utilizzare applicazioni modulari e template estensibili senza combattere per ore con pHp e CSS per riuscire a raggiungere i propri obiettivi. uno di questi framework è Django. Django segue il design model-view-controller (MVC), nel quale all’interno dell’applicazione l’input (controller) e l’output (view) sono ben distinti e separati. il model gestisce tutto ciò che sta nel mezzo: i dati e la logica connessi alle istruzioni ricevute dal controller vengono processate dal model e poi inviate alla view. in questo articolo utilizzeremo Django per creare un piccolo sito Web che si appoggia su di un CMS. Esistono moltissimi pacchetti CMS tra cui scegliere (come potete vedere per esempio all’indirizzo www.djangopackages.com/grids/g/cms) ma noi andremo a utilizzare uno dei più diffusi, quello chiamato Django CMS. Vi consigliamo di isolare l’esecuzione di Django CMS con Virtualenv onde evitare che le dipendenze di python possano andare in conflitto con altre cose presenti nel vostro sistema. per fare ciò la prima cosa da fare è installare Pip tramite il vostro gestore di pacchetti per poi installare il pacchetto virtualenv (come root):# pip install virtualenv

ora creiamo un ambiente virtuale nella nostra directory home, attiviamolo e installiamo Django CMS così:

$ virtualenv ~/env$ source env/bin/active(env) $ pip install djangocms-installer

Se doveste uscire dall’ambiente virtuale (con grazia tramite deactivate o in altro modo), potete rientrarci facilmente rilanciando source /env/bin/activate. non c’è bisogno di reinizializzare il tutto. L’installazione di django CMS è molto semplice. i progetti vengono salvati in sottodirectory e il tutto può essere infilato in una directory padre ~/django/ per mantenere le cose in ordine:(env) $ djangocms -p ~/django mia_demo

Questo comando vi chiederà moltissime informazioni su versioni, lingue, supporto e via di seguito (potete tranquillamente mantenere tutto di default essendo una semplice demo, ma impostate come lingua it (dato che non c’è un default) e dite YES a Load a starting page). Le tabelle richieste verranno create e vi verrà chiesto di impostare un utente amministratore. una volta concluso il processo, potete lanciare il vostro CMS in questo modo:(env) $ cd django(env) $ python manage.py runserver

A questo punto, aprendo un browser e andando all’indirizzo http://localhost:8000 dovreste vedere il vostro sito Web demo. ora, se andate all’indirizzo http://localhost:8000?edit, potrete fare login con l’utente che avete creato durante l’installazione e iniziare a personalizzare il vostro sito Web attraverso la sua interfaccia grafica. potete aggiungere elementi cliccando sul pulsante Struttura in alto e poi sulle lineette in alto a destra nella pagina. Da qui potete aggiungere diverse cose, il plug-in di Google Map per esempio è molto carino.

Creare un blogDjango CMS 3.0 è stato rilasciato in aprile. una delle funzionalità principale di questa release è il potente front-end che permette di manipolare tutti gli elementi e plug-in della vostra pagina direttamente dalla vista amministrativa, senza scrivere nemmeno una riga di codice. Questo rende la costruzione e la manutenzione del vostro sito un gioco da ragazzi, ma tenete presente che è ancora in fase di sviluppo e a volte fa un po’ di confusione. per esempio a volte è necessario allargare il pannello di sinistra per riuscire a visualizzare tutte le azioni. Durante la creazione del nostro blog potrebbero presentarsi anche degli errori tipo “il menu tal dei tali cannot be loaded”, solitamente è sufficiente aggiornare la pagina per risolvere il problema, è possibile comunque che questi errori siano stati risolti prima della pubblicazione di questo articolo. per prima cosa cambiamo l’indirizzo del sito da example.com a localhost:8000 perché alcune pagine utilizzano i link assoluti; per farlo basta cliccare sul nome, su amministrazione e dal pannello amministrativo modificare la sezione siti. i progetti in Django hanno due file

Django

Tipun altro CMS basato su Django è l’acclamato Mezzanine. Spendete qualche minuto per dare un’occhiata a http://mezzanine.jupo.org/ (in inglese).

084_087_LXP_146_LXF187.code_django 84 22/09/14 01:47

Page 87: 10_ottobre2014

Linux pro 146 85

DevStack Tutorial

importanti di cui parleremo in questo tutorial: settings.py e urls.py. il primo si occupa di diverse configurazioni di basso livello come i percorsi del progetto, eventuali applicazioni aggiuntive, quale engine di database utilizzare. Quando si aggiungono oggetti a questo file è necessario ricostruire il database del progetto affinché vengano recepiti. Spesso queste applicazioni aggiuntive hanno un proprio database che necessita di essere migrato. Fortunatamente, l’utility South si occupa di tutto questo per noi. il file urls.py contiene un elenco di espressioni regolari che dicono a Django cosa fare con certi modelli di indirizzi. per esempio, in questo tutorial diremo a Django di invocare il blog Zinnia quando viene aggiunto /Weblog/ all’indirizzo del server. Django CMS consente un’integrazione perfetta (o quasi) delle applicazioni Django nel vostro sito. per dimostrarlo vediamo di caricare l’applicazione Zinnia. interrompiamo il Webserver premendo Ctrl+C, e installiamo il modulo python Zinnia oltre che l’apphook che permette al CMS e al blog di comunicare: (env) $ pip install django-blog-zinnia cmsplugin_zinnia

ora dobbiamo dire a Django di utilizzare le nostre app, modificando la sezione INSTALLED_APPS del nostro file ~/django/mia_demo/settings.py: ‘zinnia’, ‘cmsplugin_zinnia’, ‘tagging’, ‘django.contrib.comments’

Già che abbiamo il file settings.py aperto aggiungiamo la riga che segue per evitare che Zinnia tenti di inviarvi una mail ogni volta che qualcuno posta un commento nel nostro blog:ZinniA_MAiL_CoMMEnT_AuTHorS=False

poi, aggiungiamo le seguenti righe all’inizio della definizione degli urlpattern nel file ~/django/mia_demo/urls.py: url(r’^Weblog/’, include(‘zinnia.urls’)), url(r’^commenti/’, include(‘django.contrib.comments.urls’)),

A questo punto dobbiamo solo registrare le nuove applicazioni nel database Django con:(env) $ ./manage.py syncdb(env) $ ./manage.py migrate

ora andando all’indirizzo http://localhost:8000/Weblog possiamo vedere il nostro blog Zinnia. La finalità dell’apphook cmsplugin-zinnia è di darci la possibilità di visualizzare contenuti del blog in altri posti del nostro sito. Date un’occhiata alla guida passo passo per vedere come fare. ora che abbiamo un posto per farci sentire, perché non aggiungere una galleria per i nostri disegni e le nostre foto? L’applicazione Imagestore è la più utilizzata per farlo. installiamola semplicemente con:(env) $ pip install imagestore

Aggiungiamo quanto segue nella sezione INSTALLED_APPS del file ~/django/mia_demo/settings.py: ... ‘imagestore’, ‘sorl.thumbnail’, ‘imagestore.imagestore_cms’, ...

Mappiamo gli url nel file ~/django/mia_demo/urls.py:url(r‘^galleria/’,include(‘imagestore.

urls’,namespace=‘imagestore’)),...

e lanciamo:(env) $ ./manage.py syncdb --migrate

Questo comando aggiorna il database. il processo potrebbe

scatenare un errore nella migrazione del database South mentre cerca di importare le impostazioni dei permessi, ma lanciando nuovamente il comando la migrazione dovrebbe andare a buon fine. ora aggiungiamo una nuova pagina chiamata Galleria. La pagina dovrebbe collegarsi direttamente con imagestore e cliccandoci si vedranno le proprie librerie, sempre se ce ne sono. possiamo aggiungere gallerie dal pannello di amministrazione sulla sinistra. Da qui è possibile aggiungere gallerie, caricare le immagini e una volta fatto ciò sarà possibile incorporarle nelle varie pagine, utilizzando le nuove voci di menu Album e Album as carousel.

Pronti, attenti, nginxok, adesso abbiamo il nostro CMS completo di blog e galleria, anche se molto semplice. portarlo online dipende principalmente dalla configurazione del proprio server, in questa sede cercheremo di illustrare una configurazione basilare per il Web server nginx. Andremo a utilizzare il pacchetto uWSGi per creare un’interfaccia tra Django e nginx, e, soltanto a scopo di test, continueremo a lavorare nel nostro ambiente virtuale. per prima cosa dobbiamo raccogliere tutti i nostri file statici in modo che il server Web possa trovarli:(env) $ cd ~/django(env) $ ./manage.py collectstatic

ora installiamo il pacchetto uWSGI e attiviamolo per testare la sua capacità di comunicare con Django: (env) $ pip install uwsgi(env) $ uwsgi --http :8000 --module miosito.wsgi

Dobbiamo dire anche a uWSGi come è configurato nginx,

Le persone sfuocate temono che la Googlecar abbia rubato loro l’anima!

Django

Tippotete trovare una guida più esauriente per uWSGi e Nginx nel sito Web ufficiale di uWSGi: http://bit.ly/uWSGINginx (in inglese).

È facilissimo includere video da YouTube nel proprio sito. Convincere i signori di Nvidia a condividere le specifiche delle loro schede lo è un po’ meno

084_087_LXP_146_LXF187.code_django 85 22/09/14 01:47

Page 88: 10_ottobre2014

86 Linux pro 146

quindi mettiamo una copia dei parametri all’interno della directory del nostro progetto:(env) $ cp /etc/nginx/uwsgi_params ~/django/mia_demo

per configurare nginx per il nostro sito demo dobbiamo creare il file /etc/nginx/sites-available/miosito_nginx.conf con il contenuto che segue, ovviamente sostituendo ‘user’ con il nome utente appropriato:upstream django { server 127.0.0.1:8001;}# configurazione del serverserver { listen 8000; server_name 127.0.0.1; #da sostituire con l’indirizzo ip della propria macchina charset utf-8; client_max_body_size 75M; location /media { alias /home/user/django/mia_demo/

media; } location /static { alias /home/user/django/mia_demo/

static; } location / { uwsgi_pass django; include uwsgi_params; }}

facciamo un link simbolico di questo file in /etc/nginx/sites-enabled e assicuriamoci che sia presente nel file nginx.conf e lanciamo Nginx. Fatto ciò spostiamoci nella directory di ~/django per lanciare uWSGi:(env) $ uwsgi --socket :8001 --module miosito.wsgi

Se tutto è andato come dovrebbe il nostro Django sarà disponibile all’indirizzo http://localhost:8000 solo che ora, invece di parlare direttamente con l’applicazione python, comunichiamo con un server Web, il quale vi accede tramite la porta 8001. È buona norma utilizzare un socket unix piuttosto di uno TCp per fare da gateway, perché è più veloce, quindi modifichiamo la riga server nel blocco upstream {} del file /etc/nginx/sites_available/miosito_nginx.conf con:server unix:///home/user/django/miosito.sock;

E lanciamo nuovamente uWSGi con:uwsgi --chmod-socket=666 --socket miosito.sock --module

miosito.wsgi Tutto dovrebbe funzionare come prima, ma questa volta i messaggi dovrebbero essere più veloci data la maggiore efficienza. Dato che nginx di default non è autorizzato a parlare ai socket è necessario definire i permessi. in una configurazione più seria uWSGi verrebbe vincolato a un account di sistema con i dovuti permessi, probabilmente nello stesso gruppo del proprietario del demone nginx. Qui si conclude la lezione di oggi. Vi auguriamo un grande futuro nel mondo dei siti Web modulari ed estensibili.

L’app Zinnia è molto carina anche appena installata

Un esempio famoso, il sito

della Mercedes è fatto con

Django CMS

Django

084_087_LXP_146_LXF187.code_django 86 22/09/14 01:47

Page 89: 10_ottobre2014

Linux pro 146 87

DevStack Tutorial

Toolbox di Octave

1 Avviare Zinniauna volta riavviato il server Web comparirà un menu Zinnia nella barra in alto. Cliccando su New entry apparirà un pannello sulla sinistra con diversi elementi. Da qui è possibile pubblicare un post nel blog.

Passo passo Creare un blog con Django e Zinnia

2 Creare una paginaCreiamo una nuova pagina per il nostro blog cliccando su Pagina D Aggiungi Pagina D Nuova Pagina. La chiamiamo ‘blog’, o se preferite datele un nome più creativo. Lo Slug è il nome che verrà utilizzato nell’urL per raggiungere la pagina e si compila da solo in base al titolo. Questo significa che il vostro blog può essere indicizzato con facilità dai robot e dagli spider dei motori di ricerca. Clicchiamo su Salva per creare la pagina.

3 Creare il layoutSelezioniamo la vista struttura nella barra in alto e clicchiamo sul menu a destra della barra nera in centro alla pagina. Clicchiamo su Multi colonne, impostiamo a 2 il numero di colonne e mettiamo una dimensione, in questa schermata è possibile impostare una sola dimensione per tutte le colonne, noi abbiamo messo 25% e poi abbiamo modificato la prima colonna impostandola a 50%.

4 Definiamo un elenco di postora clicchiamo sulle opzioni a destra della prima colonna e selezioniamo Ultimi articoli per aggiungere il plug-in. Modifichiamo le impostazioni in modo che mostrino soltanto l’ultimo inserimento (impostando number of entries: a 1) e come template selezioniamo Entry detailed. Dopo di ciò aggiungiamo un’altra volta lo stesso plug-in ma questa volta impostiamo come offset 1 e come template Entry list (Default). in questo modo verranno visualizzati soltanto i titoli dei post e il primo verrà saltato.

5 Aggiungiamo delle funzionalitàora aggiungiamo alla colonna di destra Tag Cloud, Calendar Entries e Administration tools. Questo dovrebbe essere abbastanza per darci una vista pulita ma funzionale dell’applicazione Zinnia completamente integrata nel CMS Django. il tool di amministrazione ci permetterà di fare login, creare nuovi post, moderare i commenti e svolgete qualunque altra attività amministrativa.

6 Iniziamo a bloggareEcco una bella visualizzazione dei nostri contenuti, in questo caso un modello Lego di un reattore nucleare. Mano a mano che sviluppiamo il nostro sito possiamo aggiungere personalizzazioni e nuovi widget ai nostri contenuti preferiti. il vero divertimento inizia quando si cominciano a scrivere i propri template, ma è comunque impressionante vedere quali risultati possono essere raggiunti senza scrivere una singola riga di codice. LXP

Django

084_087_LXP_146_LXF187.code_django 87 22/09/14 01:47

Page 90: 10_ottobre2014

88 Linux pro 146

Programmare con la shellun’introduzione alla programmazione della shell è un modo per far lavorare il computer comodamente al posto vostro!

Non fatevi spaventare dal nome. La programmazione della shell non è esattamente “scrivere software”. non ci sono aritmetica dei puntatori, gestione della

memoria e altre chicche del genere. La programmazione della shell è a portata della maggior parte degli utenti Linux e peraltro è molto utile e vi permette di personalizzare il vostro sistema Linux come preferite, soprattutto di risparmiare tempo (molto!) senza aver bisogno di capacità di programmazione avanzata. utilizzando questa tecnica anche i principianti possono automatizzare cose come l’amministrazione di sistema, il processing di testo e immagini, la navigazione Web e diverse altre attività. Questo tutorial ne presenta i concetti principali e le strutture con una serie di semplici esempi. L’argomento è tuttavia molto vasto.

Come funziona la programmazione della shell?probabilmente saprete già che in Linux e altri sistemi potete digitare istruzioni complesse a riga di comando con un prompt interattivo (spesso indicato come Terminale). Questo prompt è in effetti solo un mediatore tra voi e l’interprete di comandi chiamato ‘shell’. ogni sistema Linux ne ha uno o più, elencati in /etc/shells. il più usato e quello a cui si farà riferimento nel resto del tutorial è Bash. Altre shell hanno comandi extra e potrebbero avere sintassi diverse per cicli e altre operazioni, però tutto quello che leggerete qui si applica in gran parte anche a quelle. i programmi da shell, comunemente chiamati script, sono file di testo semplice che contengono sequenze degli stessi comandi che digitereste al

prompt (e alcuni di questi comandi possono essere script loro stessi). nella maggior parte dei casi, gli script sono (molto) più lenti di un programma reale e compilato, scritto per fare le stesse cose in linguaggi come C.Gli script restano comunque una scelta migliore in molti, molti casi dove il tempo in più richiesto per girare è minore in ordini di magnitudine rispetto a quello richiesto per scrivere, compilare e debuggare le stesse funzionalità a un livello più basso, senza contare il tempo richiesto a imparare come farlo con criterio. Gli script sono facilmente riconoscibili in quanto file eseguibili (vedete il box Risorse) con la prima riga che comincia con i due caratteri #!. Questa stringa, conosciuta come ‘shebang’, è seguita dal percorso completo della shell:#!/bin/bash

una riga del genere indica a Linux che il file contiene comandi che dovrebbero essere passati direttamente all’interprete Bash, che sta nella directory bin. uno script scritto correttamente può essere eseguito semplicemente scrivendo il suo nome (e argomenti, se richiesti) al prompt, o anche cliccando sull’icona associata sul vostro desktop!

Lavorare con le variabiliLa prima cosa che serve a un linguaggio di programmazione è la gestione delle variabili, che sono contenitori di dati. Tutte le shell supportano variabili ‘scalari’ che mantengono pezzi di informazione monolitici come $Mio_pESo. Le variabili della shell sono identificate dal simbolo del dollaro a eccezione di quando assegnate loro un valore. Questi tre comandi mostrano come assegnare le variabili:nAME=‘Marco’GrEETinG=“Ciao, il mio nome è $nAME”nuMBEr_oF_FiLES=`find . -type f | wc -l`

e mostrano anche uno strumento fondamentale per la programmazione della shell: gli apici. Gli apici singoli delimitano stringhe statiche da usare come sono. i doppi apici sostituiscono automaticamente, ogni volta che vengono valutati, tutte le variabili contenute con il loro valore: nell’esempio sopra, $GREETING contiene la stringa “Ciao, il mio nome è Marco”. Gli apici inversi (in inglese noti con il termine backtick) sono molto più potenti e pericolosi: sostituiscono il proprio contenuto con il risultato di qualsiasi comando contengano. nell’esempio dite alla shell di trovare tutti i file nella directory attuale e contate le righe (wc -l) del risultato. Bash supporta anche gli array, ovvero dei contenitori unidimensionali e ordinati di scalari accessibili tramite indici numerici o chiavi testuali. È possibile (ed è effettivamente buona norma farlo) dichiarare esplicitamente gli array in questo modo:declare -a SupEr_HEroES

ma non è indispensabile. Questa istruzioneSupEr_HEroES[1]=‘Batman’

crea l’array SUPER_HEROES con due elementi. il primo con

Bash

Gli script non sono limitati al processing dei testi: usate le tecniche di questo tutorial per generare grafici come questi da Gnuplot da qualsiasi set di dati

TipLinux è pieno di strumenti per analizzare e modificare video e grafica da riga di comando, come ImageMagick e FFmpeg. una volta imparate le basi della shell scripting potete usarli per catalogare le vostre collezioni multimediali.

088_091_LXP_146_LXF187.code_shell_bash 88 22/09/14 01:44

Page 91: 10_ottobre2014

Linux pro 146 89

DevStack Tutorial

indice 0 sarà vuoto. potete anche riempire un array elencando i suoi elementi:SupEr_HEroES=( Superman Batman ‘Lanterna Verde’

Flash)utilizzabili poi in questo modo (usando come abbiamo fatto noi le parentesi graffe) #> echo “il mio supereroe preferito è ${SupEr_HEroES[2]}”il mio supereroe preferito è Lanterna Verde

ogni comando eseguito da uno script imposta un numero (chiamato valore di ritorno) nella variabile speciale $?. Esaminandola, il comando successivo può sapere se qualcosa è andato storto. La convenzione vuole che un valore di ritorno uguale a 0 indichi successo. il valore di ritorno di un intero script è quello del suo ultimo comando, a meno che non lo terminiate con un’istruzione del tipo exit N per impostare manualmente il valore di ritorno.

Controllo di flussoSolo gli script più banali devono eseguire la stessa rigida sequenza ogni volta che vengono lanciati. Tutti gli altri devono, a un certo punto, scegliere tra due o più percorsi in base all’input utente, ai contenuti di alcune variabili e al valore di uscita di alcuni comandi. La via più semplice di implementare tali decisioni è il costrutto if-then-else:if [ “$MYnAME” != “$YournAME” ] then echo “il tuo nome è $YournAME,” echo “il mio è $MYnAME” else echo “Grande, abbiamo lo stesso nome” fi La prima riga di questo pezzetto di codice introduce uno dei tanti operatori shell. Se le due variabili sono diverse (che devono essere racchiuse da doppi apici per il test!), l’operatore != ritorna TruE e la shell esegue i comandi racchiusi tra le istruzioni then e else. in tutti gli altri casi, i comandi eseguiti sono quelli tra else e l’istruzione fi che chiude il blocco. Questo costrutto non è pratico o particolarmente leggibile quando si annidano più di due o tre livelli: per casi del genere si usa l’istruzione ‘case’, la cui sintassi è lineare:while [ “$FirSTnAME” == “” ] do echo “Qual è il tuo nome?” echo “[L]uigi” echo “[r]iccardo” echo “[E]nrico” echo read FirSTnAME case “$FirSTnAME” in “L” | “l” ) echo ‘Sei Luigi xVi’ ;; “r” | “r” ) echo ‘Sei riccardo iii’ ;; “E” | “e” ) echo ‘Sei Enrico iV’ ;; *) echo ‘Chi sei?’

;; esac

done per il momento limitatevi a guardare semplicemente la parte ‘case’ dell’esempio (vedrete while e read più tardi quando avrete meglio compreso il quadro generale). La variabile che controlla la strada da seguire è quella subito dopo la parola chiave ‘case’, ovvero $FIRSTNAME. ogni serie di valori separati dalla pipe crea di fatto quindi un ramo dell’istruzione. Quando trova il valore corretto per $FIRSTNAME in una di queste liste, la shell esegue immediatamente tutte le istruzioni tra quella riga e la coppia successiva di punto e virgola. Se scrivete una r (maiuscola o minuscola, non fa differenza in questo caso), per esempio, la shell stamperà “Sei riccardo iii”. Se il valore non combacia con alcun elenco viene eseguito l’ultimo ramo (con l’asterisco). non dimenticate mai di includerlo, almeno per stampare un messaggio d’errore. Se dovete lanciare la stessa sequenza di comandi per un numero fisso o variabile di volte, ci sono diversi modi per farlo. il più intuitivo è il ciclo for, che può essere annidato quanto volete e può iterare su ogni elemento di una lista:for photo in $( find . -type f -name ‘*jpg’ ) do # processa un’altra $photo done

Avete indovinato: la lista può essere generata al volo da un altro comando. il ciclo sopra processa tutti i file con estensione .jpg nella directory dalla quale viene lanciato. Se dovete ripetere il processo solo finché una condizione è soddisfatta usate while o until: il primo ripete il ciclo finché la condizione è vera, il secondo finché è falsa:

while [ condizione è vera ] do # qualcosa... doneuntil [ condizione è vera ] do # qualcos’altro... done

per terminare un ciclo prima della condizione, inserite al punto giusto le istruzioni break e continue, che rispettivamente interrompono tutto il ciclo o solamente l’iterazione in corso del ciclo all’interno del quale stanno:for HEro in Superman Batman ‘LAnterna Verde’ do if [[ “$name” != “Batman” ]] then continue else echo “$SupErHEro non è il migliore!” fi done

Se proprio devono, tutte le shell sono in grado, direttamente con strumenti esterni come bc, di fare di conto. L’aritmetica intera è semplice: la sintassi permette gli spazi ed è intuitiva.A=$(($B+9))C=$((D*4))

Alternativamente potete usare expr tra apici inversi o l’operatore letx=`expr $Y + $Z \* 3`let x=x+6

Bash

TipControllate gli script di avvio della vostra distribuzione Linux.Sono un esempio eccellente di tutorial reali per l’amministrazione di Linux basata su script ed è facile aggiungere quelli che volete!

088_091_LXP_146_LXF187.code_shell_bash 89 22/09/14 01:44

Page 92: 10_ottobre2014

90 Linux pro 146

Funzioni softwarepotete anche usare funzioni software, ovvero piccoli blocchi di codice riusabili (anche da programmi diversi). Eseguono sempre le stesse operazioni, possibilmente con variabili diverse ogni volta o con diversi valori iniziali. Candidati naturali per le funzioni shell sono task quali formule fisse (e.g. radice quadrata) o modelli per report o documenti. Le funzioni shell devono essere sempre definite prima della loro prima chiamata. La sintassi più portabile è:mia_funzione_shell () { codice...}

per usare una funzione dovete chiamarne il nome con tutti gli argomenti nell’ordine esatto dopo il nome di funzione. All’interno della funzione tali argomenti vengono resi disponibili in variabili speciali $1...$n o nell’array $@ (notate

che gli argomenti per l’intero script funzionano allo stesso modo!). Le funzioni hanno un valore di uscita come se fossero interi script: è quello dell’ultimo comando eseguito o l’argomento passato con il comando return. Ecco un semplice esempio:mia_media() { total=0 num=0 for n in “$@“ do total=$((total + n)) num=$((num + 1)) done average=$((total/num)) echo “La media di [$@] è $average” return $average}

un limite delle funzioni shell è che possono ritornare direttamente solo numeri. Se la lanciate con 5, 10 e 300 come argomenti, mia_media metterà solo 105 nella variabile $?. Se necessitate di una funzione che ritorni stringhe, dovrete farle stampare la stringa con echo e catturarla con gli apici inversi: rESuLT=`mia_media 5 10 300` echo $rESuLT#> La media di [5 10 300] è 105

Usare gli aliasGli alias della shell sono simili a funzioni, nel senso che un alias è un altro modo per associare un identificatore a una sequenza di comandi di cui necessitate spesso. Gli alias sono semplici e praticamente impossibili da evitare (alcune distribuzioni Linux ne contengono già una serie attiva) ma sono più limitati delle funzioni, è perciò importante conoscere le differenze tra i due. per prima cosa gli alias, diversamente dalle funzioni, non accettano argomenti: vanno usati come scorciatoie per comandi fissi che non richiedono input da parte vostra, come in questo esempio che recupera un indirizzo ip:alias whatip==’w3m -no-cookie -dump http://whatismyip.

com | grep -A 2 ‘\”^Your ip:\”’ | cut -c1-30’Lanciare whatip recupererà la pagina www.whatsmyip.com con il browser testuale w3m e la passerà a grep e cut che estrarranno solamente la riga con l’indirizzo ip:#> whatipYour ip:188.9.174.20

L’altra cosa da sapere riguardo gli alias è che non vanno mai mescolati nella stessa riga ad altri alias o comandi. La ragione è che, ogni volta che trova un alias, la shell lo sostituisce con il testo corrispondente e rivaluta l’intera riga. per cui, le righe contenenti alias e altre cose possono avere risultati non prevedibili.

Partizionare il codiceTaluni script diventano troppo lunghi da comprendere o troppo estesi per capire cosa fanno in una sola schermata di codice. Le funzioni, per loro natura, devono spesso essere accessibili da diversi script, ma non avrebbe senso copiarle e incollarle in molteplici file, giusto? Fortunatamente c’è un modo semplice per gestire questi casi. per far sì che uno script si carichi ed esegua il codice memorizzato nel file my_

Questo calendario pop-up di Zenity è solo un esempio di come potete controllare uno script shell con il mouse

Bash

RisorseLa risorsa online definitiva per imparare a programmare con Bash e altre shell è la Advanced Bash-Scripting Guide (http://www.pluto.it/ildp/guide/abs.html). potete trovare numerosi esempi di comandi che possono costituire la base per tutti gli script che volete in siti come www.

shelldorado.com e www.linuxcommand.org. Le pagine man dei singoli comandi sono altresì risorse eccellenti per questo genere di lavoro. Cominciate con il comando chmod, che imposta i permessi dei vostri script permettendovi di renderli eseguibili da tutti coloro che volete.

088_091_LXP_146_LXF187.code_shell_bash 90 22/09/14 01:44

Page 93: 10_ottobre2014

Linux pro 146 91

functions come se l’aveste scritto in quel punto, vi basterà usare il punto o la parola chiave source. my_functionssource my_functions

i cosiddetti Here document sono il modo che ha la shell di generare e gestire, direttamente all’interno degli script, dei modelli di testo lungo che possono anche contenere variabili:cat <<EnD_GrEETinGSCaro $FriEnD come va a $HoMEToWn ? Tanti auguri di buon anno!EnD_GrEETinGS

Lo Here document è tutto il testo tra le due occorrenze della stringa END_GREETINGS. La prima dev’essere immediatamente a seguire l’operatore <<, quella di chiusura alla fine, in una riga a sé. Sebbene banale, questo esempio mostra la potenza degli Here document. inseriteli in un ciclo e genereranno una diversa copia di quel testo per ogni iterazione, ogni volta con i diversi valori contenuti dalle variabili specificati. La redirezione dell’i/o è un nome oscuro per una delle caratteristiche più potenti della programmazione. ogni singolo programma Linux con un’interfaccia testuale a riga di comando, che sia un comando della shell built-in, un’utility di terze parti o uno dei vostri script, funziona come una scatola con tre aperture per i flussi dati. Tali aperture sono: STDin, da cui arriva lo STanDard input; STanDard ouTput (STDouT) dove il programma invia tutti i byte che produce, e STDErr (STanDard Error), che riceve tutti i messaggi d’errore. La ragione per cui dovete conoscere quest’architettura è che risulta estremamente semplice connettere le porte di ogni scatola con altre per creare strumenti complessi ogni volta. il connettore magico da usare è il simbolo ‘pipe’ che avete visto all’inizio del tutorial:nuMBEr_oF_FiLES=`find . -type f | wc -l`

il find stampa tutti i file che trova, uno per riga, sulla propria porta STDouT. La pipe la collega alla porta STDin del programma wc che conta le righe e stampa il totale su STDouT. Questo stream viene ‘catturato’ dagli apici inversi e riversato in $NUMBER_OF_FILES.

Finestre di dialogoGli script shell sono grandiosi per l’automazione, ovvero per fare cose da soli. non sono comunque limitati a lavorare solamente in questo modo. Qualsiasi script può chiedere input dall’utente mentre gira, sia da riga di comando che da finestra grafica. il primo metodo legge le righe da STDin, ovvero quello che scrivete:echo “Come si chiama questa rivista?”

read MAGAZinEecho “Questa rivista si chiama $MAGAZinE”

Detto questo, usare finestre di dialogo e menu è un po’ più accattivante e in molti casi decisamente più efficiente. i due strumenti più usati per implementarle negli script shell sono Zenity (http://help.gnome.org/users/zenity/stable) e Whiptail (http://linux.die.net/man/1/whiptail). Dal punto di vista dell’utente la differenza principale tra i due è che Whiptail crea solo finestre di dialogo all’interno di un terminale, mentre Zenity ne crea di vere. provate per esempio questo codice:zenity --calendar \--title=“Quand’è il tuo compleanno?” \--text=“Clicca su una data per selezionarla.” \--day=3 --month=11 --year=1981

echo $? Scegliere il 3 novembre 1987 stamperà la stringa 03/11/1981. Ecco quindi terminata la nostra panoramica sulle possibilità a cui potete accedere dalla shell e come capire la grande quantità di script già pronti che potrete trovare in giro per la rete. LXP

Vedete la filigrana Vai LXP? Aggiungere questa e altri metadati alle immagini è un attimo con script shell e ImageMagick

TipGli script shell possono anche automatizzare l’amministrazione del database. Le funzionalità di modifica del testo possono essere usate per creare query per client da riga di comando come MySQL e addirittura fare il parsing dell’output.

Bash

Diventa protagonista nel mondo Linux

∆ Anatomia di un pacchetto Open Source ∆ Streaming audio su misura con Mopidy

Pro

Inoltre…Arrivano i replicanti! Ecco le stampanti 3D in grado di duplicarsi da sole p.40

Basso consumo Distro e applicazioni per dare nuova vita a vecchi PC p.26

AccAdemiA del codice8 pagine di pura programmazione

da pagina 84

Ripara UbuntuCome rimediare

agli errori di Canonical

Tari

ffa

r.O

.C. -

PO

sTe

iTal

ian

e sP

a -

abb

. PO

sT. -

D.l

. 353

/200

3 (C

On

v. in

l. 2

7/02

/200

4 n

. 46)

ar

T. 1

, CO

mm

a 1,

s/n

a -

Dis

Trib

uTO

re: P

ress

-Di,

mil

anO

Linux Pro 145 - 2014 - Mensile - €5,90 - CHF 13,60

toP secret

LINUX PRO 126

LINUX Pro

Cosa trovi nel

LINUX PRO 145

8GBLINUX

Pro

LA NUOVA VERSIONE DELLA DISTRO ELEGANTE E PRATICA DA USARE

ROBOLINUX 7.5.6 - SALIX 14.1 MATE

DEEPIN EDIzIONE 2014

LXP145_bustinaDVD 1 06/08/14 12:21

I METODI SICURI E GRATIS PERCREARE Un VPS PROTETTOCRIPTARE I DISChI fISSIBlInDARE lE PASSwORDDIfEnDERE lA TUA PRIVACy

VAI LXP

088_091_LXP_146_LXF187.code_shell_bash 91 22/09/14 01:44

Page 94: 10_ottobre2014

I Lug

I LUG rappresentano da sempre il punto di riferimento per chiunque voglia conoscere GNU/Linux. Ogni mese dedicheremo loro questo spazio per la comunicazione di nuovi progetti e appuntamenti.Se hai qualcosa da segnalarci scrivi a [email protected]

92 Linux pro 146

L’eco dei LUG

abruzzoanxaLuG - Lancianowww.anxalug.orgIl Pinguino - TeramoNon disponibileMarsicaLuG - Marsicawww.marsicalug.it openLuG - L’aquilaNon disponibilePescara LuGwww.pescaralug.orgPineto LuGwww.pinetolug.orgPollinux LuG - Pollutri Non disponibileSSVLuG - San Salvo, Vasto, Termoliwww.ssvlug.orgSulmonaLuGhttp://sulmonalug.itTeateLuG - ChietiNon disponibileTeLuG - Teramowww.telug.ituser Group Valle rovetohttp://linuxvalley-os4.blogspot.com/

baSILICaTabasilicata LuG - Potenza e Materawww.baslug.org

CaLabrIa3bYLug - Trebisaccewww.3bylug.tkbogomips - bisignanowww.blug.itCastroLuGhttp://castrolug.altervista.orgCosenza Hack Laboratoryhttp://hacklab.cosenzainrete.it/CSLuG - Cosenzahttp://cslug.linux.itCzLug Non disponibileHackLab Catanzarohttp://hacklab.czPiana LuG - Piana di Gioia Tauro Non disponibilereggio Calabria LuG http://rclug.linux.it revolutionary Mind www.revolutionarymind.org SpixLug - Spezzano albaneseNon disponibile

CaMPanIaaFr@Linux LuGwww.afralinux.netsons.orgafralug - afragolawww.afralug.comCasertaLuGwww.casertaglug.orgHackaserta 81100www.81100.eu.orgHackMeetnaples napoli HackLabwww1.autistici.org/hmnIGLuG - napoli e provincia

www.iglug.orgIrLuG - Irpiniawww.irlug.itLuG-Ischia www.lug-ischia.orgnaLuG - napoli www.nalug.netneapolis Hacklabwww.officina99.org/hacklab.htmlPadulug - Paduli (bn)http://linux.paduli.comSCaLuG - Scafati (Sa)http://xoomer.alice.it/scalug/Tuxway.org - Provincia di napoliwww.tuxway.orgVaLug - Vallo Linux user Groupwww.valug.itXaLuG - Salernohttp://xalug.tuxlab.org

eMILIa roMaGnaaLFLuG - alfonsinewww.alflug.itborgotaro LuG - Val Tarohttp://btlug.it/ConoscereLinux - Modena www.conoscerelinux.iterLuGhttp://erlug.linux.itFerrara LuG www.ferrara.linux.itFoLuG - Forlìhttp://folug.linux.itImoLuG - Imolawww.imolug.orgLuGPiacenzawww.lugpiacenza.orgPanLuG - VignolaNon disponibilePLuG - Parmahttp://parma.linux.itravennaLuGwww.ravennalug.orgreLug - reggio emilia e provinciahttp://relug.linux.itriminiLugwww.riminilug.itS.P.r.I.Te http://sprite.csr.unibo.ituIeLinux - Valle del rubiconewww.uielinux.org

FrIuLI VenezIa GIuLIaGoLuG - Goriziawww.golug.itIGLu - udinehttp://iglu.cc.uniud.itLuG Pordenonewww.pordenone.linux.itLugTrieste http://trieste.linux.itLuG [a] [L] [P] - aquileia www.alproject.org

LazIoCiLuG - Frosinonewww.cilug.org

CLuG - Cassino http://cassino.linux.it/GioveLuG - Terracina www.giovelug.orgLa Sapienza LuG www.lslug.orgLatina LuGwww.llg.itLuG Privernum Volsca - Priverno (LT)www.pvlug.orgLuGroma www.lugroma.orgLuGroma 3www.lugroma3.orgTorLuG - università Tor Vergata - roma http://lug.uniroma2.it/V.I.S.C.o.S.a. - Ciampino www.viscosa.org

LIGurIaGenuense Lug - Genova e d’intornihttp://genova.linux.itGinLug - Genova Sampierdarenawww.sennaweb.orgGovonis Gnu/LuG - Provincia di Savonawww.govonis.orgSLIMP - Software Libero Imperiahttp://slimp.it/TLug-TSL - Tigullio Ligurehttp://tlug.linux.it/

LoMbardIabGLug - bergamo e provinciawww.bglug.itbGLug Valle Seriana - Valle Serianahttp://bglugvs.web3king.com/GL-Como - Comowww.gl-como.itGLuX - Lecco e provinciawww.lecco.linux.itGuLLP - Gruppo utenti Linux Lonate Pozzolowww.gullp.itIspraLuG - Isprahttp://ispralug.eu/LIFo - Varesewww.lifolab.orgLIFoS - Cinisello balsamowww.lifos.orgLinux Var - Varesewww.linuxvar.itLoLug - Lodi e provinciawww.lolug.orgLug bocconi - Milanowww.lug-bocconi.orgLugbS - brescia e provinciahttp://lugbs.linux.it/Lug Castegnato - Castegnatowww.kenparker.eu/LugCastegnatoLugCr - Cremona e provinciawww.lugcr.itLug Crema - Cremahttp://filibusta.crema.unimi.it/LuGducale - Vigevanowww.lugducale.itLugMan - Mantova e provinciawww.lugman.org

L’eco dei LUG

092_093_LXP_146_lug 92 21/09/14 16:49

Page 95: 10_ottobre2014

Linux pro 146 93

L’eco dei LUG

Lugob - Cologne e ovest brescianowww.lugob.orgMobLuG - Monza e brianzawww.bubblesfactory.itopenLabs - Milanowww.openlabs.itPouL - Milanowww.poul.orgTiLug - Paviahttp://pavia.linux.itViGLug - Vignatewww.viglug.org

MarCHeascolinux LuG/FSuG ascolihttp://marche.linux.it/ascoli/CameLuG - Camerinowww.camelug.itCMlugwww.cmlug.orgegloowww.egloo.orgFanoLuGwww.fanolug.orgFermo LuGwww.linuxfm.org/fermolug/GLM - Maceratawww.gruppolinuxmc.it/start/index.phpLuG ancona www.egloo.orgLuG Jesiwww.lugjesi.netLuG Marchehttp://marche.linux.itPdP Free Software user Grouphttp://pdp.linux.itSenaLug - Senigalliawww.lug.senigallia.biz

MoLISeCampobasso LuGhttp://cb.linux.it/FrenterLuG - Larinonon disponibileSmaLuG - San Martinowww.smalug.org

PIeMonTeabC Lug - alba/bra/Carmagnolahttp://abc.linux.it/alLug - alessandria e provinciawww.allug.itbiLuG - Provincia di biellawww.bilug.linux.itFaSoLi - alessandria e provinciahttp://softwarelibero.al.it/Gallug - Galliatewww.gallug.itGlugTo - Torino e provinciawww.torino.linux.itIvLug - Ivrea Linux user Groupwww.ivlug.itSLIP - Pinerolohttp://pinerolo.linux.it/ValSusinux - Val Susa e Val Sangonewww.valsusinux.it

PuGLIabriLuG - brindisiwww.brilug.itCapitanLuG - Capitanatawww.capitanlug.itLaTLuG - Latiano Linux user Groupwww.latlug.orgLuGarganowww.lugargano.itLuGbari - bari e provincia

www.lugbari.orgMurgiaLug - Santeramo in Colle www.open-pc.eu/index.php/murgialug/SaLuG! - Salentohttp://salug.itTalug - Tarantowww.talug.it

SardeGnaGnuraghe - oristanowww.gnuraghe.orgGuLCh - Cagliariwww.gulch.itPLuGS - Sassariwww.plugs.it

SICILIaCefaLug - Cefalùhttp://cefalug.linux.itcLuG - Caltanissettawww.clug.itennaLuGwww.ennalug.orgFreaknet MediaLab - Cataniawww.freaknet.orgLeonforte LuGhttp://leonforte.linux.itLuG Cataniawww.catania.linux.itLuGSr - Siracusawww.siracusa.linux.itMeLuG - Messinanon disponibilenorp LuG - noto, Pachino, rosolininon disponibilePaLuG - Palermohttp://palermo.linux.itrgLuG - ragusa e provinciahttp://ragusa.linux.itVPLuG Linux Planet - Provincia Caltanisetta www.vplug.itSputniX - Palermowww.sputnix.it

ToSCanaaCroS - Versilia, Lucca, Massa Carrarawww.lug-acros.orgelbalinuxnon disponibileelsaGLuG - Val d’elsawww.elsaglug.orgFLuG - Firenzewww.firenze.linux.itGoLeM - empoli, Valdelsahttp://golem.linux.itGroLuG - Grossetowww.grolug.orgG.u.L.LI - Livornowww.livorno.linux.itGulP! Piombinohttp://gulp.perlmonk.orgGuLP Pisawww.gulp.linux.itGuruatWork - Grosseto e provinciawww.guruatwork.comIPIoS - bibbiena e valle del Casentinowww.ipios.orgLucca LuGhttp://luccalug.itL.u.G.a.r - arezzonon disponibilePLuG - Prato e provinciawww.prato.linux.itPtLug - Pistoia e provincia

www.ptlug.org

SLuG - Siena e provincia

www.siena.linux.it

TrenTIno aLTo adIGe

LinuxTrent - Trento

http://linuxtrent.it

Lugbz - bolzano

www.lugbz.org

uMbrIa

orvietoLuG

www.orvietolug.it

LuG Perugia

www.perugiagnulug.org

TerniLuG

www.ternignulug.org

VaLLe d’aoSTa

SLaG - aosta

www.slag.it

VeneTo

0421ug - Provincia di Venezia

www.0421ug.org

bLuG - belluno

http://belluno.linux.it

Faber Libertatis - Padova

http://faberlibertatis.org

GrappaLuG - bassano del Grappa

http://grappalug.homelinux.net/

ILC - Informatica Libera Cittadellese - FSuG

http://ilc.pd.it

LegnagoLuG

non disponibile

Linux Ludus - Villafranca (Vr)

www.linuxludus.it

Luganega

www.luganega.org

LuGSF - San Fidenzio

non disponibile

LuG Vicenza

www.vicenza.linux.it

LugVr - Verona

www.verona.linux.it

MontelLuG - Montebelluna

www.montellug.it

FSuG Padova

www.fsugpadova.org

roLuG - rovigo

http://rovigo.linux.it

TVLuG - Treviso

www.tvlug.it

VeLug - Venezia

www.velug.it

aViLuG Schio

http://www.avilug.it/doku.php

nazIonaLI

FSuGitalia

www.fsugitalia.org

Gentoo Channel Italia

www.gechi.it

MajaGLuG

www.majaglug.net

SkyLuG

http://tech.groups.yahoo.com/group/skylug/

L’eco dei LUG

092_093_LXP_146_lug 93 21/09/14 16:49

Page 96: 10_ottobre2014

94 Linux pro 146

PROdentro il

SoftwareOgni mese Linux Pro vi offre i programmi e le distribuzioni più recenti su DVD

Gui

da

Ogni volta che troverete

questo simbolo in un articolo,

vorrà dire che i file citati

si trovano nel DVD allegato

alla rivista.

Kali Linux 1.0.9Distro Desktop

Nel mondo Linux, la sicurezza è sempre stata tenuta in grande considerazione. Che si tratti dei dati personali o di mantenere blindate le reti, il pinguino non ha rivali tra gli odierni

sistemi operativi. Certo, sotto questo profilo alcune distro sono meglio di altre, ma se confrontate con Windows non esistono comunque paragoni. Kali Linux, la distribuzione che vi presentiamo in questo numero, è però un passo avanti perfino rispetto alle sue simili. pensata esclusivamente per mettere a disposizione tutti gli strumenti utili a garantirvi la massima sicurezza possibile, si rivolge agli esperti di informatica forense. Vediamola quindi da vicino e scopriamo cosa offre. Senza fronzoliKali è sviluppata su una base Debian ed è stata creata dagli stessi sviluppatori che hanno dato i natali a BackTrack Linux. non solo, ma può esserne definita la sua diretta evoluzione; infatti si tratta comunque di una re-build della distro antenata. il suo punto di forza sono gli strumenti che mette a disposizione, tutti pensati per eseguire test di penetrazione professionali. A questo proposito, tale distro nasce più come una cassetta degli attrezzi da utilizzare in specifiche attività, anziché come sistema tradizionale di cui servirsi nel quotidiano. Anche se a conti fatti non manca niente, per una questione di versatilità e praticità giornaliera, vi consigliamo comunque di affiancarla a una distro normale. Kali supporta ArM e può essere utilizzato sia in versione Live da CD o chiave uSB, sia installandolo su disco. Le prime due modalità sono molto comode per portarsela in giro e utilizzarla al volo da qualunque postazione. Se invece decidete di installarla nel pC, vi consigliamo di utilizzare un portatile, così da poterla sfruttare in ogni luogo. il processo d’installazione è basato su una Gui testuale, che vi obbligherà a usare la tastiera per spostarvi tra le varie funzioni. La procedura non è comunque complessa, in quanto la maggior parte delle impostazioni predefinite può soddisfare gran parte degli utenti. Kali supporta anche il partizionamento del disco guidato e manuale, con possibilità di applicare LVM cifrato. Vi permetterà poi di configurare il gestore pacchetti, installare GruB o LiLo o configurare il tutto senza un boot loader. potrete anche modificare il livello di priorità in debconf e verificare l’integrità del CD-roM. Terminata l’installazione vi ritroverete in un desktop piuttosto spartano e senza tanti

fronzoli, in cui si punta tutto alla praticità d’utilizzo. nella parte superiore è presente la barra degli strumenti, da cui potete iniziare a selezionare le funzioni utili a gestire la sicurezza del sistema e testare quella delle reti con cui avete a che fare.

Gli strumentii circa 300 tool di penetrazione presenti in Kali derivano da BackTrack; ognuno è stato poi sottoposto a una profonda revisione, così da eliminare quelli problematici o non funzionanti, perfezionando infine i rimanenti. purtroppo non abbiamo spazio per elencare tutti gli strumenti e fare una mera lista esemplificativa non avrebbe molto senso. Tuttavia, per avere una panoramica completa di cosa vi aspetta in Kali Linux potete consultare la pagina http://tools.kali.org/tools-listing, che suddivide i programmi presenti per campo di applicazione. Trovate software per l’analisi delle vulnerabilità, strumenti per l’analisi forense, programmi per gli attacchi Wi-Fi e molto altro ancora. Se non sapete da dove cominciare per prendere confidenza con questi tool, potete collegarvi a http://www.kali.org/kali-linux-dojo-workshop e seguire i vari tutorial.

In caso di bisognoLa documentazione è uno dei maggiori pregi di Kali Linux e della comunità che sta dietro al suo sviluppo. Disponibile alla pagina http://it.docs.kali.org, è stata tradotta in più lingue, tra cui l’italiano. per chi vuole installare Kali su una macchina virtuale utilizzando VirtualBox è presente una serie di istruzioni molto interessanti su come aggiungere le Guest Additions, così da sfruttare perfettamente il sistema virtualizzato.

Cosa c’è nel DVD Kali Linux 1.0.9 Centrych oS 12.04.3 Cube2 Sauerbraten redobackup 1.0.4 Smoothwall Express 3.1 DreamStudio unity 12.04 uMplayer 0.95 VLC Media player 2.1.5 Clementine 1.2.3 Kaffeine 1.2.2

MpV 0.5.1 JSon to CSV

20140311 Flex-fw 0.2.1 Galculator 2.1.3 newLiSp 10.6 Frescobaldi 07.3 Asunde 2.5 The Legend of Edgar 1.17 Freecell Solver

094_095_LXP_146_guidadvd 94 22/09/14 15:23

Page 97: 10_ottobre2014

Linux pro 146 95

Guida Software

1 Live da CD o USBuno dei punti di forza di Kali Linux è la versatilità con cui permette di essere avviato. infatti possiamo lanciarlo in versione Live da DVD oppure tramite uSB. notate che da dispositivo ottico è disponibile anche la forensic mode, una particolare modalità utile per gli informatici forensi. in alternativa è possibile installarlo sul disco fisso.

3 Rete sotto stressSe accedete a Kali Linux D Stress Testing D Network Stress Testing D denial 6 potete simulare un attacco Denial sulla rete, così da valutarne l’eventuale resistenza. il tool avverte che nel caso l’offensiva vada a buon fine e quindi il sistema si riveli vulnerabile, sarete sottoposti a un crash piuttosto pesante. Fate quindi attenzione.

5 Costruire una radio amatorialeKali mette insieme anche altri tool, tra cui CHIRP, lo strumento open Source per programmare una radio amatoriale. CHirp supporta un gran numero di apparecchi, il cui elenco è presente sulla pagina ufficiale http://chirp.danplanet.com. Qui sono poi disponibili i download delle ultime versioni e la relativa documentazione.

2 Subito a portatail menu più importante è Kali Linux, che trovate facendo click sulla voce Applications posta nella barra superiore. Qui sono presenti tutti gli strumenti forensi suddivisi per campo di attività. Troviamo Information Gathering, Vulnerability Analysis, Web Applications, Password Attacks e molti altri. L’elenco completo è presente sulla pagina ufficiale della distro.

4 Password sotto scaccouno degli strumenti più potenti, tanto da essere inserito nella top 10 di Kali, è Hydra, un tool per indovinare o eseguire un crack dei dati di accesso online quali login e password. ovviamente, come riportano anche le indicazioni d’uso, è essenziale farne un uso legale. Lo trovate nel menu Kali Linux D Password Attacks D Online Attacks D hydra.

6 Pronto per Arduinooltre ai tanti strumenti per la sicurezza, Kali integra anche Arduino IDE, l’utility che permette di interfacciarsi con la popolare scheda. Sulla distro, nel momento in cui stiamo scrivendo, è presente la versione 1.0.4, ma se vi collegate al sito http://arduino.cc/en/main/software potete scaricare la release 1.0.5.

Caratteristiche Cosa offre Kali Linux

094_095_LXP_146_guidadvd 95 22/09/14 15:23

Page 98: 10_ottobre2014

Mensile - Ottobre 2014 - 5,90 euro - 13,60 CHF

Direttore Responsabile: Luca Sprea - [email protected]

Redazione: [email protected] Palermi (segreteria)

Realizzazione editoriale: Ventidodici

Iconografia e fotografie: iStockphoto

Contenuti tratti da “Linux Format” - Future Publishing Limited Plc., Bath (UK)

Pubblicità: Alessandra Cappellacci - [email protected]. 02.92432275 - Cell. 320 4670523

Abbonamenti (disponibili solo in versione con DVD) Si sottoscrivono in 2 minuti con 2 click via Web. Trovi l’offerta speciale di questo mese all’indirizzowww.myabb.it/linuxpro oppure scrivi ad abbonamenti@

myabb.it; puoi anche abbonarti via fax allo 02 700537672, per telefono allo 02 87168074 dal lunedì al venerdì dalle ore 9 alle ore 18. Il costo della chiamata da linea fissa è pari a una normale chiamata su rete nazionale in Italia. Da telefono cellulare il costo dipende dal piano tariffario in uso.

Arretrati Si sottoscrivono online all’indirizzo: www.spreastore.it/linuxpro Per informazioni o richieste: [email protected] al fax 02.70.05.37.67.2 Stampa: Arti Grafiche Boccia S.p.A. - Salerno

Sprea Editori S.p.A. Socio unico Sprea Holding S.p.A.Via Torino, 51

20063 Cernusco Sul Naviglio (MI)Tel (+39) 02.92432.1 Fax (+39) 02.92.43.22.36www.sprea.it - [email protected]

Consiglio di amministrazione:Luca Sprea (Presidente),Mario Sprea (Consigliere)

Collegio sindacale: Roberto Bosa (Presidente), Susj Castenetti, Ivo Costa

Amministrazione: Anna Nese - [email protected] rights: Gabriella Re - [email protected]

Marketing: Walter Longo [email protected]

Distributore per l’Italia e per l’Estero: Press-Di Distribuzione Stampa e Multimedia S.r.l. 20134 Milano

LINUX PROPubblicazione mensile registrata al Tribunale di Milano il 08.02.2003 con il n. 74 - Tariffa R.O.C. - Poste Italiane Spa - Sped. In Abb. Post. - D.L. 353/2003 (conv. In L. 27/02/2004 n. 46) art. 1, comma 1, S/NAISSN: 1722-6163

Copyright Sprea Editori S.p.A.La Sprea Editori è titolare esclusiva della testata Linux Pro e di tutti i diritti di pubblicazione e diffusione in Italia. I contenuti sono adattati e tradotti dai contenuti inglesi della pubblicazione “Linux Format”, edita da Future Publishing Limited Plc., con sede in Bath (UK). L’utilizzo da parte di terzi di testi, fotografie e disegni, anche parziale, è vietato. L’Editore si dichiara pienamente disponibile a valutare - e se del caso regolare - le eventuali spettanze di terzi per la pubblicazione di immagini di cui non sia stato eventualmente possibile reperire la fonte. 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 personali,

ex art. 28 D.Lgs. 196/03, è Sprea Editori S.p.A. (di seguito anche “Sprea”), con sede legale in via Gramsci 17, 26100 Cremona. 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 enunciato anche per attività connesse all’azienda. La avvisiamo, inoltre, che i Suoi dati potranno essere comunicati e/o trattati (sempre nel rispetto della legge), anche all’estero, da società e/o persone che prestano servizi in favore della Sprea. In ogni momento Lei potrà chiedere la modifica, la correzione e/o la cancellazione 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 direttamente al personale Incaricato preposto al trattamento dei dati. La lettura della presente informativa deve intendersi quale 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 trattamento dei dati personali secondo quanto sopra specificato. L’invio di materiale (testi, fotografie, disegni, etc.) alla Sprea Editori S.p.A. deve intendersi quale espressa autorizzazione alla loro libera utilizzazione da parte di Sprea Editori S.p.A. per qualsiasi fine e a titolo gratuito, e comunque, a titolo di esempio, alla pubblicazione gratuita su qualsiasi supporto 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 potrà essere restituito.

Che risoluzione!Andiamo alla scoperta del mondo 4K nell’ambiente Open Source. Vediamo come trarne massimo beneficio per avere un desktop sterminato e tanto spazio per le nostre applicazioni

Segreti degli hackerFacciamo un viaggio esclusivo nel mondo dei pirati della Rete con la nostra intervista approfondita a uno dei massimi esponenti del pianeta dell’hacking: assolutamente imperdibile!

Senza maniOperare sul computer senza usare la tastiera è possibile grazie ai sistemi di controllo vocale. Abbiamo messo a confronto i migliori per capire cosa possiamo farci e come sfruttarli

E inoltre:

LINUXPro

In edicola il 20 dicembre H a i u n a r g o m e n t o d a

COME RISOLVERE I PROBLEMI DEL SISTEMA

Ecco come affrontare ogni tipo di errore e problema per risolverli e rendere Linux efficiente come lo era alla prima installazione!

Nel prossimo NumeroIn edicola il 12 novembre

H a i u n a r g o m e n t o d a p r o p o r c i ? S c r i v i a p r o s s i m a m e n t e @ l i n u x . i t

096_LXP_146_prossimamente 1 21/09/14 16:50

Page 99: 10_ottobre2014

Ecco la RIVISTACHE STAVI ASPETTANDO

Anche suiPad, iPhone e iPod News, prove, guide pratiche, hacker zone

min_Android_210x285.indd 1 10/09/14 15.22

Page 100: 10_ottobre2014

Spazio disco e traffico illimitato

1 dominio inclusocon estensione a tua scelta

5 caselle email da 1GB incluse

Possibilità di e-commerce

Per la tua attività online scegli la garanzia del Made in Italy.L’Hosting di Aruba è affidabile, potente e completamente personalizzabile.Puoi scegliere tra moltissimi servizi opzionali, tra cui database, statistiche e backup, per creare la soluzione hosting su misura per il tuo progetto. E grazie all’ottima connettività Aruba, il tuo sito è veloce sia dall’Italia che dall’estero.

In più, con Application Installer installare CMS e app è facile e veloce.

Hosting Linux e Windows Hosting Managed Hosting Personalizzato Hosting Plesk Hosting cPanel

Per maggiori informazioni: www.aruba.it 0575 0505 assistenza in italiano

L’Hostinga km0

A partire da

20,66 € + IVA/anno

09/09/14 15:34