11_novembre2014

100
Diventa protagonista nel mondo Linux Le meraviglie della risoluzione 4K Mandare email di gruppo con PHP e MySQL PRO Inoltre… Parola di hacker Freaky Clown svela a Linux Pro tutti i segreti dei pirati della Rete p.36 "Computer... esegui!" Ecco come controllare la propria distro con la voce p.58 ACCADEMIA DEL CODICE 8 pagine di pura programmazione da pagina 84 RPI a catena Collega più schede insieme e hackera le password 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 147 - 2014 - Mensile - €5,90 - CHF 13,60 RIPARA LINUX 8 GB CHAKRA 2014.09 EULER - NETRUNNER 14 L'ULTIMA VERSIONE DELLA DISTRO IDEALE PER LAVORI AUDIO E VIDEO 14 PAGINE DI TRUCCHI E CONSIGLI PER FAR SPARIRE OGNI ERRORE ED ELIMINARE I PROBLEMI

description

linux magazine

Transcript of 11_novembre2014

Diventa protagonista nel mondo Linux

∆ Le meraviglie della risoluzione 4K ∆ Mandare email di gruppo con PHP e MySQL

Pro

Inoltre…Parola di hacker Freaky Clown svela a Linux Pro tutti i segreti dei pirati della Rete p.36

"Computer... esegui!" Ecco come controllare la propria distro con la voce p.58

AccAdemiA del codice8 pagine di pura programmazione

da pagina 84

RPI a catenaCollega più schede insieme

e hackera le password

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 147 - 2014 - Mensile - €5,90 - CHF 13,60

rIPArA LINUX

LINUX PRO 126

LINUX Pro

Cosa trovi nel

LINUX PRO 147

8GBLINUX

Pro

Chakra 2014.09 EulEr - NEtruNNEr 14

L'ULTIMA VERSIONE DELLA DISTRO IDEALE

pER LAVORI AUDIO E VIDEO

LXP147_bustinaDVD 1 13/10/14 17:11

14 pagine di trucchi e consigli per Far sparire ogni errore ed eliMinare i proBleMi

COP_001_LXP147_cover 1 22/10/14 17:59

Tutto per WordPress■ Novità: WordPress 4 ■ Veloce installazione con 1&1 WP Wizard■ Aggiornamenti automatici del

core di WordPress

Massima sicurezza■ Notifi che di sicurezza

(aggiornamenti e molto altro)

Massimo comfort■ Novità: interfaccia a linea di comando

WP-CLI■ Supporto Esperti App

Tecnologia all’avanguardia■ Connettività di oltre 300 Gbps■ Massima disponibilità grazie alla

georidondanza■ 1&1 CDN powered by CloudFlare®

Tutto incluso■ Dominio gratuito (.it, .com, .net, .org, .info o .eu)■ Potenza illimitata: spazio web, traffi co, account

e-mail, database MySQL

Temi professionali in offerta■ Novità: -20% su tutti i temi Premium

di WordPress su Template Monster■ Ideale per la visualizzazione su dispositivi mobili

* 30 giorni di prova ”soddisfatti o rimborsati al 100%“. Un anno a partire da 12 € IVA escl. (14,28 € IVA incl.) con contratto di 12 mesi, poi a partire da 84 €/anno IVA escl. (99,96 € IVA incl.). Contratti disponibili anche con durata di un mese. Maggiori informazioni sul sito 1and1.it. 1&1 Internet AG, Elgendorfer Str. 57, 56410 Montabaur, Germania. Il Rubik’s Cube® è usato dietro licenza 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

HOSTINGNOVITÀ:CON WORDPRESS

12 € IVA escl.*Un anno da

1&1 Hostingcon WordPress

MAPIT1411X1P_1-1_WH_Classic_207x285_46L.indd 1 16.10.14 15:17

Linux pro 147 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

Riparare Linux è facileuna delle ragioni migliori per preferire Linux a Windows è la sua generale

stabilità e la possibilità per gli utenti di metterci mano con semplicità. Ed è incidentalmente anche uno dei modi in cui gli utenti Linux prendono in giro chi ancora usa Windows ed è alle prese con blocchi del sistema, problemi di uso della memoria, impossibilità di personalizzare il sistema esattamente come si vuole, ecc. ecc. Gli utenti Windows per contro sembrano scatenarsi quando notano che una distro Linux ha un problema, quando si blocca, quando c’è qualche problema di incompatibilità. “Vedi? Anche Linux si blocca! E con Linux non funzionano tutte le periferiche!” è quello che ci si sente dire. Beh, se Linux fosse un sistema a prova di ogni tipo di blocco e problema staremmo probabilmente parlando di un miracolo. Ebbene sì, anche Linux ha i suoi problemi. Anche Linux ogni tanto ha dei blocchi ed è impossibile negare che la compatibilità con le periferiche non sia totale. Ma non è l’infallibità di Linux che ci porta a guardare dall’alto in basso chi usa Windows. il grande vantaggio di Linux è la facilità con cui possiamo risolvere quei rari problemi che si presentano e la facilità con cui la community open Source può affrontare il problema della compatibilità delle periferiche lavorando su driver specifici. Ed è proprio questo il tema principale di questo numero, a cui dedichiamo addirittura 14 pagine per non perderci davvero nulla! Abbiamo raccolto

ogni tipo di problema, errore, limitazione, mancanza, ecc. a cui potevamo pensare e abbiamo chiesto ai nostri esperti di fornirci le soluzioni migliori. il risultato è un articolo di copertina in cui problematiche software, hardware, desktop, di sistema, di connettività e molto altro ancora sono analizzate al microscopio per fornire le risposte che permettono di sistemare tutto senza mal di testa. Così, la prossima volta che un fan di Windows vi dice “Ma anche Linux si blocca!” voi potrete rispondergli che però, grazie anche ai consigli di Linux pro, sistemare quei piccoli problemi è un gioco da ragazzi, non come per Windows... La redazione di Linux Pro

Diventa protagonista nel mondo Linux

∆ Le meraviglie della risoluzione 4K ∆ Mandare email di gruppo con PHP e MySQL

Pro

Inoltre…Parola di hacker Freaky Clown svela a Linux Pro tutti

i segreti dei pirati della Rete p.34"Computer... esegui!" Ecco come controllare la propria distro con la voce p.56

AccAdemiA del codice8 pagine di pura programmazioneda pagina 84

RPI a catenaCollega più schede insiemee hackera le password

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 147 - 2014 - Mensile - €5,90 - CHF 13,60

rIPArA LINUX

LINUX PRO 126

LINUX

Pro

Cosa trovi nel

LINUX PRO 147

8GB

LINUXPro

Chakra 2014.09 EulEr - NEtruNNEr 14

L'ULTIMA VERSIONE DELLA DISTRO IDEALE

pER LAVORI AUDIO E VIDEOLXP147_bustinaDVD 1

13/10/14 17:11

14 pagine di trucchi e consigli per Far sparire ogni errore ed eliMinare i proBleMi

001_LXP_147_editoriale 1 22/10/14 17:22

2 Linux pro 147

Sommario

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

linux pro 147 LINUX Pro

In primo piano

08 Domande e risposte su Ceph

ABBONATI ALLA VERSIONE DIGITALE

A SOLI 14,90 €DURATA ABBONAMENTO 1 ANNO

sOlO pER pC E MAC

www.myabb.it/digital

ProblemI con lInux?rIsoltI

una raccolta di ben 14 pagine sui problemi più comuni a cui potete trovarvi di fronte. Problemi di avvio, l’hardware, il desktop, il

software, il sistema e le connessioni di rete: ecco come risolvere tutto

10

002_003_LXP_147_sommario 2 22/10/14 17:23

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 147 3

Sommario

06 NewsdeskLe novità del mondo open Source

08 FAQ: Cephil sistema di archiviazione open Source

Approfondimenti

10 Risolvi i problemi

Ecco come mettere fine ai mal di testa!

24 Arch Linux

Alla scoperta di questa straordinaria distro

30 4K: lo stato dell’arte

L’alta definizione e Linux

36 Intervista il mito underground Freakyclown

racconta i segreti dell’hacking

40 Trucchi per sysadminil progetto Keepod e come integrare

Linux e Windows in Samba

L’angolo di Android

44 NewsLe novità in campo Android

46 Galaxy AlphaLo smartphone Samsung dalle notevoli

funzioni e dal bel design

47 OnePlus One Fantastico lo schermo da ben 5,5 pollici

48 ASUS ZenFone 6uno smartphone robusto, facile e veloce

Recensioni

49 I test del mese

Tutorial

70 PHP/SQLiteinviate newsletter in massa via email dal vostro server

74 TerminaleCreate un utente, impostate una password e gestite al meglio i permessi

76 OpenStackMemorizzate oggetti e gestite l’infrastruttura virtuale della vostra cloud

80 LycheeCostruite un’alternativa personale a Flickr e condividete le vostre foto

Accademia

84 PythonCome connettere tra loro diversi pi in un cluster e sfruttare la loro potenza per scoprire le password

88 Gimpusate python per aggiungere alcune caratteristiche extra a Gimp scrivendo un comodo plug-in

92 L’eco dei LUG La mappa dei LuG italiani

94 Guida DVD

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∆ AVLinux 6.0.3∆ GhostBSD 4.0 Karine

lAto b∆ dIstrIbuzIonI∆ ArchLinux 2014.10.01∆ Chakra 2014.09∆ NetRunner 14 Frontier

∆ rIVIstA∆ FreeSpeech r120∆ Palaver 1∆ Julius 4.3.1∆ Speech App 0.7∆ Simon 0.4.1∆ Midnight Commander 4.8∆ Python 2.4.2rc1∆ Git 2.1.2∆ Qtractor 0.6.3 ∆ Shellpic 1.6∆ Stellarium 0.13.0∆ Pioneer 2040930 ∆ Assassin OTU 0.5rc1

IL PROSSIMO NUMERO ESCE

IL 12 dICEMbRE

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

www.myabb.it/linuxpro

002_003_LXP_147_sommario 3 22/10/14 17:23

4 Linux pro 147 Linux pro 145 TM

Sicurezza

A fine settembre è stato scoperto un certo numero di bug di sicurezza che

riguardavano la shell Bash di unix, a cui è stato dato il nome Shellshock. Dato l’ampio uso della shell, specialmente nei server Web, divenne subito chiaro che questa minaccia avrebbe potuto assumere contorni ben più drammatici della più nota vulnerabilità chiamata Heartbleed, che aveva diffuso il panico all’inizio di quest’anno. Shellshock è stata trovata nel pacchetto software Bash, la potente shell testuale ben nota agli utenti Linux. Sfruttando questa vulnerabilità, gli hacker avrebbero potuto lanciare comandi via Bash. probabilmente l’aspetto peggiore stava nel fatto che non erano necessarie particolari conoscenze per sfruttare il bug Shellshock, mettendoci quindi alla mercé di molti malintenzionati. oltretutto, visto il gran numero

di server Web che usano Bash, la prospettiva diventava inquietante. Da quando è stata scoperta questa vulnerabilità, sono stati eseguiti un sacco di exploit più o meno pericolosi, dalla semplice apertura e chiusura del lettore DVD da remoto, alla creazione di un worm autoreplicante, capace di infettare diversi computer. il sito http://unix.stackexchange.com riportava un buon esempio su come sfruttare questa vulnerabilità. Tutto questo è accaduto perché Bash, almeno nella sua versione non corretta, permette di fatto di creare variabili d’ambiente con valori manipolati prima di chiamare la shell. Queste variabili possono contenere codice, che sarà eseguito a piacimento non appena s’invoca la shell. Di fatto si tratta di una sorta di variante delle classiche “iniezioni di codice” a cui sono vulnerabili i siti internet che passano variabili in

chiaro. Da quando è stata scoperta questa vulnerabilità, le aziende si sono date da fare per assicurare che i servizi, ma soprattutto i clienti, fossero al sicuro da questo bug, dato che era chiaro che già molti malintenzionati lo stavano sfruttando per sferrare attacchi a tappeto. un rapporto di Trend Micro spiegava uno di questi attacchi: “Trend Micro Deep Discovery è riuscita a individuare un tentativo di aggressione e ha scoperto che gli hacker stavano cercando di verificare se molti ip istituzionali fossero affetti da questa vulnerabilità”. Google e Amazon si sono affrettati a spiegare cosa avessero fatto per rimediare al problema nei loro rispettivi server e, mentre all’inizio Apple aveva dato l’impressione di sottovalutare il pericolo, non di meno ha rilasciato una patch

per le versioni Mavericks, Lion e Mountain Lion del suo sistema operativo. red Hat ha pubblicato una serie di comandi che possiamo usare per controllare se il nostro sistema è immune a Shellshock. in base ai risultati che ci restituisce lo script, capiremo quale patch abbiamo e se è necessario correre ai ripari. per sapere come fare, colleghiamoci semplicemente alla pagina https://access.redhat.com/articles/1200223. per rispondere alle numerose critiche piovute sui sistemi unix, in seguito a questo incidente, richard Stallman e Andrew Auernheimer hanno dichiarato su LiveJournal che Shellshock non è un problema critico di Bash, ma che lo è di quelle persone che hanno trovato così utile questo strumento da spingerlo oltre i suoi scopi originari.

Insieme a Andrew Auernheimer, Richard Stallman ha dichiarato che il problema non è Bash ma di chi lo vuole spingere oltre i suoi scopi

Un guaio chiamato Shellshock

Pur avendo ufficialmente sottovalutato i pericoli di Shellshock, Apple è comunque corsa velocemente ai ripari

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

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

004_LXP_147_news 4 22/10/14 17:22

Linux Foundation

Quando sentiamo parlare di droni, la prima cosa che ci viene in mente sono

quegli strumenti di morte mandati a colpire un obiettivo nemico senza rischiare la vita dei propri uomini. Tuttavia questa sarebbe una visione piuttosto limitativa dello strumento in sé. Infatti un drone altro non è che un dispositivo mobile pilotato a distanza, che può avere un gran numero di usi, come il monitoraggio di zone particolarmente difficili da raggiungere. Quindi non stupiamoci se la Linux Foundation ha deciso di investire risorse proprio in questo settore, che diventa sempre più importante, a mano a mano che la

tecnologia progredisce. Il progetto Dronecode, presentato appunto dalla Fondazione a ottobre, ha lo scopo di realizzare una piattaforma per sviluppare software Open Source in grado di gestire in modo sicuro e affidabile questi dispositivi mobili. In questo progetto sono coinvolte molte aziende, anche di primissima grandezza, come Intel, Qualcomm, 3D Robotics, SkyWard e Yuneec, tanto per fare solo alcuni esempi. Secondo quanto dichiarato dalla stessa Linux Foundation, attualmente sono impegnati in questo progetto più di 1.200 sviluppatori che stanno sfruttando Software Liberi per garantire una sostanziale riduzione dei costi finali dei piccoli velivoli che sfrutteranno

questa piattaforma. Inoltre, la scelta di questo tipo di software garantisce una maggiore affidabilità. A capo del progetto è stato messo Andrew Tridgell,

sviluppatore di altri importanti software come Samba e Rsync. Ora non ci resta che aspettare i primi risultati concreti di questo ambizioso progetto.

Arrivano i droni

Il progetto Dronecode vede la partecipazione di aziende universalmente note come Intel e Qualcomm

“Zimbra” is trademark of Zimbra, Inc.

Informazione a cura di Studio Storti Srl

il gusto di abbinarlo a Zimbra

www.zextras.com - espandi il tuo Zimbra Open Source6 LInux pRO 147

Newsdesk

Adobe

Che i rapporti tra il gigante informatico Adobe e l’universo Linux non siano mai stati dei più

idilliaci non è un segreto per nessuno. La dimostrazione più evidente sta nella costante difficoltà, nel corso degli anni, a rilasciare le versioni aggiornate delle varie applicazioni. per esempio, l’ultima di Reader risale al maggio del 2013, quindi a oltre a un anno fa! Era quindi immaginabile che, presto o tardi, venisse formalizzato un divorzio tra Adobe e Linux, ormai da tempo nell’aria e preannunciato dalla fine dello sviluppo di applicazioni come Flash player e AIR. Ora anche Adobe Reader non è più tra i software supportati per Linux e l’ultima versione disponibile sarà appunto quella di un anno fa, la 9.5.5, tra l’altro disponibile solo

a 32 bit. Tuttavia, come si suol dire, per fare un fiume ci vogliono due sponde. Ecco perché sarebbe ingiusto accusare Adobe di essere l’unica responsabile di questo divorzio. Infatti, anche gli utenti Linux non hanno mai preso molto in considerazione Adobe Reader, preferendo affidarsi ai numerosi altri lettori di file pDF reperibili facilmente nei repository delle varie distribuzioni. Oltretutto questi lettori hanno spesso più funzioni rispetto a quello di Adobe e sono chiaramente Open Source. È quindi evidente che l’epilogo di questo rapporto non poteva essere diverso, visto che entrambe le parti non si amano affatto, per non dire che si guardano in cagnesco. Chi avesse ancora nostalgia del lettore di Adobe potrà scaricarne il pacchetto deb/rpm o binario precompilato all’indirizzo

ftp://ftp.adobe.com/pub/adobe/reader/unix/9.x/9.5.5/enu, tenendo però conto che per ubuntu e le derivate a 64 bit si dovrà anche digitare nel Terminale la riga

sudo apt-get install libgtk2.0-0:i386 libnss3-1d:i386 libnspr4-0d:i386 lib32nss-mdns* libxml2:i386 libxslt1.1:i386 libstdc++6:i386 altrimenti il software non funzionerà.

Un divorzio prevedibile

Adobe ha annunciato la fine del supporto per la versione Linux di Reader, l’ultima delle quali risale al 2013

006_007_LXP_147_news 6 22/10/14 17:22

“Zimbra” is trademark of Zimbra, Inc.

Informazione a cura di Studio Storti Srl

il gusto di abbinarlo a Zimbra

www.zextras.com - espandi il tuo Zimbra Open Source

Errata corrige

Sarà una scimmia!S

ubito dopo l’uscita di una nuova versione di ubuntu, una delle prime domande che ci si pone è come si chiamerà

la successiva. Sappiamo tutti che il nome in codice viene creato partendo dalla lettera dell’alfabeto successiva a quella dell’ultima release ufficiale, usata sia per l’aggettivo, sia per il nome dell’animale che la rappresenta. Tanto per capirci, ubuntu 14.04 si chiamava Trusty Tahr, mentre l’attuale ubuntu 14.10 si chiama utopic unicorn. Quindi era ovvio che la lettera designata sarebbe stata la V. Infatti, Mark Shuttleworth ha di recente annunciato che ubuntu 15.04 avrà come nome in codice Vivid Vervet, che tradotto in italiano suona come Cercopiteco Vivace. In pratica, dopo la parentesi fantasy dell’unicorno, l’animale guida della prossima versione del sistema

operativo di Canonical tornerà a essere reale e sarà una scimmietta. per il momento, nulla si sa di cosa ci riserverà il cercopiteco, a parte il fatto che probabilmente continuerà ad avere unity 7 come ambiente desktop. LXP

Ubuntu

L ’equipe di lavoro di Linux pro si danna l’anima per realizzare ogni mese il numero migliore possibile

ma ogni tanto qualche ingranaggio si inceppa e qualche svista scappa anche ai nostri attentissimi revisori. In particolare, nel numero 146, a pagina 77 (l’articolo su Kerbal Space program e Arduino), un titolo originariamente troppo lungo è stato tagliato in modo da produrre un tragicamente comico “La legge degli Ohm”. Il titolo avrebbe ovviamente dovuto essere “La legge di Ohm”. Ce ne scusiamo con i lettori e promettiamo di fare molta più attenzione in futuro a tagliare i titoli un attimo prima di andare in stampa!

La leggedi chi?

Newsdesk

006_007_LXP_147_news 7 22/10/14 17:22

FAQ Ceph Ceph FAQ

8 Linux pro 147 Linux pro 147 9

Ceph. Un momento… non era un personaggio di una serie TV degli anni ‘70?

Si vede che hai una certa età… no, Ceph è un sistema di archiviazione open Source

unificato e basato su distribuzioni, progettato per offrire prestazioni ottimali, affidabilità e scalabilità. È gratuito e utilizza commodity hardware.

Si tratta quindi di un sistema unificato...sarebbe a dire?

Sarebbe a dire che Ceph combina l’archiviazione a livello di blocchi, oggetti e filesystem in un’unica

collocazione. È scalabile fino al livello degli esabyte, non ha punti singoli di vulnerabilità ed è tanto affidabile quanto facile da gestire. Sembra perfino troppo bello per essere

reale. Come si presenta un sistema Ceph?

DR

DR

D

RADOS, CRUSH… ecco la solita pioggia di sigle che, per quanto ne so, potrebbero

essere i nomi di organizzazioni malvage decise a fare fuori James Bond. Di che si tratta? Qui la SpECTrE non c’entra… rADoS

è un metodo per utilizzare l’intelligenza dei dispositivi di archiviazione e dei nodi, invece di limitarsi a farli reagire passivamente alle richieste io di archiviazione, come avviene nei sistemi più tradizionali. Tutti i nodi di un sistema rADoS hanno accesso a una cosa chiamata Cluster Map, che traccia i dispositivi presenti nel cluster specificando inoltre la distribuzione dei dati su tutti questi dispositivi. Sono i nodi stessi a gestire i dati ridondanti, a rilevare gli errori e a correggerli, il che riduce le strozzature che possono crearsi in un sistema più centralizzato e tradizionale. un cluster può contenere

D

R

Ad alto livello, Ceph è costituito da un certo numero di nodi (singoli computer) che si

combinano in un Ceph Storage Cluster. un cluster Ceph è teoricamente scalabile ‘all’infinito’, grazie al fatto che si basa su rADoS (Reliable Autonomic Distributed Object Store) e può comprendere migliaia di nodi. i nodi in questione utilizzano dei daemon che costituiscono i singoli elementi del software Ceph. i monitor Ceph conservano una copia master della mappa dei cluster, gli oSD Daemon di Ceph gestiscono le operazioni di lettura e scrittura sui dischi di archiviazione servendosi di un algoritmo chiamato CruSH per calcolare la posizione dei dati e i Metadata Server di Ceph si occupano delle informazioni a livello di filesystem, come i nomi delle directory e i titolari dei singoli file.

R

CephSistemare oggetti, blocchi e file nel sistema di archiviazione open Source che mira a sostituire la tradizionale tecnologia Storage Area network

Alcune domande su...

008_009_LXP_147_LXF189.woe 8 22/10/14 17:15

FAQ Ceph Ceph FAQ

8 Linux pro 147 Linux pro 147 9

Ceph

numerosi nodi, ognuno dei quali si occupa di compiti propri; ma il client tratta comunque il cluster come un’entità unica.

Ho deciso di cercare CRUSH su Google per fare colpo su di te. Vuol dire Controlled

Replication Under Scalable Hashing, giusto? Esatto! È l’algoritmo usato da Ceph per

calcolare le posizioni di archiviazione degli oggetti ed è in buona parte responsabile dell’estrema scalabilità di Ceph. in parole povere, permette ai client di calcolare dove i dati vanno archiviati nel cluster e agli oSD Daemon di stabilire dove archiviare le copie dei dati stessi. ottenendo queste informazioni in questo modo, invece che utilizzando le più tradizionali liste di allocazione, si può limitare al minimo l’overhead per i metadati. Anche il recupero e la distribuzione dei dati risultano molto più semplici.

E la ‘Cluster Map’ di cui parlavi, che cos’è e come funziona all’atto pratico?

perché il sistema funzioni, i client e i daemon di Ceph hanno la necessità

di comprendere la topologia dei cluster. Questa è archiviata nella Cluster Map, un nome collettivo che denota cinque mappe specifiche. Le mappe contengono informazioni su monitor, oSD, placement Group (pG, nel gergo di Ceph: in sostanza si tratta di raccolte di oggetti) e Metadata Server; infine c’è la mappa CruSH. La mappa CruSH è un elenco di dispositivi di archiviazione e di regole per l’accesso a tali dispositivi. La modifica della mappa CruSH è uno dei compiti dell’amministratore di Ceph. ogni mappa comprende una storia delle modifiche a essa apportate; per esempio, ogni volta che gli oSD entrano o escono dal cluster, la mappa in questione viene aggiornata. i Monitor di Ceph si occupano della copia master della Cluster Map.

Tutto ciò mi lascia un po’ confuso. Vediamo di capirci qualcosa. Supponiamo che io

abbia un cluster Ceph e voglia archiviare un file al suo interno. Come funziona il meccanismo? immaginiamo che tu abbia un file che

desideri archiviare come oggetto all’interno del tuo cluster (in realtà, Ceph archivia tutto sotto forma di oggetti). il client di Ceph, che ormai fa parte del kernel di Linux da diverso tempo, dispone di un’interfaccia a riga di comando per l’archiviazione degli oggetti. inoltre, l’archiviazione a livello di oggetti di Ceph può gestire le chiamate api JSon, il che la rende compatibile con Amazon S3 e con openStack Swift. il client accetta il nome del file, il nome che decidi di assegnare all’oggetto e il pool di archiviazione in cui desideri collocarlo. un pool non è altro che un insieme logico di oSD e pG (Placement Group), nonché di regole per il loro uso. L’amministratore di Ceph può decidere, per esempio, di assegnare a ogni utente un proprio

D

R

DR

D

R

versione di Ceph ‘confezionata’ e comprensiva di assistenza, chiamata Ceph Enterprise; sono sicuro che il suo personale sarà più che lieto di dialogare con un nuovo cliente. L’azienda ha pubblicato come open Source tutti gli strumenti precedentemente disponibili ai soli clienti paganti, in particolare Calamari, la console e strumento gestionale di Ceph.

Calamari? Ah... a questo punto effettivamente capisco il nome Ceph.

proprio così: Ceph sta per ‘cefalopode’. il tema del calamaro caratterizza tutto

il progetto ed è legato anche all’idea di componenti multipli che operano in modo indipendente tra loro, un po’ come i tentacoli di un calamaro. Calamari è un’applicazione di tipo dashboard per Ceph che utilizza il browser; mostra lo stato di vari componenti del cluster, statistiche sull’utilizzo, eccetera. Vari video online mostrano come appare Calamari: potete trovarli facilmente cercando Inktank Calamari su un motore di ricerca. potete scaricarlo dal repository GitHub di Ceph, che trovate all’indirizzo https://github.com/ceph. Tenete presente che il codice è stato reso open Source solo da un mese o due, perciò l’installazione potrebbe risultare un po’ più complicata di quella della maggior parte degli attuali software open Source... almeno finché i distributori di Linux non appronteranno un pacchetto destinato apposito agli utenti finali.

Sembra tutto molto promettente. C’è qualche altro trucco che non hai ancora citato?

L’ultima versione di Ceph, nota come Firefly, comprende funzioni di cache tiering.

il sistema permette cioè di trasferire i dati a cui si accede frequentemente (hot data) su supporti ad alte prestazioni (per esempio SSD) quando vengono attivati, mentre i dati con accesso meno frequente (cold data) possono essere spostati su supporti a prestazioni più basse quando non sono in uso. Ceph supporta inoltre l’erasure coding.

Che cosa possiamo quindi attenderci da Ceph nel futuro?

red Hat disponeva già di una soluzione di archiviazione propria, GlusterFS, prima

di acquistare inktank. per ora non è chiaro cosa accadrà a questi progetti, se cioè verranno fusi o rimarranno separati. L’elemento filesystem è forse il punto debole dell’architettura di Ceph. Sebbene questo elemento sia stato migliorato a ogni nuova release, su questo fronte potrebbe esserci margine per ulteriori sviluppi. Con Ceph, red Hat intende puntare sui grossi clienti, perciò possiamo aspettarci qualche nuova funzione ‘per aziende’ nel prossimo futuro. Ceph è prediletto dalla comunità di openStack, perciò a questo punto sembra trovarsi nella posizione ideale per rafforzarsi ulteriormente. LXP

DR

DR

DR

pool. il client contatta quindi un server Monitor (Ceph si serve di un cluster di questi server) per ottenere la copia più recente della Cluster Map. Questa fornisce informazioni relative a tutti i server monitor, oSD e Metadata presenti nel cluster. utilizzando degli hash dell’oggetto e dell’iD del pool, il client calcola quindi in quale placement Group l’oggetto dovrà essere inserito e quale oSD va contattato per consentire che ciò avvenga. L’oSD scrive quindi l’oggetto sul suo disco locale in un flat namespace; non viene utilizzata alcuna struttura ad albero per le directory. L’oggetto avrà un identificativo, dati binari e metadati composti da una serie di coppie nome/valore. Gli specifici metadati archiviati dipendono dal client coinvolto. L’oSD distribuisce quindi delle copie dell’oggetto in posizioni calcolate mediante l’uso di CruSH e segnala al client il completamento dell’operazione. Dando un’occhiata su http://ceph.com/docs/master/architecture troverete spiegazioni estremamente dettagliate sul funzionamento di tutto ciò.

Potresti fare un esempio di come vengono gestiti i blocchi?

in sostanza, nello stesso modo ma di nascosto. L’interfaccia dei blocchi distribuisce

intelligentemente i dati attraverso il cluster, migliorando così le prestazioni. i dispositivi vengono quindi sottoposti a thin provisioning, il che significa che utilizzeranno l’archiviazione soltanto quando ne avranno bisogno; ed è possibile creare istantanee e cloni, come in ogni sistema moderno.

OK, oggi pomeriggio voglio costruirmi il mio cluster Ceph. Che cosa mi serve?

Come minimo, Ceph necessita di un monitor e di uno o più oSD per funzionare. negli

esempi disponibili su http://ceph.com/docs/master/start vengono utilizzati tre o quattro nodi per far funzionare il sistema. Tenete presente che questi non devono essere necessariamente supporti fisici; l’operazione può essere svolta da host virtuali, sebbene le prestazioni possano risentirne. per creare un cluster più serio, vale la pena di dare un’occhiata alla documentazione ufficiale all’indirizzo http://bit.ly/CephDocs. Su una scala globale, Ceph può richiedere dispositivi e interconnessioni di rete relativamente potenti, anche se non colossali. È una questione di costi e di pianificazione. Comunque, metterne in funzione una versione di prova con Vagrant è abbastanza semplice.

Ripensandoci, vorrei che qualcuno mi desse una mano. A chi posso chiedere aiuto?

naturalmente c’è sempre la comunità di Ceph. non solo: recentemente, red Hat

ha acquistato inktank Storage, l’azienda fondata dallo sviluppatore di Ceph. La casa offre una

DR

DR

DR

008_009_LXP_147_LXF189.woe 9 22/10/14 17:15

Risolti!PRoblemi con linux?

In questo articolo riuniamo in una raccolta i problemi più comuni a cui potete trovarvi di fronte. Per ognuno vi forniamo la soluzione, in modo da mantenere il sistema sempre in forma

nonostante si possa avere più o meno esperienza, prima o poi tutti ci troviamo di fronte

a qualche genere di problema. uno degli aspetti più positivi delle comunità open source è però la volontà di fornirvi assistenza per qualsiasi genere di inconveniente. infatti, siti, blog, wiki e documentazione abbondano in qualsiasi circostanza. senza dubbio questo genere di approccio è di enorme importanza sia per i principianti sia per gli utenti più esperti. Poter contare su un aiuto costante, infatti, non ha prezzo. Detto questo, prevenire è sempre meglio che curare e quindi abbiamo ben pensato di fornirvi una guida ai problemi più comuni con le relative soluzioni. Per facilitarvi le cose e permettervi di avere un sistema sempre fluido e funzionante, abbiamo raccolto e condensato tutto il

nostro bagaglio di esperienze in queste 14 pagine. Troverete quindi una guida pratica per risolvere la maggior parte dei problemi senza dovervi perdere in Internet per cercare le soluzioni. Infatti, se spesso diamo per scontato il funzionamento di

Linux, è sempre importante ricordare che gli elementi che caratterizzano il sistema hanno un processo di esecuzione piuttosto complesso. Pensiamo alle sole attività che ci passano sotto gli occhi dal momento in cui accendiamo il PC. Viene caricato il bootloader, si attiva il kernel, i file e i documenti vengono avviati dal filesystem, si attiva l’interfaccia grafica, viene lanciata la connessione a Internet e via dicendo. Considerando tutto questo, è facile capire come in questa concatenazione di cause ed effetti qualcosa alla fine possa anche

andare storto. Seguendo lo schema di avvio, abbiamo quindi deciso di partire dai principali problemi che possono verificarsi in fase di accensione, passando ai malfunzionamenti dovuti all’hardware di base, per arrivare poi ai componenti

più specifici, come le periferiche di rete o relativi al desktop. Ci auguriamo che alla fine di questo articolo, qualcuna delle nostre perle di saggezza vi sia stata d’aiuto per risolvere il vostro

problema, lasciandovi così la libertà di usare un sistema stabile e funzionale. Data la lunghezza dell’articolo, per facilitarvi nella consultazione, abbiamo deciso di aggiungere un sommario proprio in questa pagina. In questo modo potrete passare direttamente alla sezione che vi interessa. Il nostro consiglio è comunque di leggere tutto l’articolo, in modo da farvi un’idea generale di cosa può capitare utilizzando Linux quotidianamente. Detto questo, non vi resta che sfogliare l’articolo pensato per voi.

“considerando la complessità di linux, è sempre meglio saper risolvere i principali problemi”

sommarioProblemi di avvio .............12GRUB, bootloader, dual booting, Master Boot Record (MBR), Rescatux.

Hardware .................................14Driver, stampanti e CUP, crash, SSD, cancellazione sicura.

sistema .......................................16Drive, memoria, HOME, log, clonazione delle unità.

software ...................................18Gestore software, codice sorgente, DVD, sistema rallentato, perdita delle password.

networking ............................20Rete lenta, streaming, accesso remoto.

Desktop .....................................22Nessun desktop visualizzato, problemi di login, dispositivi bloccati, perdita di file.

010_023_LXP_147_LXF189.feat_solve 10 22/10/14 17:15

LINUx PRO 147 11

010_023_LXP_147_LXF189.feat_solve 11 22/10/14 17:16

12 LINUx PRO 146 LINUx PRO 146 13

Risolvi i problemi di Linux Risolvi i problemi di Linux

12 LINUx PRO 147 LINUx PRO 147 13

i primi passiAvvio in stallo

D il computer non si avvia. ogni volta che compare la schermata iniziale si blocca tutto.

R La prima cosa da fare è essere pazienti. Il processo di avvio può tentare di inizializzare un dispositivo hardware o in alternativa

accedere alla rete qualora sia disponibile. In questo caso, vi troverete di fronte a un timeout di alcuni minuti, dopo i quali il sistema ripartirà regolarmente. In caso di problemi, comunque, vi verrà riproposto un messaggio di errore su cui potrete cominciare a lavorare per identificare il problema. Purtroppo, sotto questo aspetto, era molto meglio quando l’avvio di Linux veniva mostrato in chiaro, con tanto di stringhe di testo che scorrevano sul monitor fino a quando il processo non era concluso. In questo modo, in caso di malfunzionamenti, si aveva subito sott’occhio il problema. Adesso, invece, va di moda nascondere tutto dietro a una semplice schermata grafica. È possibile comunque disattivare la schermata iniziale direttamente dal menu di avvio. Quando accendete il PC, tenete premuto il tasto esc e se trovate una funzione che richiama al recupero di sistema o alla sicurezza in generale, selezionatela. Al suo interno troverete sicuramente la voce per disattivare la schermata iniziale. In alternativa, date un’occhiata alle opzioni di avvio e premete e per modificarle. Cercate una riga che comincia con linux e poi opzioni come quiet, splash o theme. Eliminate queste voci e premete F10 per continuare l’avvio. Questo, ovviamente, non risolve il problema (a meno che il malfunzionamento non sia imputabile proprio alla schermata di lancio), ma vi permetterà di vedere cosa sta succedendo e trovare degli spunti per iniziare a indagare sull’origine dell’inconveniente. Volendo andare oltre, potete prendere in considerazione l’idea di una periferica hardware che impedisce l’avvio del sistema. In questo caso disattivate tutti i dispositivi non necessari, come stampanti, scanner o HUB USB.

errori di boot

D Quando lancio il boot, vedo comparire i seguenti errori:Pci Express Device Error. Severity NN. Uncorrected non Fatal.

Pci Bus ErrorType:N Transaction Layer. Flow Control Protocol N:First. Receiver 1

Problemi di avvio? Ecco le principali soluzioni

Disattivate la schermata di avvio della vostra distro. in questo modo potrete vedere cosa sta succedendo e, in caso di bisogno, capire l’origine dei problemi

Questo problema si verifica su un Pc con una scheda madre appena acquistata e che funziona bene con Windows.

R Il fatto che l’hardware lavori con Windows ma dia problemi con Linux è un evento che può succedere spesso. Trattandosi di

scheda madre, il primo passo da compiere è controllare la presenza di un eventuale aggiornamento del BIOS. Anche se si tratta di un modello nuovo, il fatto che sia stata ferma su uno scaffale per diverso tempo o abbia fatto un lungo viaggio dall’Estremo Oriente per arrivare dal negoziante, può rendere il BIOS sorpassato rispetto a quelli rilasciati negli ultimi periodi. Aggiornare questo componente, infatti, può risolvere davvero parecchi problemi, soprattutto inerenti l’avvio del sistema. Se anche così non cambia niente, mettendo mano ad alcuni parametri, potete provare a modificare il modo in cui il kernel si rivolge all’hardware. Nel menu di Grub (premete esc dopo l’accensione del PC per visualizzarlo), selezionate l’opzione per l’avvio regolare e premete e. Modificate la riga che inizia con kernel aggiungendo alcune o tutte le funzioni da riga di comando che vi elenchiamo, ognuna separata da uno spazio: noapic

oppurenoapictimer, acpi=off

oppure ancoraacpi=forceirqpollpci=nommconfpci=nomsi

Notate la differenza tra la seconda e la terza serie di istruzioni. Tutto quello che acpi e apic hanno in comune sono solo le lettere. Premete F10 per lanciare le opzioni che avete appena aggiunto, quindi, una volta trovata la giusta combinazione con cui il kernel interagisce con l’hardware, rendete permanente la modifica aggiungendo le opzioni GRub_cmDline_linux_DeFAult e GRub_cmDline_linux in /etc/default/grub. Adesso salvate il file e aggiornate Grub con uno dei seguenti comandi. Quello da usare dipende dalla vostra distro (se il primo non funziona, provate il secondo e poi il terzo).sudo update-grub2sudo grub2-mkconfig -o /boot/grub2/grub.cfgsudo grub2-mkconfig -o /boot/grub/grub.cfg

linux danneggiato in seguito a una nuova installazione di Windows

D Ho installato linux sul mio Pc Windows e, una volta acceso, ho avuto la possibilità di scegliere quale dei due

sistemi utilizzare. Recentemente, però, ho dovuto reinstallare Windows, con il risultato che adesso linux è scomparso. non voglio reinstallarlo, perché in questo modo peerderei tutti i file e le impostazioni che avevo salvato. c’è un modo per ripristinare la mia prima installazione di linux?

R Linux usa il bootloader Grub per consentirvi di scegliere le varie impostazioni di avvio. Windows, però, sfrutta il proprio bootloader.

Dovete sapere che quando parliamo di bootloader ci riferiamo a una piccola parte di codice embedded posta all’inizio del disco rigido, la quale viene lanciata durante il processo di caricamento del sistema

010_023_LXP_147_LXF189.feat_solve 12 22/10/14 17:16

12 LINUx PRO 146 LINUx PRO 146 13

Risolvi i problemi di Linux Risolvi i problemi di Linux

12 LINUx PRO 147 LINUx PRO 147 13

Problemi di avvio? Ecco le principali soluzioni

il cD live di Rescatux dispone del comando Restore Grub, che evita di dover ricorrere ai comandi della shell per ottenere lo stesso obiettivo

Per apportare modifiche permanenti al vostro menu di Grub, modificate /etc/default/grub e lanciate i comandi grub2-mkconfig o update-grub

operativo. Reinstallando Windows, si è provveduto a sovrascrivere Grub con il bootloader del sistema Microsoft. Tuttavia non c’è bisogno di preoccuparsi, perché l’unica cosa a essere andata persa è il codice di Grub. Linux, infatti, è ancora al suo posto, con tutto ciò che contiene. Quello che dovete fare è solo ripristinare Grub. Alcune distro installano delle partizioni che hanno il compito di riscrivere il bootloader nel caso vada perso. In alternativa c’è una soluzione più generica che possiamo mettere in pratica con Rescatux. Scaricate il programma da http://www.supergrubdisk.org/rescatux e selezionate l’opzione Restore Grub. A questo punto, il software cercherà tutte le partizioni Linux e vi chiederà di scegliere quale di queste contiene il filesystem root, per poi permettervi di installare Grub sul rispettivo disco fisso (di solito si tratta di /dev/sda). Dobbiamo precisare che la schermata può bloccarsi per un periodo di tempo piuttosto lungo, ma anziché farsi prendere dal panico e riavviare, non dovete far altro che avere pazienza fino a quando Grub non viene reinstallato. Una volta fatto, il menu di avvio si ristabilisce e potrete accedere di nuovo alla vostra copia di Linux.

Dual-booting con più di una distro

D so che posso gestire un dual boot tra linux e Windows, ma posso fare lo stesso con due distribuzioni linux?

se sì, come faccio a condividere i miei dati tra di loro? inoltre, come devo partizionare il mio disco fisso?

R Sì, certamente. Ogni distro ha bisogno di una propria partizione di root, ma è comunque possibile condividere lo stesso swap

con ciascuna di esse . È però sempre consigliabile avere una partizione separata per /home (se non si vogliono legare i propri dati a un’unica distro, in futuro si può sempre decidere di dismetterne l’uso). Invece, sconsigliamo l’utilizzo della stessa directory home per ogni distribuzione. Evitiamo così eventuali incompatibilità tra il diverso software utilizzato. Noi preferiamo usare il nostro nome seguito da quello della distro, tipo “mario-ubuntu” o “mario-debian” e così via. Da tenere poi in considerazione che fino a quando ogni utente ha lo stesso UID, ognuno di loro avrà permessi di scrittura e accesso e quindi sarà possibile creare simlink per le directory più importanti come musica, foto e quant’altro. In questo modo potrete condividere tutti i file tra le varie distribuzioni, mantenendo comunque la configurazione dei documenti separata. Per quanto riguarda il menu di avvio, scegliete una distro come principale e l’altra come secondaria, in modo da gestire correttamente le dovute priorità, selezionando poi la prima perché venga lanciata in prima battuta. Ogni volta che si installa una nuova distribuzione, evitate di reinstallare un nuovo bootloader, in quanto quello precedente compirà a meraviglia il proprio lavoro senza bisogno di ulteriori elementi. Una volta riavviato il PC, usate quindi il comando:sudo grub-mkconfig -o /boot/grub/grub.cfg

Infine aggiornate il menu di boot.

Rimuovere una distro danneggiata

D Ho cancellato le partizioni linux del mio Pc. il fatto è che adesso non posso avviare il sistema operativo. tutto

quello che ottengo quando ci provo è un messaggio di Grub che non riesce a trovare i file. in più si apre un prompt rescue>. non riesco nemmeno ad avviare Windows.

R Nonostante il codice di avvio per Grub sia memorizzato nel Master Boot Record (mbR) all’inizio del disco fisso, si tratta pur

sempre di uno spazio molto piccolo. Infatti, il codice iniziale di Grub carica i file e le informazioni di configurazione dalla directory grub o grub2 presenti nella partizione di boot di Linux. Se avete rimosso questa partizione, Grub smette di funzionare. Se volete installare un’altra distro nello spazio vuoto, è sufficiente avviare l’Installer e lasciare che Grub si riconfiguri rilevando automaticamente la presenza di Windows. Se invece volete utilizzare lo spazio lasciato vuoto per la copia di Windows o per la distro già presente, allora dovrete installare Grub per un altro sistema Linux o reinstallare il bootloader di Windows. Il modo più semplice per ripristinarlo è utilizzare l’opzione di ripristino sul CD live di Rescatux. Per ripristinare il bootloader di Windows, invece, è necessario utilizzare questi comandi a seconda della versione posseduta. Per xP:fixbootfixmbr

Per Vista, 7 o 8, invece:bootrec /fixbootbootrec /fixmbrbootrec /rebuildbcd

Quando il computer non ne vuole sapere di avviarsi, un CD live è una manna dal cielo. Per questo è opportuno averne sempre uno a portata di mano. Infatti, si tratta di un ambiente Linux che anziché installarsi si avvia direttamente da CD. Oltre a essere molto utile per essere utilizzato su computer portatili come distro di passaggio, è ideale per ripristinare il corretto funzionamento di un sistema che non ne vuole sapere di avviarsi. Ci sono alcuni CD di soccorso dedicati, come System Rescue CD, Rescatux e Grml, ma la maggior parte delle distribuzioni consente comunque di lanciare una propria copia in ambiente Live. Di solito serve per provare il sistema e vedere se fa al caso vostro, ma niente vi impedisce di utilizzarlo come risorsa per risolvere i problemi che vi si pongono di fronte.

010_023_LXP_147_LXF189.feat_solve 13 22/10/14 17:17

14 LINUx PRO 146 LINUx PRO 146 15

Risolvi i problemi di Linux Risolvi i problemi di Linux

14 LINUx PRO 147 LINUx PRO 147 15

Problemi hardwaretrovare i driver hardware

D Dopo posso trovare i driver per il mio hardware? il disco della scheda madre incluso nella confezione

include solo quelli per Windows.

R La maggior parte dell’hardware non ha bisogno di alcun driver per funzionare con Linux. Il kernel, infatti, mette a disposizione

il supporto per una quantità impressionante di periferiche. Di solito, infatti, Linux riesce a riconoscere i dispositivi nel momento stesso in cui li collegate, caricando poi i driver appropriati senza bisogno di alcun intervento da parte vostra. Alcune periferiche, inoltre, non hanno driver separati, perché spesso usano solo codice proprietario che non può essere incluso con il kernel. In questo caso, un CD live come Knoppix o System Rescue CD spesso riconosce il dispositivo (questi particolari programmi, infatti, tendono a includere il supporto per moltissime periferiche). Se l’hardware è un dispositivo interno che di solito compare in uscita da ispci, basta usare l’opzione -k per sapere quale driver usa. Una volta scoperta questa informazione, sarà sufficiente cercare il pacchetto che fornisce quello specifico driver. Per farlo, usate o il gestore pacchetti o cercate direttamente nel Web. Se si tratta di un pacchetto standard, come nel caso di molte

Perché usare il terminale?Gran parte dei consigli che vi forniamo è sotto forma di comandi del terminale e il motivo per cui abbiamo scelto questa via è molto semplice. Infatti, molte distribuzioni hanno i propri comandi di configurazione che tuttavia variano da sistema a sistema. I comandi da terminale, invece,

rimangono inalterati e possono essere utilizzati in tutte le distro. Inoltre, un altro dei punti di forza nell’uso del terminale è che i comandi consigliati funzionano perfino se il desktop non si avvia. Alcune istruzioni devono essere eseguite come root e per farlo è sufficiente anteporre sudo

al comando. In questo articolo utilizzeremo principalmente sudo, che peraltro rappresenta l’unica opzione in molte distribuzioni attualmente in circolazione. Se invece avete pieno accesso come root tramite su, basta eseguire il comando senza sudo.

Risolviamo i problemi con le periferiche recalcitranti

le distro hanno i propri programmi di configurazione per la gestione della stampante. cuPs, però, oltre a funzionare altrettanto bene, è anche universale

periferiche wireless, tutto quello di cui avete bisogno per far funzionare la periferica è contenuto nel pacchetto stesso. Il processo di installazione è simile a quello compiuto con i dispositivi USB, tranne per il fatto che si utilizza il comando lsusb e non c’è alcun equivalente per -k. Se invece il kernel non supporta l’hardware o non riuscite a trovare alcunché dal gestore pacchetti, allora dovrete ricorrere al sito del produttore. Se trovate un pacchetto DEB o RPM adatto al vostro sistema, la soluzione è a portata di mano. In caso contrario, assicuratevi di scegliere il driver giusto per l’architettura utilizzata e seguire attentamente le istruzioni di installazione.

crash casuali

D il mio computer è affetto da una marcata instabilità e le cause non sembrano essere imputabili a nessun software.

R Di solito, questo genere di problemi è riconducibile all’hardware. Infatti, un modulo RAM difettoso può essere uno dei principali

imputati. Se poi consideriamo il modo in cui Linux si serve della memoria di sistema, è probabile che questi malfunzionamenti si verifichino più con il Pinguino che con Windows. Scaricate un’applicazione come memtest86+ da www.memtest.org e lanciate il controllo della memoria all’avvio del PC. Se vengono rilevati errori, avete trovato il problema. Un altro elemento che può causare crash casuali è il surriscaldamento del sistema. Provate a eseguire un programma per monitorizzare le prestazioni, oppure scaricate un’applet per la barra delle applicazioni che vi consente di vedere la temperatura della CPU e dei dischi fissi. Assicuratevi che tutte le prese d’aria del case siano libere e, se avete un po’ di dimestichezza con il cacciavite, date anche un’occhiata alla pasta termoconduttiva posta tra il dissipatore e la CPU. Per i computer desktop ci potrebbe essere anche una terza causa: l’alimentatore scadente. Le unità più economiche, infatti, tendono spesso a degradare le proprie prestazioni con il tempo, finendo per danneggiare gli altri componenti installati nel PC. Per questo genere di problema, l’unico test percorribile è provare a montare un altro alimentatore.

Problemi di stampa

D la mia distribuzione non ne vuole sapere di far funzionare la stampante. come faccio a installare i driver?

R Il modo in cui si installano i driver, così come la loro disponibilità, dipende dal modello della stampante che avete. Il primo passo

è collegarsi al sito http://linuxprinting.org e controllare il database presente. Se avrete l’accortezza di eseguire questa operazione prima ancora di acquistare una stampante, potrete risparmiarvi notevoli perdite di tempo. Basta inserire la marca e il modello e il motore di

010_023_LXP_147_LXF189.feat_solve 14 22/10/14 17:17

14 LINUx PRO 146 LINUx PRO 146 15

Risolvi i problemi di Linux Risolvi i problemi di Linux

14 LINUx PRO 147 LINUx PRO 147 15

“i dischi ssD sono molto più veloci dei modelli tradizionali e per installarli non c’è molto da fare”

se volete cancellare in modo definitivo il contenuto di un disco fisso, allora Darik’s boot and nuke è la soluzione migliore

usando GParted si può partizionare qualsiasi disco fisso, tanto ssD quanto quelli di tipo meccanico

ricerca interno al sito vi saprà dire se esiste il supporto e di quali driver c’è bisogno. CUPS, il sistema di stampa utilizzato da Linux, è dotato di parecchi driver; molto spesso, quindi, non dovrete installare alcunché, perché il riconoscimento della stampante avviene in automatico. Tuttavia ci sono ulteriori driver nel pacchetto Gutenprint (Linuxprinting.org vi dirà se ne avete bisogno). HP, per esempio, fornisce driver Open Source per le sue stampanti, pertanto, se avete un modello di questo produttore, basterà installare il pacchetto hplip. Altre aziende, invece, forniscono pacchetti binari Closed Source. Controllate se la vostra distro permette di scaricarli, altrimenti, come ultima risorsa, dovrete integrarli nel sistema seguendo le istruzioni presenti sul sito Web del produttore della stampante. Una volta che avete installato i driver corretti, è possibile impostare il dispositivo utilizzando lo strumento di amministrazione dedicato, oppure far uso dell’interfaccia Web di CUPS. Per utilizzarla, basta puntare il browser all’indirizzo http://localhost:631 e fare click sul menu Amministrazione, poi su Aggiungi stampante e seguire le istruzioni.

opzioni per gli ssD

D Vorrei sostituire il mio disco fisso con un ssD. come faccio a impostare il tutto? inoltre, c’è qualcosa a cui

devo stare particolarmente attento? sto pensando ai problemi causati scrivendo troppo spesso su una memoria flash. che dire poi del tRim?

R Per installare un disco SSD non c’è poi tanto da fare. I tipici strumenti di partizionamento vanno benissimo sia per unità allo

stato solido sia per quelle meccaniche. Nonostante gli SSD siano molto più veloci di un modello tradizionale, vi consigliamo di aggiungere noatime per le opzioni di mount in /etc/fstab. A questo punto, ci sono poi un paio di opzioni per i vostri dati che vale la pena prendere in considerazione. Potete eseguire il backup della directory home e fare una nuova installazione su SSD, oppure niente vieta di copiarvi tutto al suo interno. Per farlo, vi consigliamo di eseguire il boot da un CD live. Montate ogni partizione a parte gli swap in entrambe le unità, quindi utilizzate rsync per copiare ogni cosa su tutte le partizioni:rsync -a /mnt/vecchia_partitione/ /mnt/nuova_partitione/

Avrete anche bisogno di reinstallare Grub come bootloader, utilizzando per esempio un programma come Rescatux solo con le nuove unità. TRIM, invece, è un comando che permette di fare pulizia nelle aree non più utilizzate dallo stoccaggio dati. Potete abilitarlo in due modi. Il metodo più semplice è aggiungere relatime e scartare le opzioni di mount in /etc/fstab. L’unico inconveniente, tuttavia, è che questo può rallentare l’unità durante le fasi di avvio del computer. Per questo molti preferiscono eseguire fstrim quando il computer è già avviato. Un task Cron che può eseguire fstrim --all una volta alla settimana dovrebbe essere sufficiente per qualsiasi

evenienza. L’opzione --all abilita il TRIM per ogni filesystem che lo supporta, ignorando invece gli altri. Aggiungete poi l’opzione --verbose così che Cron invii una sintesi di ciò che ha fatto.

eliminare i file definitivamente

D Prima di smaltirlo, vorrei fare in modo che il mio disco rigido venga completamente cancellato. so che eliminare

i soli file non è sufficiente, ma cosa dovrei fare per distruggere completamente ogni traccia dei miei dati?

R Dipende da cosa si intende per smaltimento dell’unità. Se la state gettando via, un grosso martello è perfetto per scongiurare

qualsiasi recupero dei dati. Tuttavia esistono metodi ben più sofisticati per cancellare qualsiasi traccia d’uso di un disco fisso, molti dei quali lasciano l’unità in perfetto stato per poter poi essere riutilizzata. Come detto, cancellare semplicemente i dati non è sufficiente per evitare

che vengano recuperati. Infatti, in questo modo non si fa altro che rimuovere le loro voci dalla tabella della directory, mentre i file continuano a rimanere al loro posto. È quindi necessario sovrascrivere tutto svariate volte per essere davvero sicuri che qualsiasi cosa non sia più rintracciabile. Per compiere questa operazione con una sequenza di zeri, è sufficiente utilizzare:sudo dd if=/dev/zero of=/dev/sdb bs=4k

Questa istruzione, ovviamente, non può essere utilizzata sull’unità di sistema. Se quindi è proprio questa che si vuole cancellare, dovrete lanciare il comando da un CD live. Se può darvi maggiore tranquillità, per sostituire gli zeri con alcuni dati casuali, basta usare /dev/urandom al posto di /dev/zero. Siate poi consapevoli che il comando dd non chiede se siete sicuri di cosa state facendo e quindi non attua alcun doppio controllo prima dell’attivazione della procedura. Una volta che premete invio, i dati sul disco vengono eliminati del tutto. Pertanto, quando lo usate, fate sempre massima attenzione. Se anche con i metodi che abbiamo elencato non riuscite a stare tranquilli, allora è bene prendere in considerazione la possibilità di eseguire sovrascritture multiple. In questo caso si può ricorrere a uno specifico programma chiamato Darik’s boot and nuke (DBAN) che potete trovare alla pagina http://www.dban.org. Si tratta di uno dei software più efficaci in circolazione per questo genere di attività e può essere paragonato a una martellata ben assestata. In pratica, è ideale anche per le persone più paranoiche.

010_023_LXP_147_LXF189.feat_solve 15 22/10/14 17:18

16 LINUx PRO 146 LINUx PRO 146 17

Risolvi i problemi di Linux Risolvi i problemi di Linux

16 LINUx PRO 147 LINUx PRO 147 17

Problemi di sistemaDrive pieni

D lo spazio a disposizione del mio disco rigido sembra scomparire. Dov’è finito e come posso recuperarlo?

R Se si hanno più partizioni, il primo passo è capire come sono organizzate tramite il comando df:

df -hQuesto mostra lo spazio totale utilizzato e disponibile su ciascuna. Se avete una /home separata, è opportuno capire se è proprio questa a occupare la maggior parte della memoria. Le misure da adottare, in questo caso, sono sempre le stesse, anche se è necessario essere root per ripulirla a dovere. Per i file di sistema, le directory incriminate solitamente sono /tmp e /var. La prima è utilizzata per i file temporanei e spesso si satura di documenti vecchi e inutili soprattutto quando i processi lavorano senza poi far pulizia. /var/log, invece,

in cerca di guaiLinux registra quasi tutto e, quando qualcosa va storto, i registri sono il primo posto dove guardare. Il registro di sistema è in /var/log e di solito lo trovate con il nome di messages o syslog secondo lo strumento utilizzato dalla distro. Se il programma foo si comporta male, provate a cercare messaggi con:grep foo /var/log/messages

Inoltre, potete guardare i messaggi di log immediatamente in tempo reale con:tail -f /var/log/messages

Questo comando consente di visualizzare nel registro le nuove voci appena compaiono. Eseguendo l’istruzione in un terminale, potrete così avere subito sott’occhio qualsiasi cosa accada, compreso capire al volo l’origine dei problemi. Il buffer del kernel può essere letto con il comando dmesg, utile se si hanno difficoltà con l’hardware. Possiede perfino l’opzione follow:dmesg --follow

utile quando si tratta di hardware connesso a caldo.

Per vedere come vengono rilevate le periferiche integrate e gestite in fase di avvio, invece, usate:dmesg | less

dopo il boot. Premete poi / per cercare qualche informazione rilevante. Se la distro utilizza systemd, le voci di registro possono essere visualizzate con journalctl. Potete quindi procedere conjournalctl --follow

o cercare gli errori dall’ultimo avvio con:journalctl -b -p err

Risolviamo le più comuni difficoltà

Filelight, come Gnome Disk usage Analyser, può darvi una rappresentazione grafica di come siete riusciti a riempire il disco fisso

contiene i file log di sistema e si può riempire a dismisura quando un processo sta registrando parecchi errori. Date un’occhiata ai file di grandi dimensioni contenuti in queste cartelle e considerate se vale la pena eliminarli. Valutate anche la possibilità di installare logrotate che ha il compito di tenere i file di log sotto controllo. Per impostazione predefinita, questo programma avvia un nuovo file di registro settimanale e ogni sette giorni provvede a comprimere l’ultimo, mantenendo poi i log degli ultimi 28 giorni. Questo modo di procedere permette così di risparmiare una quantità di spazio impressionante. Nella vostra directory home, controllate la cartella download, il browser, la cache del mailer e anche la cartella .cache. Potete poi utilizzare du per appurare le dimensioni delle directory:du -sh * | sort -h

in questo modo avrete un elenco preciso di tutti i file ordinati per grandezza. Se invece volete valutare le cartelle nascoste, usate:du -sh .[0-9a-z]* | sort -h

Ci sono poi strumenti grafici per visualizzare l’utilizzo del disco (Filelight per KDE e Disk usage Analyser per Gnome). bleachbit, invece, è utile per identificare i file non necessari come quelli presenti nella cache del browser.

che fine ha fatto la memoria?

D Ho notato che dopo l’esecuzione di linux per un po’ la memoria viene saturata. come posso capire quale

processo la sta usando in modo così massiccio?

R È perfettamente normale ed è il modo in cui Linux è progettato per funzionare. La memoria libera corrisponde a una porzione

di RAM inutilizzata che entra in azione quando è necessario incrementare le prestazioni del PC. Infatti, il kernel di Linux alloca la memoria di cui i processi non si servono in modo da migliorare le attività. Potete vederlo in modo chiaro con il comando free -h. total used free shared buffers cachedMem: 15G 15G 128M 982M 396K 13G-/+ buffers/cache: 2.3G 13G

In un computer dotato di 16 GB di memoria fisica, solo 128 MB vengono segnalati come liberi. Al di fuori di questa, 13 GB sono utilizzati come buffer. In questo modo, l’accesso al disco è notevolmente migliorato, in quanto i dati vengono messi nella cache in attesa del prossimo utilizzo in scrittura e lettura. Se poi la memoria è necessaria per qualcosa di più importante, verrà subito messa a disposizione. È importante ricordare che non è solo il filesystem

010_023_LXP_147_LXF189.feat_solve 16 22/10/14 17:18

16 LINUx PRO 146 LINUx PRO 146 17

Risolvi i problemi di Linux Risolvi i problemi di Linux

16 LINUx PRO 147 LINUx PRO 147 17

“Memoria libera è quel parametro che indica la RAm inutilizzata e utile a migliorare le prestazioni del Pc”

nei monitor di sistema, guardate i riquadri che escludono la memoria utilizzata dai buffer del filesystem

a rimanere in memoria. Per fare un esempio, prendete nota di quella libera. Adesso avviate e arrestate un programma pesante come Firefox e vedrete che la memoria non utilizzata diminuisce. Se riavviate il browser una seconda volta, noterete come la velocità di esecuzione sia maggiore. Questo perché il kernel mantiene i dati in memoria pronti per l’uso successivo. Lo stesso concetto vale anche per le librerie condivise.

spostare la home

D Ho sentito dire che è meglio avere la directory /home in una partizione separata. Perché e come posso farlo?

R Ci sono una serie di motivi per spostare la directory /home in una partizione separata. Primo tra tutti la possibilità di

mantenere i vostri dati e quelli di tutti gli altri utenti distaccati dal sistema operativo. In secondo luogo, un altro vantaggio, sta nella semplificazione dei processi di backup. Ciò significa che è possibile aggiornare o addirittura sostituire il vostro sistema operativo pur mantenendo tutte le impostazioni personali. Il modo più semplice per eseguire questa procedura è utilizzare Gparted e un disco fisso separato. Assicuratevi che l’unità sia formattata con un filesystem Linux, in modo da conservare tutte le informazioni salvate con i file, quindi utilizzate rsync per copiare i dati al suo interno.sudo mkdir /media/extdrive/home/sudo rsync -a --delete /home/ /media/extdrive/

Questo comando presuppone che l’unità separata sia montata in /media/extdrive. Ci sono poi altri strumenti che potete utilizzare per la copia, ma rsync ha un vantaggio pratico: se il trasferimento dovesse interrompersi, potreste sempre riprenderlo dal punto in cui si è fermato. In pratica, potete continuare a usare il PC anche mentre eseguite questa operazione. A questo punto dovrete utilizzare un CD live per la fase successiva dove eliminerete il contenuto di /home, quindi sarà necessario utilizzare Gparted per ridimensionare la partizione di root a una grandezza ragionevole (20 GB dovrebbero essere sufficienti, ma considerate circa il 50% in più rispetto allo spazio attualmente usato). Adesso generate una nuova partizione subito dopo quella di root, quindi formattatela usando ext3. Caricate il file /etc/fstab dalla partizione di root in un editor e aggiungete una riga in più con:/dev/sdaN /home ext4 defaults,noatime 0 0

dove sdan è la partizione appena creata. Infine copiate i dati dal disco esterno alla nuova /home, quindi riavviate. Potete eseguire ugualmente l’operazione senza un disco esterno, ma il tutto diventa più complesso e laborioso.

iD illeggibili

D trovo l’uso di uuiD in /etc/fstab fastidioso. cosa c’è che non va nel vecchio sistema che prevedeva l’utilizzo

dei device nodes come /dev/sda1? Posso tornare a usare quest’ultimo metodo?

R Il problema con i device nodes è che possono cambiare. Se si aggiunge o si rimuove un disco, comprese le unità flash

USB, oppure si modifica l’ordine di avvio dal BIOS, sda può diventare sdb. UUID, dall’altra parte, sono (abbastanza) esclusivi; non importa se cambia l’ordine delle unità, quella stringa rimane sempre la stessa. Questo, però, è anche il problema: UUID vanno bene per i computer perché forniscono un’identificazione semplice e affidabile, ma non sono facilmente comprensibili da noi esseri umani. Un compromesso potrebbe essere etichettare il filesystem. Se la partizione di root è su /dev/sda1, è possibile eseguire:sudo e2label /dev/sda1 root

A questo punto modificate le specifiche del dispositivo in /etc/fstab da “uuiD=youllneverreadorrememberthis” a “lAbel=root”. A differenza di molte operazioni sul filesystem di root, questa può

essere compiuta senza problemi su un sistema in esecuzione. Una volta riavviato, avrà effetto. Infine un consiglio pratico: se dovesse capitarvi di dover spostare un’unità tra due computer, utilizzate sempre un’etichetta meno generica di “root”.

copiare un disco fisso

D come faccio a clonare un disco rigido completo? sto usando ubuntu, ma l’unità contiene anche Windows.

R Clonare un disco di sistema in esecuzione è assai pericoloso e il motivo è molto semplice: il sistema operativo potrebbe

modificare i file nel momento in cui si sta tentando di clonare l’unità. Il modo più semplice e sicuro per eseguire questa operazione è utilizzare cloneZilla. Masterizzate la ISO su DVD e avviatela.

se volete clonare un intero disco fisso oppure anche solo una semplice partizione, cloneZilla è la soluzione migliore

010_023_LXP_147_LXF189.feat_solve 17 22/10/14 17:18

18 LINUx PRO 146 LINUx PRO 146 19

Risolvi i problemi di Linux Risolvi i problemi di Linux

18 LINUx PRO 147 LINUx PRO 147 19

Problemi softwareinstallare i software

D sono nuovo del mondo linux e non riesco a capire come installare le applicazioni. su Windows vado sul sito Web

del programma, scarico l’.exe e lo eseguo. in linux non è così.

R Com’è facile intuire, su Linux l’installazione del software segue regole diverse. I programmi sono generalmente forniti come

codice sorgente che viene poi inserito in determinati pacchetti dalle distro. In questo modo siete sempre sicuri che il software utilizzato è pienamente compatibile con l’ambiente in cui si esegue. Per i nuovi arrivati su Linux, uno dei migliori punti di partenza per installare nuovi programmi è il Software Manager. Questo funziona come un grande database in cui è possibile cercare e scaricare applicazioni di qualsiasi genere. Oltre a ciò, si prenderà cura di recuperare tutte le dipendenze necessarie ai programmi per funzionare a dovere e vi comunicherà quando sono disponibili nuovi aggiornamenti. Così facendo, non sarà necessario doversi recare sulle pagine ufficiali dei software per controllare la presenza di nuove versioni.

usare il sorgente

D Voglio installare un programma, ma non c’è alcun pacchetto disponibile per la mia distro. il sito Web, infatti,

fornisce solo il codice sorgente. come lo installo?

R Le modalità da attuare per installare un programma dal proprio codice sorgente variano a seconda del software. Il primo passo

è decomprimere il file tarball o lo zip, quindi cercare un documento

lanciare tutto dalla shellSe un programma non riesce ad avviarsi dal desktop, oppure viene lanciato ma poi si blocca, provate a eseguirlo dal terminale. Nella maggior parte dei casi, seppure così facendo non si riesca sempre a farlo funzionare, avrete a disposizione una serie di istruzioni che vi permetteranno di informarvi sull’eventuale problema riscontrato. In questo modo riuscirete

a capire quantomeno dove iniziare a mettere le mani per risolverlo. Questo, ovviamente, presuppone che conosciate il nome del comando per eseguirlo da terminale. Nella maggior parte dei casi, comunque, altro non è che la versione minuscola del nome dell’applicazione. Pertanto, se volete lanciare Firefox, basterà usare:

dpkg -L firefox | grep bin/In questo caso, la l maiuscola serve per cercare i file del pacchetto anziché i pacchetti installati. L’RPM equivalente, invece, èrpm -ql | grep bin/

La funzione grep mostra solo i fine installati in una delle directory *bin, anziché la lista completa dei pacchetti.

I programmi si comportano in modo anomalo?

non serve setacciare il Web in cerca di programmi. il primo luogo dove andare a vedere è il Gestore applicazioni della vostra distribuzione

chiamato Readme o install. Al suo interno, di solito, viene spiegata la procedura da seguire per l’installazione. Nel 90% dei casi, viene utilizzato il sistema autotools, che consiste nell’utilizzare tre comandi per costruire e installare il software. Questi devono essere eseguiti all’interno della directory in questione che viene creata nel momento in cui si decomprime il tarball. Stiamo parlando di:./configuremakesudo make install

Il primo comando verifica che il sistema abbia tutte le dipendenze richieste e imposta l’ambiente per lavorare con la vostra distro. Il secondo compila il codice sorgente nei programmi da eseguire sul proprio computer. Il terzo, infine, installa i suddetti software nelle posizioni corrette e gestisce qualsiasi configurazione finale. Avrete bisogno di un ambiente standard per eseguire questo genere di operazione. La maggior parte delle distro, a tal proposito, ha un pacchetto chiamato build-essentials che installa tutto il necessario per costruire e installare i programmi dai sorgenti. Infine una raccomandazione: non cancellate la directory di origine dopo l’installazione. Se si desidera rimuovere il software in un secondo momento, potrà tornare molto utile con il comando:sudo make uninstall

nessun drive DVD

D Ho un’immagine iso che posso masterizzare su un cD/DVD, ma voglio usarla su un computer portatile senza

lettore DVD. Posso servirmi di una chiave usb?

R Certo, non c’è nessuna controindicazione. L’approccio esatto, però, dipende dal tipo di immagine ISO. Alcune distribuzioni

vengono rilasciate con ISO ibride che funzionano sia con i DVD sia con le chiavi USB. In questo modo, potrete copiarle su qualsiasi disco ottico oppure su una memoria flash tramite il comando dd:sudo dd if=distro.iso of=/dev/sdb bs=4k

dove if è il file da copiare e of è la destinazione (bs=4k accelera il processo in modo piuttosto sensibile, anche se non è obbligatoria). Attenzione: dd fa esattamente quello che dice senza restituirvi alcuna doppia richiesta di sicurezza; è pertanto opportuno fare attenzione nell’aver indicato l’unità di destinazione corretta. A qualcuno sarà venuto in mente di domandarsi come si fa a capire quando si è di fronte a una ISO ibrida. Il sito Web della distro potrà fornirvi indicazioni in merito, ma potete provare anche con fdisk:sudo fdisk -l distro.iso

Se la riga sotto Device include il nome dell’immagine ISO, allora si

010_023_LXP_147_LXF189.feat_solve 18 22/10/14 17:19

18 LINUx PRO 146 LINUx PRO 146 19

Risolvi i problemi di Linux Risolvi i problemi di Linux

18 LINUx PRO 147 LINUx PRO 147 19

xkill chiuderà la prima finestra su cui si fa click, così come il processo di riferimento

tratta di un ibrido. Nel caso invece non lo sia, potete convertirla con isohybrid. Prima di farlo, però, potrebbe essere necessario installare il pacchetto syslinux:isohybrid distro.iso

Adesso fdisk dovrebbe mostrarla come un ibrido e quindi si può usare dd per memorizzarla in una chiavetta USB.

troppo lento

D il mio computer è veramente troppo lento e non capisco cosa possa essere successo. la macchina, infatti, ha una

configurazione hardware abbastanza potente.

R La causa più probabile di un problema del genere è da ricercarsi in un processo che monopolizza la maggior parte delle risorse

disponibili. Il programma da utilizzare per capire di cosa si tratta è top. Eseguitelo dal terminale e vi mostrerà un riepilogo dell’utilizzo generale del sistema, più un elenco di programmi in ordine d’uso della CPU. La terza linea, invece, visualizza l’andamento complessivo del processore. In pratica, vi troverete di fronte a qualcosa di simile:%Cpu(s): 0.7 us, 0.2 sy, 0.0 ni, 99.1 id, 0.0 wa, 0.0 hi,

0.0 si, 0.0 stLe prime tre cifre mostrano che gran parte della capacità posseduta dalla CPU viene utilizzata dall’utente, dal sistema e da altre attività. La quarta cifra, invece, mostra l’idle, vale a dire la quantità di tempo in cui il processore non viene utilizzato. Se il valore è vicino allo zero, avete capito perché il computer è lento. Consultate quindi l’elenco delle attività per vedere qual è quella che si sta mangiando la CPU. Se si dispone di un processore multi-core, premendo 1 cambiate la visualizzazione tra l’uso generale e quello dei singoli core. La dicitura wa (wait) è un dato altrettanto significativo e indica quanto tempo la CPU è in attesa di I/O. Questo valore può essere molto alto durante le operazioni intensive del disco. Se di solito è sopra la media, il problema che rallenta il PC è da ricercarsi nel disco. Si tratterà pertanto di errori di lettura o di un filesystem quasi pieno che è diventato molto frammentato. Guardate la riga della memoria. Se questa è piena e lo swap è in uso, allora si perderà terreno nel campo delle prestazioni. L’elenco delle attività è ordinato per utilizzo della CPU, ma premendo F è possibile far comparire una visualizzazione a campi. Spostate il cursore su quello che volete ordinare e premete s seguito da Q. Se la memoria è insufficiente, così potrete capire molto meglio quali sono i programmi responsabili di tanto uso.

Password persa

D Ho recentemente reinstallato linux e ho mantenuto la stessa password. tuttavia non riesco a fare il login.

c’è un modo per trovare o resettare la parola chiave?

R È impossibile reimpostare la password di avvio da un CD/DVD live, sia che si faccia uso di un disco di ripristino come Rescue

System CD sia che si tratti del CD della vostra distro. Il primo passo è identificare la partizione in cui è installata la distribuzione (si tratta del filesystem di root, la directory home non è necessaria). Se si riesce a raggiungere il desktop grafico, potete sfogliare le unità disponibili valutandone le dimensioni fino a trovare quella che contiene directory come bin, etc e lib. Una volta che avete montato la partizione corretta, tipo /mnt/miaroot, potete usare chroot per il fix:sudo chroot /mnt/miaroot /bin/bash

Questo comando cambia la directory di root con il percorso che gli si dà ed esegue il comando seguente. In questo modo si passa alla radice del sistema installato e si gestisce la shell Bash come root. Adesso che siete all’interno della vostra installazione, si può modificare la password con:passwd vostronomeutente

A questo punto vi verrà chiesta la nuova chiave di accesso due volte. Premete ctrl+D per uscire da chroot, riavviate dal disco fisso, quindi dovreste essere in grado di accedere nuovamente.

chiusura forzata dei programmi

D sto eseguendo alcune applicazioni che però ogni tanto vanno in crash. Quando si verifica il problema,

le finestre rimangono aperte. come faccio a chiuderle e a riavviare il software correttamente?

R Se il programma ha un’interfaccia grafica, la risposta più semplice è usare la funzione xkill che di solito è installata

per impostazione predefinita. Quando si esegue, il puntatore del mouse si trasforma in un teschio con le ossa incrociate e la finestra su cui si fa click viene chiusa forzatamente. Pertanto è opportuno fare attenzione a dove si punta. Ci sono anche delle alternative da linea di comando: kill, per esempio, esegue una chiusura partendo dall’ID del processo che si vuole terminare. Killall funziona in modo analogo, ma utilizza i nomi dei programmi anziché gli ID. Entrambi inviano un segnale TERM di default che chiude il programma in modo ordinario. Se non dovesse riuscire aggiungete -Kill agli argomenti, così da rinforzare l’istruzione killall -KILL nomeprogramma

Se volete utilizzare kill, ci sono comunque vari modi per trovare l’ID del programma in questione. Se il processo utilizza parecchia CPU o molta RAM, si può decidere di eseguire la chiusura dal monitor di sistema premendo il pulsante K. In caso contrario, utilizzate pgrep:pgrep -fl nomeprogramma

L’opzione -fl permette di vedere la riga di comando completa, in modo da essere sicuri che si stia chiudendo il processo giusto senza fare errori.

top offre una panoramica delle risorse di sistema utilizzate, nonché l’elenco dei programmi più pesanti

010_023_LXP_147_LXF189.feat_solve 19 22/10/14 17:19

20 LINUx PRO 146 LINUx PRO 146 21

Risolvi i problemi di Linux Risolvi i problemi di Linux

20 LINUx PRO 147 LINUx PRO 147 21

Rimanere connessinavigazione lenta

D la mia connessione a internet va davvero a rilento. È un problema della mia distro linux, oppure devo

modificare le impostazioni del mio router?

R Almeno nelle fasi iniziali, il nostro consiglio è stare lontani dal router per evitare di causare danni con impostazioni

sbagliate. Il primo passo, invece, è verificare dati alla mano le reali prestazioni della linea. Potete farlo con http://speedtest.net, controllando poi gli eventuali servizi in background che assorbono maggiormente la banda a disposizione. Un buon programma per questo genere di controllo è nethogs, che potete installare direttamente dal vostro gestore pacchetti.sudo nethogs eth0

Questo programma ripropone una lista dei processi che usano la banda, ordinandoli per quantità utilizzata. Andando oltre, valutate per un attimo il tipo di connessione del router. Se state usando il wireless, vale la pena provare a sfruttare un cavo Ethernet. Oltre a non soffrire dei normali problemi di cui risente un collegamento senza fili, così facendo evitate eventuali interferenze dovute ad altri apparecchi che usano la stessa frequenza di trasmissione. Se volete continuare a servirvi del Wi-Fi, conviene dare un’occhiata ai canali utilizzati tramite questo comando:sudo iwlist wlan0 scan | grep -e Address: -e Channel: -e ESSID:

iwlist crea parecchi output su ogni punto di accesso che scopre. Da qui la necessità di filtrarlo con grep. Inoltre è possibile utilizzare

la penultima spiaggiaQuando il computer sembra totalmente bloccato e non c’è modo di capirne il motivo, l’ultima risorsa è staccare la spina con tutti i rischi annessi e connessi. Tuttavia, prima di farlo, c’è un altro sistema che potete sfruttare: fare uso delle chiavi magic sysReq. Si tratta di speciali combinazioni di tasti che possono essere utilizzate per arrestare un sistema bloccato senza per forza togliere l’alimentazione. Il loro nome deriva dal fatto che usano la chiave SysReq assegnata al tasto stamp. Anche se la vostra tastiera sembra del tutto bloccata, queste chiavi lavorano

ugualmente, poiché il kernel le percepisce senza alcuna interfaccia software che possa intralciare. Tenete premuto i tasti Alt e stamp, quindi usate

R – Resetta la tastiera. e – Chiude tutti i programmi ancora attivi

utilizzando KILL. i – Interrompe il funzionamento di tutti

i software utilizzando TERM. s – Sincronizza tutti i filesystem. u – Smonta i filesystem e li rimonta direttamente

in sola lettura.

b – Riavvia il sistema.Per ricordare questi tasti ci sono vari trucchi mnemonici ma nessuno di questi aiuta veramente a tenerli a mente in modo facile. Il consiglio che possiamo darvi è quindi di scriverli in una rubrica e tenerli a portata di mano. Considerate poi che il tasto che utilizzerete più spesso è l’ultimo, vale a dire quello che permette di riavviare il sistema. In questo modo, riuscirete nell’intento di sbloccare il computer senza per forza doverlo sottoporre allo shock dello sbalzo di corrente.

Cerchiamo di risolvere i principali problemi di connettività

Wi-Fi Analyser su Android mostra i punti di accesso e i canali utilizzati. in questo modo potete impostare a dovere il vostro router

un programma come Wi-Fi Analyser che funziona su Android. Grazie a esso avete una visualizzazione grafica del canale usato, utile a valutare la forza di tutti i punti di accesso, così da mappare quelli in cui il segnale proveniente dal router è più debole. Un’altra prova un po’ empirica è alzare la cornetta del telefono e saggiare la qualità della linea. Se sentite dei fruscii, significa che il segnale è disturbato e avete trovato il motivo per cui la connessione è lenta. A questo punto non resta che contattare il vostro operatore di telefonia per richiedere un intervento tecnico per migliorare la qualità.

streaming video

D Quando cerco di vedere alcuni film in streaming con i servizi che ho sottoscritto, mi viene riproposto

il messaggio secondo cui il sistema non è supportato. Posso ingannarli facendogli pensare di usare Windows? in alternativa, ci sono altre soluzioni per ovviare al problema?

R La maggior parte dei servizi streaming a pagamento utilizzano Silverlight, una tecnologia proprietaria Microsoft

utile alla visione dei video e all’applicazione dei DRM. Silverlight per Linux non esiste, tuttavia c’è una soluzione chiamata Pipelight, vale a dire un plug-in per il browser che a sua volta utilizza Wine per eseguire SIlverlight. È necessario che Wine sia perfettamente aggiornato tramite tutti i pacchetti disponibili per le vostre distribuzioni. Gli utenti che usano distro basate su Ubuntu possono aggiungere un PPA e installare tutto con i comandi:sudo add-apt-repository ppa:pipelight/stablesudo apt-get updatesudo apt-get install pipelight-multi

Questo aggiunge il PPA di Pipelight e installa il software. Le istruzioni per utilizzarlo con altre distro si trovano su http://bit.ly/Pipelightin-stall. Per configuarlo procedete con:sudo pipelight-plugin --create-mozilla-pluginspipelight-plugin --enable silverlight

Questa istruzione scaricherà il software SIlverlight e configurerà i plug-in del browser. L’installazione di Pipelight, inoltre, non è sufficiente per guardare i video, in quanto l’accesso continuerà a essere negato a causa del rilevamento di Linux. Installate quindi una delle estensioni di controllo per lo user-agent, come user-agent-o-verrider o uacontrol su Firefox. Per Chrome esiste user-agent-swi-tcher.for-chrome. Adesso utilizzate questi plug-in per impostare

010_023_LXP_147_LXF189.feat_solve 20 22/10/14 17:20

20 LINUx PRO 146 LINUx PRO 146 21

Risolvi i problemi di Linux Risolvi i problemi di Linux

20 LINUx PRO 147 LINUx PRO 147 21

mtP è il nuovo modo di collegarsi ai dispositivi Android. siamo così in grado di continuare a usare il dispositivo mentre è montato sul desktop

Per utilizzare i servizi in streaming che sfruttano silverlight è necessario installare Pipelight

lo User Agent di Firefox in modo che il sistema di streaming lo scambi per un browser in esecuzione su Windows. A questo punto, non resta che godervi i film.

montare Android

D Ho acquistato un tablet Android nexus 7 e sono molto soddisfatto. Purtroppo, però, non riesco a montarlo come

dispositivo usb. Quando collego il mio telefono al Pc, per esempio, si apre una finestra sul dispositivo mobile in cui mi viene chiesto se voglio utilizzarlo come dispositivo di memorizzazione o procedere con il normale collegamento. Questo, però, con il tablet non avviene. come mai?

R Il problema con le USB è che il filesystem è montato su un sistema operativo alla volta. Ciò significa che prima di poter

montare il tablet sul computer come periferica di archiviazione di massa, il filesystem deve essere smontato dal dispositivo mobile. Ecco perché sul telefono si riceve il messaggio secondo cui le applicazioni che usano la scheda SD devono essere fermate. Sul Nexus 7 è ancora peggio, poiché non c’è alcun sistema di memorizzazione rimovibile e quindi non si può smontare un filesystem attualmente in uso sul sistema operativo. I dispositivi Android più recenti rimediano alla situazione tramite mtP (Media Transfer Protocol). A questo proposito ci sono alcune opzioni di montaggio per i dispositivi MTP sotto Linux, i quali vengono tutti implementati come filesystem FUSE. Noi, però, preferiamo utilizzare jmtpfs. Per montare il primo dispositivo trovato (è opportuno collegarne uno alla volta) scrivete jmtpfs seguito dal nome del punto di mount. Da notare che questa directory deve esistere ed essere scrivibile dall’utente seguendo il comando:jmtpfs ~/nexus

Adesso sarà possibile accedere ai contenuti del dispositivo mentre lo si sta utilizzando. Quando avete finito, smontatelo con:fusermount -u ~/nexus

Desktop remoti

D Vorrei essere in grado di accedere al desktop del mio computer da un’altra postazione. in pratica, in modo

simile a quanto avviene con la funzione Desktop Remoto di Windows. come posso fare?

R A questo proposito si può agire in due modi. Se si vuole procedere a un accesso completo di un computer desktop,

si può utilizzare Vnc. Questo programma è spesso installato per impostazione predefinita. Se così non fosse, utilizziamo il pacchetto

tightVnc o Vnc (il primo ha prestazioni migliori sulle reti più lente). Una volta fatto, non resta che eseguire il server sul computer a cui ci si vuole collegare, impostare la password di accesso ed eseguire il client sull’altra macchina. Se invece volete stabilire una connessione remota per eseguire un solo programma, c’è una soluzione più veloce. Infatti si può utilizzare SSH sul computer remoto, installando il pacchetto ssh-server. A questo punto potete verificare il funzionamento della connessione dal computer locale con:ssh user@hostname

Questo richiederà l’inserimento della vostra password, quindi si aprirà una sessione di shell sul computer remoto. Potete verificare di essere realmente connessi al PC in rete eseguendo l’istruzione uname-a. Adesso premete ctrl+D per il logout e provate a eseguire un programma grafico come:ssh -Y user@hostname nomeprogramma

Con questo comando si aprirà una finestra e, a seconda di come la distro imposta il proprio server SSH, si possono trovare più -x che -Y. Se non dovesse funzionare, controllate in /etc/ssh/sshd_con-fig nel computer che esegue il server e assicuratevi che contengax11Forwarding yes

Per inciso, se si utilizza lo stesso nome utente su entrambi i computer, è possibile lasciarne fuori uno con:ssh -Y hostname nomeprogramma

Qual è il mio indirizzo?

D Ho un Raspberry Pi che ho inserito nella mia rete. tuttavia non ne conosco l’indirizzo iP e quindi non

posso utilizzare ssH. come faccio?

R Se il dispositivo riceve l’indirizzo da un server DHCP, spesso è possibile configurare quest’ultimo affinché assegni un IP a un

determinato host. Inserite la scheda SD del Pi nel computer, quindi modificate il file /etc/hostname per impostare l’host. Di seguito configurate il DHCP dal router, così che a quello specifico nome venga assegnato un preciso indirizzo IP. In alternativa potete usare netdiscover (http://bit.ly/netdiscover) ed eseguirlo con:sudo netdiscover -i eth0 -r 192.168.1.0/24

dove -i è l’interfaccia di rete e -r il range IP utilizzato. In questo modo avrete un elenco completo di tutti gli host. Purtroppo il Pi si presenta solo come Unknow vendor; quindi, se si dispone di un dispositivo Android, è importante installare Fing che tramite un’interfaccia grafica riesce comunque a riconoscere il Pi. Una volta avuto l’indirizzo, è possibile usare SSH lanciando ipconfig per ottenere il MAC address. Questo sarà poi utile per dire al vostro server DHCP quale indirizzo assegnare. Raspbian, infine, riporta l’IP da /etc/rc.local nel momento stesso in cui viene lanciato.

010_023_LXP_147_LXF189.feat_solve 21 22/10/14 17:20

22 LINUx PRO 146 LINUx PRO 146 23

Risolvi i problemi di Linux Risolvi i problemi di Linux

22 LINUx PRO 147 LINUx PRO 147 23

Problemi desktop

Dove cercare aiutoAvete provato a risolvere il vostro problema, ma non siete riusciti nell’intento? In questo caso, il primo passo è iniziare a capire dove sta il malfunzionamento analizzando i vari messaggi di errore. Una volta fatto, usiamo la potenza di Internet per vederci chiaro, incollando il messaggio stesso in un motore di ricerca. Se qualcuno ha già affrontato il problema e lo ha risolto, lo troveremo. Invece, se siete alle prese con dei

malfunzionamenti imputabili alla vostra distro, provate a rivolgervi sul forum o sul sito Web dello sviluppatore. Più in generale, si può provare su http://linuxquestions.org. Molti programmatori, inoltre, utilizzano IRC che permette di ottenere una risposta veloce a tutti i problemi. Qualsiasi consiglio riceviate, non è comunque da prendere come oro colato. Prendetevi sempre qualche momento per verificarlo

e appurare che, eseguendolo, non si facciano ancora più danni. Una fonte molto preziosa di consigli è linux user Group (LUG). La maggior parte di queste comunità ha delle mailing list che vengono usate per comunicare, tuttavia non è raro imbattersi in un incontro dal vero. Se il problema è su un portatile, quindi, si potrebbe valutare l’idea di farlo vedere a qualche partecipante di un LUG durante una riunione.

Facciamo in modo che tutto funzioni a dovere

controllate i pacchetti in corso di aggiornamento. se c’è un nuovo kernel, alcune periferiche potrebbero smettere di funzionare fino a che non si reinstallano i driver

touch ~/noweseguite il programma e modificatene la configurazione, quindi uscite. Adesso, utilizzando il comando che segue, sarà possibile trovare tutti i file modificati nella vostra directory home:find ~ -newer ~/now

Una volta trovato il file di gestione o la directory incriminata, è necessario rinominarli ed eseguire l’applicazione per tornare a una configurazione standard. Ricordate poi che creare un nuovo utente e accedere con esso porta allo stesso risultato, ma con meno dispendio di energia e tempo.

Accesso negato

D sono sicuro che la password utilizzata per accedere a ubuntu è corretta, ma il sistema non mi lascia entrare.

Peraltro ho attivato la funzione di accesso automatico. se poi provo a utilizzare la modalità provvisoria, la password viene riconosciuta senza problemi.

R Il problema non è da imputare alla password, altrimenti non si potrebbe accedere alla console di ripristino. C’è qualcos’altro che

impedisce l’accesso al desktop ed è anche il motivo per cui il sistema chiede di immettere la chiave nonostante sia attivata la procedura di auto-autenticazione. Di solito, questo genere di problema, è causato da un errore di configurazione del desktop. Per esempio, è possibile che si sia modificato un file di sistema con i permessi root. Per tentare di risolvere il malfunzionamento, per prima cosa avviate un recovery, quindi accedete con l’utente interessato ed eseguite il comando che

che fine ha fatto il desktop?

D Ho applicato alcuni aggiornamenti di sistema come notificatomi da ubuntu. Dopo il riavvio, però, mi sono

trovato di fronte a una schermata nera con un prompt di login e un cursore lampeggiante. in pratica, è sparito il desktop.

R Questo succede perché l’aggiornamento del sistema prevede l’installazione di un nuovo kernel che è diventato predefinito

non appena si è riavviato il computer. Se si utilizza una scheda grafica con driver di terze parti, come Nvidia, è necessario reinstallare i driver prima di poter accedere di nuovo al desktop. Se sono stati installati i driver tramite il Software Center, questo avrebbe dovuto occuparsi della reinstallazione, ma se invece avete installato i componenti manualmente, allora dovrete pensarci voi stessi. Se si utilizza un driver Open Source, questo è incluso con il kernel. Con i driver binari, invece, il modulo è compilato e installato da un programma di terze parti. La buona notizia è che si può riavviare, selezionare il kernel precedente dal menu di avvio e riottenere così il tanto agognato accesso. In seguito si potrà installare nuovamente i driver in questione.

errore utente

D un determinato programma ha iniziato a funzionare in modo anomalo. l’ho reinstallato, ma non ho risolto

alcunché. come mai?

R Avete aggiornato recentemente il programma in questione o le librerie che utilizza? Date un’occhiata ai file di log del

gestore pacchetti, in modo da vedere cosa è stato installato di recente (chi usa Ubuntu o le distro basate su Debian trova tutto in /var/log/apt/history.log). Se non si evidenzia alcun cambiamento, è probabile che si sia verificato un errore di configurazione. Reinstallare il pacchetto non influenza le impostazioni degli utenti memorizzate da qualche parte nella directory home. Ecco perché non si è riusciti a risolvere il problema. Il modo più semplice per verificarlo è creare un nuovo utente, accedere con quest’ultimo e provare lo stesso software il quale userà le opzioni predefinite. Se il problema scompare, allora si tratta di un semplice errore di configurazione. Il passo successivo è trovare dove il programma memorizza le sue impostazioni. KDE, per esempio, prevede che i programmi archivino tutto in ~/.kde4/share/config, ma molti altre applicazioni utilizzano .config, .local o scrivono loro stessi la propria configurazione nella directory home. Un modo semplice per trovare tutti i file modificati da un programma è utilizzare il comando find. Prima di tutto create un file con la marca temporale corretta:

010_023_LXP_147_LXF189.feat_solve 22 22/10/14 17:21

22 LINUx PRO 146 LINUx PRO 146 23

Risolvi i problemi di Linux Risolvi i problemi di Linux

22 LINUx PRO 147 LINUx PRO 147 23

se continuate a trovarvi nella schermata di login, potreste avere qualche problema nei permessi e nella proprietà dei file

creare un nuovo utente con impostazioni predefinite è il miglior modo per capire se un software ha problemi con lo specifico account che state utilizzando

segue per ripristinare le proprietà di tutti i file nella directory home: sudo chown -R ${USER}: ~

Il comando chown viene utilizzato per modificare le proprietà dei file. L’opzione -R ordina al sistema di applicare le modifiche a tutti i file nel percorso indicato. La variabile d’ambiente ${useR} espande il nostro nome account (ecco perché è necessario eseguire il log-in con esso). I due punti che seguono (:) il nome utente ordinano a chown di cambiare anche le proprietà del gruppo cui appartiene lo user. Infine, la shell si espande (~) al percorso della directory home. Naturalmente, avrete bisogno di lanciare il tutto con sudo così da avere permessi di root. Se il problema persiste, controllate .xsession-errors nella directory home.

Dispositivo bloccato

D Quando cerco di espellere un DVD o rimuovere un’unità usb, il sistema a volte si rifiuta di eseguire l’operazione,

restituendomi un messaggio del tipo: “operazione non riuscita. Dispositivo in uso”. come faccio a risolvere il problema senza spegnere forzatamente il computer?

R In questo caso, qualche programma ha posto un blocco su un file o una directory del filesystem che si desidera

smontare. Ecco perché il sistema operativo si rifiuta di eseguire questo genere di operazione. Il comando lsof elenca tutti i file aperti, tra cui le directory e i device nodes. Filtrando le informazioni attraverso grep, è possibile trovare il processo colpevole. Per esempio:# lsof | grep /media/cdrombash 15243 nelz cwd DIR 11,0 6144 1856 /media/

cdromQuesto dimostra che Bash, in esecuzione sotto il nostro utente, ha bloccato CWD in quella directory. In altre parole c’è una shell aperta che visualizza la directory del CD. A questo punto basta usare il comando cd all’interno di quella specifica shell per tornare così alla directory home e quindi sbloccare lo smontaggio del CD. In pratica, tutto sta nel capire quale programma pone il blocco, per poi lavorarci su e fare in modo di rimuovere il problema. In alternativa, potete usare il comando fuser che restituisce semplicemente l’ID del processo che sta opponendo resistenza:# fuser /media/cdrom/media/cdrom: 15243c

Vedrete quindi che è lo stesso PID fornito da lsof. Quest’ultimo può sembrare meno utile e in effetti lo è, poiché abbiamo solo bisogno di trovare la shell e cambiare directory. Tuttavia fuser

ha un asso nella manica. Usando il comando:fuser -k /media/cdrom

troveremo il PID e invieremo un segnale KILL per terminare immediatamente il programma rilasciando il blocco. In definitiva, si tratta di un’azione molto utile quando un software va in crash e lascia bloccato un particolare dispositivo. In questo modo, eviterete di scollegare la periferica forzatamente.

che fine ha fatto quel file?

D non so se è la mia età, ma ho l’abitudine di salvare i file in un percorso e poi dimenticarmi dove sono.

c’è qualche modo per aiutare la mia memoria?

R Oltre a qualcosa come il desktop semantico di KDE che indicizza tutti i file creati, ci sono un paio di opzioni generali

utili da conoscere. La prima è find che individua i file in base a vari criteri. Per esempio, se vi ricordate l’ultima volta che si è salvato un documento, è possibile utilizzare -mtime per cercare la modifica attraverso la data di modifica:find ~ -type f -mtime 0find ~/documenti -type f -mtime +7 -mtime -14

Il primo comando trova tutti i file presenti nella vostra directory home modificati nelle ultime 24 ore. Il secondo, invece, dà un’occhiata alla cartella documenti per i file modificati da più di una settimana ma da meno di due. Con -type f blocchiamo poi la ricerca nelle directory corrispondenti. È inoltre possibile trovare nomi di file da cercare in fogli di calcolo modificati durante l’ultima settimana:find ~ -mtime -7 -name ‘*.ods’

Se si tratta di un file di testo e se ne conosce il contenuto, è poi possibile utilizzare grep:grep -rI “testo da rilevare” ~

Questo comando, però, è molto più lento del precedente, perché deve leggere all’interno di ogni file. È quindi importante riuscire a restringere quanto più possibile i campi. L’opzione -r ricerca con un algoritmo ricorsivo, mentre -i ordina a grep di ignorare i file binari. Ci sono anche diversi comandi grafici che possono essere utilizzati nella maggior parte dei desktop, ma quello che non possono fare è combinare insieme l’uso di find e grep comegrep -I “testo da rilevare” $(find ~ -type f -mtime 0)

Questa istruzione lancia find per generare un elenco di file e poi li passa a grep per la ricerca. lxP

010_023_LXP_147_LXF189.feat_solve 23 22/10/14 17:21

Arch Linux

Vi guidiamo alla scoperta di questa straordinaria distro che promette di portarvi attraverso nuove e affascinanti avventure

Arch Linux:un amico flessibile

Arch Linux è comparso sulla scena nel 2002. Judd Vinet, il suo creatore, cercò di realizzare una distribuzione indipendente, ispirata alla semplicità

di Crux, Slackware e BSD. Attualmente, Arch Linux è sotto la guida di Aaron Griffin e si è affermata come una delle principali distro in tutto il mondo Linux. Infatti, se messa a confronto con Ubuntu, Mint, Debian, Fedora e OpenSuse, Arch occupa una posizione unica. Indubbiamente ci

sono altre soluzioni che consentono di ottenere livelli di personalizzazione (Gentoo, Linux From Scratch) e minimalismo simili (Damn Small Linux), ma nessuno di questi è comunque lontanamente paragonabile ad Arch. Partendo da un’installazione di base davvero minima, l’utente decide come plasmare il sistema a propria immagine e somiglianza. In altre parole, volendo riassumere le parole di Vinet: “Arch è esattamente quello che vuoi tu”.

24 Linux pro 147

024_027_LXP_147_LXF188.feat_arch 24 22/10/14 17:22

Arch LinuxArch Linux

Linux pro 147 25

È importante premettere che Arch si rivolge a utenti di livello medio o avanzato. infatti i comandi del terminale e la modifica

manuale dei file di configurazione richiedono una certa conoscenza dell’ambiente Linux. il wiki fornisce comunque la documentazione completa e pertanto, anche se fino a ora avete usato solo ubuntu o Mint, sentitevi liberi di mettervi alla prova con questa nuova distro. Tutto parte dal processo d’installazione che, se non vi scoraggia, potrà darvi parecchie soddisfazioni per una più proficua esperienza d’uso della distro. Questa distro, come detto, parte da un livello piuttosto alto, ma vi mette comunque nella condizione di imparare, dandovi la possibilità di migliorare le vostre competenze con il tempo. Dall’altra parte, se avete iniziato con ubuntu e non vi trovate a vostro agio, affidarsi ad Arch potrà darvi solo delle cocenti delusioni. in questo caso, ci sentiamo di consigliarvi Manjaro Linux, una sua derivata che punta maggiormente sulla facilità d’uso. Gli utenti più esigenti potranno godere dei pacchetti più aggiornati di qualsiasi software, compresi i driver (proprietari o free). un aspetto, questo, che farà la felicità di chi si lamenta dei ritardi di Canonical nel rilasciare le versioni più aggiornate dei repo. un altro punto a favore di Arch è la possibilità di sfruttare a pieno le ultime release dei kernel. per fare un esempio, mentre le versioni stabili di Debian sono ferme al Kernel 3.2, gli utenti Arch hanno già a disposizione la serie 3.15. Certo, c’è da dire che gli utenti Debian possono sempre utilizzare backport per ottenere le versioni più recenti di alcuni software, ma non quelle (come Gnome) che dipendono da parecchie nuove librerie. per gli amanti di altre distro e dell’ultima novità in circolazione, segnaliamo ppA su ubuntu, overlay su Gentoo e rpM Fusion su Fedora. Attualmente, Arch Linux è disponibile per due architetture: i686 (32-bit) e x86_64 (64-bit). C’è poi da aggiungere che quando è stata rilasciata la release a 64 bit, gli altri sistemi lavoravano solo a 32 bit. infatti, Arch è asceso agli onori della cronaca proprio per la sua velocità di adattamento, là dove altre distribuzioni erano bloccate alla i386. Le stime

La via di ArchLa filosofia di Arch Linux può essere riassunta in cinque principi: semplicità, correttezza del codice, centralità dell’utente, apertura e libertà. Questa distro mira a fornire una base leggera su cui le persone possono costruire qualsiasi cosa vogliano. Linux è complesso e talvolta complicato e Arch non cerca minimamente di nasconderlo. Al contrario, vi pone quanto più possibile davanti al codice sorgente. Le release dei software vengono aggiornate in modo quanto più mirato possibile per stare dietro alle versioni rilasciate dagli sviluppatori. A questo proposito, l’azione di fornire delle

patch per risolvere problemi viene evitata nel modo più categorico, salvo quando non è del tutto necessario. per esempio, il pacchetto contenente il kernel (a oggi) contiene solo un paio di fix. Se invece controllate quanti ce ne sono negli stessi pacchetti di altre distro, perderete il conto. Arch sottolinea sempre che al centro del sistema ci siete voi stessi. Gli strumenti non sono altro che funzioni utili a rendere questo processo efficiente, anche se questo va a discapito della semplicità d’uso. il pensiero di base degli sviluppatori di Arch è che la semplificazione eccessiva

porta solo all’allontanamento del vero controllo. La comunità alla base di Arch è molto solida. i suoi membri vi inciteranno a condividere i vostri problemi, condividendo poi le soluzioni trovate. Gli utenti Arch sono liberi di configurare il proprio sistema. Se volete un server, niente vi impedisce di crearlo, così come un desktop KDE o una workstation audio o video. Arch è perfettamente in grado di adattarsi a qualsiasi compito. il software proprietario (come Flash o i codec Mp3), inoltre, è poi disponibile in repo dedicati. L’ideologia, qui, viene messa da parte rispetto alla flessibilità.

più attuali indicano che meno del 10% delle persone utilizza una versione i686 e questo ci fa ipotizzare come tale architettura sia oramai giunta al termine della sua vita operativa. Tuttavia, fino a quando continuerà a esistere, troveremo una certa ridondanza nel mantenere repo multilibrerie sia per le versioni a 32 bit sia per quelle a 64.

Installare ArchÈ possibile installare Arch in modo non dissimile da quanto si fa con le altre distro: scaricate l’iSo e masterizzatela su un CD o memorizzatela su una chiave uSB. Tuttavia, niente vi impedisce di lanciare il processo da una distro installata

precedentemente, anche se in questo caso esistono alcune controindicazioni. Se per esempio volete installare Arch sulla stessa unità, come nel caso in cui si abbia un unico disco fisso, allora dovrete ripartizionare senza utilizzare il CD di avvio. inoltre, se state utilizzando una distro a 32 bit, sarà impossibile installare Arch a 64 bit. in definitiva, date le possibili problematiche, il nostro consiglio è partire da un’installazione classica con CD o chiave uSB. Se vi aspettate un installer grafico, pieno di semplici domande a cui rispondere e una barra di avanzamento, preparatevi fin da subito alla più cocente delusione. il supporto d’installazione lavora esclusivamente tramite prompt zsh,

lasciandovi la libertà di impostare i dischi, le connessioni di rete e l’eventuale localizzazione. L’installer include tutto il necessario per creare

Eseguire il nuovo desktop LXQT su Arch Linux sta diventando un’attività molto popolare

“Arch vi permette di cucirvi addosso un sistema fatto esclusivamente per voi”

024_027_LXP_147_LXF188.feat_arch 25 22/10/14 17:22

Arch LinuxArch Linux

26 Linux pro 147

un disco GpT per il partizionamento. Tuttavia è comunque possibile utilizzare Gparted. Anzi, dal nostro punto di vista, vi consigliamo caldamente quest’ultima soluzione che potrà risparmiarvi non poche difficoltà. L’intero procedimento d’installazione è comunque spiegato nella guida dedicata (http://bit.ly/BeginArch) a cui potete rivolgervi in qualsiasi momento. A tal proposito, è necessario aprire una breve parentesi per le immagini del firmware wireless necessarie a far funzionare la scheda di rete Wi-Fi. Queste sono spesso problematiche da installare e sono contenute in un ambiente Live. per utilizzarle, una volta impostato il tutto dovrete scaricare e installare una versione minimale dell’installer tramite lo script pacstrap, quindi generare un file fstab. Adesso, utilizzando chroot, potrete svolgere gran parte della configurazione come se steste lavorando in ambiente Live. Si tratta di una procedura abbastanza complessa, ma che permette di impostare le funzionalità Wi-Fi senza particolari intoppi. A questo punto, potrete installare qualsiasi pacchetto utile alla vostra scheda wireless, quindi aggiungere il modulo del kernel necessario al file .conf in /etc/modules-load.d/. proseguendo nella nostra panoramica, vale la pena citare il piccolo strumento netctl che consente la gestione delle connessioni di rete. Si occupa di tutto: dalle semplici connessioni Ethernet alla configurazione di una Vpn, passando dalle reti wireless basate sulle credenziali. Qualunque sia la vostra configurazione, vi invitiamo a creare un profilo in /etc/netctl. per le semplici reti WpA, si può anche utilizzare lo strumento wifi-menu. per i portatili, o per chiunque è abituato a passare da un’infrastruttura all’altra, è possibile utilizzare netctl-ifplugd (per le reti cablate) o netctl-auto (per le wireless), così da connettersi dinamicamente alle reti conosciute. infine, sarà necessario installare una password di root e un bootloader. La scelta tradizionale ricade su Grub, ma indipendentemente da quello che vorrete utilizzare è importante seguire le istruzioni. prestate particolare attenzione alle informazioni riguardanti le schede madri uEFi. infatti, è qui che si possono annidare le principali difficoltà

d’installazione. L’aggiornamento dei pacchetti ufficiali tende sempre a seguire le ultime release rilasciate dagli sviluppatori, ma non senza fare dei test approfonditi per evitare di sacrificare la stabilità per l’ultima novità. Arch è una distro rolling release in piena regola e quindi, fatte salve poche eccezioni, sarà sufficiente lanciare frequentemente pacman -Syu per avere un sistema sempre aggiornato. infatti, un’infrastruttura di questo genere non richiede alcuna installazione supplementare oltre alla prima. Semplicemente continuerà ad aggiornarsi all’infinito. per fare un esempio, analizziamo

il caso di Gnome 3.12. rilasciato nel mese di marzo, ha ricevuto fin da subito recensioni positive. Tuttavia c’era un problema di fondo: non poteva essere incluso nei tradizionali cicli di rilascio delle maggiori distro tramite iSo. Molti hanno quindi iniziato a definirlo “il desktop senza casa”, puntando l’accento proprio su questa mancanza di correlazione tra rilascio e disponibilità. naturalmente, in certe distribuzioni si può risolvere l’inconveniente tramite repo di terze parti (o usando Gentoo) ma molte

persone evitano di affidarsi a queste pratiche. Su Arch, invece, le nuove release sono impacchettate e pronte a essere distribuite dopo il rilascio. Come abbiamo detto, si tratta di un aggiornamento continuo.

Il bello delle rollingÈ in parte grazie al modo elegante e semplice con cui i componenti interni di Arch sono disposti che questo modello di rolling release funziona. Essa ha permesso agli sviluppatori di spostare tutto al di fuori di SysVinit e Systemd, utilizzando così pacman per accedere ai pacchetti. il filesystem,

poi, contiene il layout e la configurazione di base dei file in /etc. in questo modo, basta apportare modifiche a quest’ultimo per creare una nuova struttura. Così è stato nel 2013, quando twas decretò che le directory /bin, /sbin e /usr/sbin erano oramai superflue e i binari in esse

contenuti dovevano essere messi in /usr/bin. Questa sorta di modifiche di basso livello non potrebbe funzionare in una distro con un modello di rilascio tradizionale, dove tali configurazioni dovrebbero essere decise in anticipo e aggiunte in una release apposita. Detto questo, lo spostamento di usr/bin ha comunque creato problemi a quelle persone abituate a utilizzare pacchetti non ufficiali. infatti, nella homepage di Arch è comparso un avviso (archiviato su http://bit.ly/1i7jWqF), che purtroppo è stato per lo più ignorato dalla maggioranza, creando non pochi grattacapi a diversi utenti. Questi avvisi sono altresì molto importanti e se siete soliti visitare spesso la pagina di Arch, vi sarete accorti che la loro pubblicazione è piuttosto frequente. Di solito, tuttavia, riguardano componenti particolari, piuttosto che revisioni a livello di sistema. nel momento in cui le varie versioni dei pacchetti vengono aggiunte ai repo, quelle che dipendono da esse devono essere aggiornate o ricostruite, al fine di evitare qualsiasi danneggiamento. il team di Arch fa un ottimo lavoro nel mantenere la coerenza tra tutti i pacchetti ufficiali ed evitare così problemi

Un “one-liner” dimostra che il gruppo base occupa solo 256 MB. In più abbiamo un nuovo Gnome

Sistemi leggeriDopo l’installazione, probabilmente avrete usato meno di 1 GB di spazio. È però possibile che sia necessario sacrificarne un po’ di più se volete fare qualcosa di utile. Tuttavia, nel caso in cui la memoria sia limitata, si può ugualmente aggirare il problema. Arch è una scelta molto popolare tra chi ha computer potenti e con hardware di ultima generazione, ma anche fra chi usa pC più obsoleti. Grazie al

progetto Arch su ArM (http://archlinuxarm.org), potete installare la distro sul vostro raspberry pi (l’immagine si adatta perfettamente a una scheda SD da 2 GB). Arch rimane comunque un candidato degno di essere montato su macchine più potenti. Lo stock Arch Kernel tiene traccia dell’ultima versione stabile su http://kernel.org, così da fare affidamento sull’ultimo supporto hardware.

“I pacchetti ufficiali seguono quanto più possibile le release fornite dagli sviluppatori”

024_027_LXP_147_LXF188.feat_arch 26 22/10/14 17:22

Arch LinuxArch Linux

Linux pro 147 27

di compatibilità. Tuttavia, è sempre l’utente che deve sincerarsi della bontà dell’aggiornamento, cercando di trovare in rete quante più informazioni possibili. il nostro consiglio è aggiornare tutto con pacman -Syu, evitando quanto più possibile gli update parziali che più di ogni altra cosa rischiano di danneggiare il sistema. i nuovi pacchetti, insieme a quelli già ricostruiti, sono quindi organizzati in un repository di prova che viene utilizzato per verificare la bontà dei software contenuti. i nuovi utenti sempre alla ricerca di applicazioni di ultima generazione si sentiranno sicuramente attratti da questo repo. Tuttavia è nostro dovere consigliarvi di starne alla larga quanto più possibile. infatti, i programmi vengono messi sotto la lente d’ingrandimento proprio per scoprirne vulnerabilità e malfunzionamenti. Se qualcosa va storto, i problemi si rifletteranno su tutto il sistema, restituendovi soltanto instabilità. in definitiva, è sempre meglio avere pazienza, piuttosto che dover correre ai ripari.

man pacman il gestore pacchetti di Arch si chiama Pacman. Essendo leggero, veloce e semplice, incarna perfettamente la filosofia alla base di questa distro. Quando deve occuparsi di un software particolarmente pesante fa affidamento su una libreria di backend chiamata libalpm. pacman, inoltre, controlla che tutti i repo (ufficiali e non) siano in formato .pkg.tar.xz. Si tratta di tarball compressi LZMA2 contenenti i file del pacchetto e le directory, così come altri file con metadati, checksum, script post-(dis)installazione e molto altro. Ci sono tre repo ufficiali che l’installazione di Arch utilizza:

Core il nucleo del sistema che si ottiene semplicemente con Install.

Extra Altri pacchetti supportati ufficialmente. Community Contenente pacchetti creati da

membri della comunità e ritenuti affidabili dallo staff di sviluppo della distro. oltre a occuparsi dei singoli pacchetti, pacman supporta anche i gruppi. per esempio, se si vuole fare qualcosa che coinvolge la compilazione, è necessario il gruppo base-devel. Questo include gcc, make e tutte le

altre utility che rendono possibile questo tipo di applicazione. Gnome, MATE, LxDE e KDE sono gruppi, di cui è poi possibile scegliere cosa installare. KDE, per esempio, è un colosso da circa 200 pacchetti, suddiviso per fortuna in 16 sottogruppi grazie a kde-meta. nel momento in cui i pacchetti vengono aggiornati, i nuovi file di configurazione vedono il rilascio. pacman, a questo punto, verifica il checksum MD5 dei file correnti per vedere se l’utente ha effettuato qualche modifica. Se tutto risulta regolare, allora il file in questione viene sovrascritto da quello nuovo. nel caso in cui siano rilevate delle modifiche, pacman installa il nuovo file di configurazione con estensione .pacnew. A questo punto, sarete avvisati da un messaggio e starà poi a voi scegliere se apportare o meno le modifiche pertinenti (preferibilmente subito dopo l’aggiornamento). È quindi possibile controllare le differenze utilizzando gli strumenti standard. per esempio se il pacchetto openssh lavora con un nuovo sshd_confg, basterà usare il comando:$ diff /etc/ssh/sshd_config{,.pacnew}

notate l’uso dell’espansione Bash per salvare la combinazione di tasti. L’utente, in questo caso, desidera includere le nuove impostazioni con eventuali personalizzazioni nel nuovo file. Se non ci sono troppi cambiamenti, il processo è molto più semplice e conviene modificare direttamente il file

.pacnew per poi sovrascrivere l’originale. il makepkg e gli strumenti di pacman fanno parte di ABS o Arch Bulid System. Questo comprende anche l’albero ABS, vale a dire una gerarchia contenente pKGBuiLD per tutti i pacchetti ufficiali di Arch. installando il pacchetto abs sulla vostra macchina ed eseguendo il rispettivo comando abs, vi troverete una copia di questo albero in /var/abs. Sfruttando questa istruzione insieme a base-devel, potete modificare i pacchetti ufficiali. Sarete quindi in grado di abilitare/disabilitare le funzioni extra tramite le versioni dei software specifici o personalizzare CFLAGS. per quanto riguarda quest’ultima, grazie allo script pacbuilder, potrete ricompilare l’intero sistema con -O3. per fare un esempio di quanto potente sia questo strumento, pensate che il supporto per processori 386 è stato abbandonato dal kernel 3.8. Se però volete far girare il vostro Arch su un’architettura di questo tipo, usando pacbuilder e armandovi di impegno e pazienza, potrete utilizzare un kernel più vecchio. Bene, a questo punto possiamo concludere il nostro viaggio su Arch con una raccomandazione: se siete nuovi utenti, non scoraggiatevi, ma fate affidamento sulla documentazione. È ricca di spunti e potrà darvi non poche soddisfazioni. ricordate però che è necessaria pazienza e tanta voglia di imparare. Se invece siete degli esperti, non possiamo che augurarvi buon divertimento! LXP

Yaourt semplifica il processo per la creazione di pacchetti

Arch User Repository: come creare un pacchetto per ArchChiunque è libero di presentare un pacchetto sorgente (senza binari per ovvie ragioni di sicurezza) per la Arch User Repository (Aur). i pacchetti possono essere generati da un singolo file chiamato PKGBUILD, che dettaglia i documenti di origine, i rispettivi checksum e tutte le varie patch necessarie, insieme alle funzioni di compilazione e installazione. Lanciate il comando makepkg con lo switch -S su un pKGBuiLD valido e questo vi farà vedere un pacchetto sorgente adatto alla presentazione

su Aur. Senza lo switch -S il pacchetto binario viene creato per essere installato con pacman -U. i pacchetti presenti su Aur vengono votati dai membri e, quando diventano abbastanza popolari, un utente certificato li promuove a livello di comunità. Coloro che installano i vari pacchetti hanno comunque il dovere di essere molto cauti verificando la bontà dei file che utilizzeranno. Ciò significa controllare il pKGBuiLD e le patch annesse, così da garantire che non possano verificarsi situazioni spiacevoli.

Tuttavia, se non vi sentite a vostro agio nel creare pacchetti con la procedura che vi abbiamo illustrato, potete semplificare il processo utilizzando uno strumento di Aur come Yaourt (Yet Another User Repository Tool). Si tratta di un wrapper per pacman che automatizza il processo di costruzione e installazione dei pacchetti Aur. A questo indirizzo (https://wiki.archlinux.org/index.php/yaourt) trovate tutte le informazioni del caso per il suo utilizzo.

024_027_LXP_147_LXF188.feat_arch 27 22/10/14 17:22

È QUANDO TI SENTI PICCOLO CHE SAI DI ESSERE DIVENTATO GRANDE.

A volte gli uomini riescono a creare qualcosa più grande di loro. Qualcosa che prima non c’era. È questo che noi intendiamo per innovazioneed è in questo che noi crediamo.Una visione che ci ha fatto investire nel cambiamento tecnologico sempre e solo con l’obiettivo di migliorare il valore di ogni nostra singolaproduzione.È questo pensiero che ci ha fatto acquistare per primi in Italia impianti come la rotativa Heidelberg M600 B24. O che oggi, per primi in Europa,ci ha fatto introdurre 2 rotative da 32 pagine Roto-Offset Komori, 64 pagine-versione duplex, così da poter soddisfare ancora più puntualmenteogni necessità di stampa di bassa, media e alta tiratura. Se crediamo nell’importanza dell’innovazione, infatti, è perché pensiamo che non ci siano piccole cose di poca importanza.L’etichetta di una lattina di pomodori pelati, quella di un cibo per gatti o quella di un’acqua minerale, un catalogo o un quotidiano, un magazineo un volantone con le offerte della settimana del supermercato, tutto va pensato in grande. È come conseguenza di questa visione che i nostri prodotti sono arrivati in 10 paesi nel mondo, che il livello di fidelizzazione dei nostri clientiè al 90% o che il nostro fatturato si è triplicato. Perché la grandezza è qualcosa che si crea guardando verso l’alto. Mai dall’alto in basso.

207x285_PUB_AGB komori:205x285 27/09/10 13:58 Pagina 1

1a

891011121314151617

2930

La nostra famiglia

MercoledìMaria Madre di dio

capodanno

Giovedìilio veSc.

VenerdìS. Genoveffa verGine

SabatofaUSTa

DomenicaaMelia MarTire

Lunedìepifania del SiGnore

MartedìS. raiMondo Sac.

MercoledìS. MaSSiMo

GiovedìS. GiUliano M

VenerdìS. aldo ere

SabatoS. iGino papa

DomenicaS. TaT

LunedìS. ilario ve

MartedìS.

her KinG’Sday

ino

S. coST

GiovedìS. MarTina MarTire

CALENDARIO-AGENDA DELLA FAMIGLIA F.TO CM30X42,5 € 6,00

CALENDARIO-AGENDA DEI NONNI F.TO CM15X50 € 5,90

CALENDARIO-AGENDA PER LEI F.TO CM15X50 € 5,90

CALENDARIO-AGENDA PER LUI F.TO CM15X50 € 5,90

SPESE DI SPEDIZIONE DA AGGIUNGERE AL TOTALE € 3,90

Totale Ordine

nore

ac.

Mar

Venerdìldo ereM

Sabatoino papa

DomenicaTiana

Lunedìlario ve

MartedìS. f

MercoledìS. Ma

nore

ar

M

Sabatoino papa

Domenicaiana

Lunedìlario ve

Martedìf

MercoledìS. Ma

calendario-agenda famigliade

lla

22a

23a

24a

25a

26a

27a

sett

ima

ne

La nostra famiglia

1 2 3 4 5 6 7 8 9101112131415161718192021222324252627282930

giugno 2015CanCro • 22 GiuGno - 22 LuGLio

Lunedì

Martedì

Mercoledì

Giovedì

Venerdì

Sabato

Domenica

Lunedì

Martedì

Mercoledì

Giovedì

Venerdì

Sabato

Domenica

Lunedì

Martedì

Mercoledì

Giovedì

Venerdì

Sabato

Domenica

Lunedì

Martedì

Mercoledì

Giovedì

Venerdì

Sabato

Domenica

Lunedì

Martedì

s. Giustino martire

s. emiliaann. della repubblica

s. carlo lwanGa

s. Quirino martire

s. bonifacio vescovo

s. norberto vescovo

s. Geremia monacocorpus domini

s. medardo vescovo

s. efrem diacono

s. marcella

s. barnaba apostolo

s. onofrio eremita

s. antonio di padova

s. eliseo profeta

s. Germana verGine

s. ferruccio

s. ranieri di pisa

s. marina

s. romualdo abate

s. ettore martireGiornata dei profuGHi

s. luiGi GonzaGa

s. paolino di nola vesc.

s. lanfranco vescovo

natività di s. Giovanni battista

s. oriella

s. viGilio vescovo

s. cirillo vescovo

s. ireneo di lione mart.

ss. pietro e paolo ap.

ss. protomartiri romani

03_INT_famiglia_2015.indd 6 16/06/14 10.50

2015

è COMODO !!!

SFOGLIA E SCOPRI

LA SuA PRAtICItà

fabio

Piscina Vaccino T.

Prelievo m.

Commercialista

h 18 meccanico

Telefonare ViNaiO

assembleaclasse h 17

arr

ivan

o i

non

ni!

POSTa

h17 danza

h 11 estetista

h 10 Pediatra

Cena con laura

H 20 TeNNiS

H 11 PaleSTra

H 11 PaleSTra

H 11 PaleSTra

Cena con Paolo, roberta e bimbi

luisa magda matteo Toby/miao

a

estetista

Cena con lauraCena con laura

ra

ra

TeO magda

fabiO

fidO

luiSa

TOby

miaO

Dis

trib

uto

re p

er l

’ita

lia

e p

er l

’est

ero

: pr

ess-

Di

Dist

ribu

zione

sta

mpa

e m

ultim

eDia

s.r

.l. -

2013

4 m

ilano

lisa

Go

oDm

an C

alen

Dar

n. 1/

2015

- ann

- € 6

,00

Dis

trib

uto

re p

er l

’ita

lia

e p

er l

’est

ero

:D

istr

ibut

ore

per

l’it

ali

a e

per

l’e

ster

o:

lisa

Gsa

Gsa

oo

oo

D

COP_I_COVER_famiglia_2015.indd 1 17/06/14 14.33

CALENDARI 2015IN ANTEPRIMA SOLO PER TE!

PRENOTALI SUBITO SU www.calendarioagenda.it

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. socio unico Sprea Holding 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 ulteriori informazioni puoi scrivere a [email protected] o telefonare al 02.87158224.

NOME

COGNOME

VIA

N° C.A.P. PROV.

CITTÀ

TEL.

E-MAIL

Informativa e Consenso in materia di trattamento dei dati personali - (Codice Privacy d.lgs. 196/03) Sprea Editori S.p.A. Socio U-nico Sprea Holding S.p.A. con sede legale in Cremona (CR), via Gramsci 17, è il Titolare del trattamento dei dati personali che ven-gono 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 modifi ca, 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’Infor-mativa completa ex art. 13 d.lgs. 196/03, nonché consenso espresso al trattamento ex art. 23 d.lgs. 196/03 in favore dell’Azienda.

Se approfitti dell’offerta 3x2 alla riga q.tà metti “0” al calendario meno costoso

Voglio regalare questo calendario a:

SCELGO IL SEGUENTE METODO DI PAGAMENTO E ALLEGO: Indica con una ✔ la forma di pagamento desiderata

∆ Ricevuta di versamento su CCP 99075871 o bonifico bancario sul conto IBAN IT 05 F 07601 01600 000099075871 intestato a Sprea Editori S.P.A. Via Torino 51 - 20063 Cernusco Sul Naviglio MI

∆ Assegno bancario intestato a: Sprea Editori S.P.A.

∆ Carta di Credito

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

Scad. CVV Nome e Cognome del Titolare

Data Firma del titolare

(Codice di tre cifre che appare sul retro della carta di credito)

NOME

COGNOME

VIA

N° C.A.P. PROV.

CITTÀ

. della Shoah

ay

25

29o d’aqUino

MercoledìS. coSTanzo

ela Merici. della Shoah

25

28 o d’

ela Merici. della Shoah

soccorso pubblico di emergenza 113

vigili del fuoco 115

carabinieri 112

emergenza sanitaria 118

NUMERI SALVAVITA

GENNAIO�COMPLEANNIANNIVERSARI

2014

1 2 3 4 5 6 7 8 9

10111213141516171819202122232425262728293031

Gli impegni di...Gli impegni di...

MercoledìMARIA MADRE DI DIO

CAPODANNO

GiovedìS. BASILIO VESC.

VenerdìS. GENOVEFFA VERGINE

SabatoS. FAUSTA

DomenicaS. AMELIA MARTIRE

LunedìEPIFANIA DEL SIGNORE

MartedìS. RAIMONDO SAC.

MercoledìS. MASSIMO

GiovedìS. GIULIANO MARTIRE

VenerdìS. ALDO EREMITA

SabatoS. IGINO PAPA

DomenicaS. TATIANA

LunedìS. ILARIO VESCOVO

BATT. DI GESÙ

MartedìS. FELICE MARTIRE

MercoledìS. MAURO ABATE

GiovedìS. MARCELLO I PAPA

VenerdìS. ANTONIO ABATE

SabatoS. BEATRICE

DomenicaS. MARIO M.

MARTIN LUTHER KING’S DAY

LunedìSS. SEBASTIANO E FABIANO MARTIRI

MartedìS. AGNESE VERGINE

MercoledìS. VINCENZO MARTIRE

GiovedìS. EMERENZIANA VERG.

VenerdìS. FRANCESCO DI SALES

SabatoCONV. DI S. PAOLO

DomenicaSS. TITO E TIMOTEO VESC.

LunedìS. ANGELA MERICI

MEM. DELLA SHOAH

MartedìS. TOMMASO D’AQUINO

MercoledìS. COSTANZO

GiovedìS. MARTINA MARTIRE

VenerdìS. GIOVANNI BOSCO

SACERDOTE

19 GENNAIO22 FEBBRAIO

ACQUARIO

nonni150X500.indd 1

31/05/13 11:52

Q.TÀ

La nostra famiglia

REGALALO A UN AMICO!REGALALO A UN AMICO!Glielo spediremo a tuo nome e ti penserà tutto l’anno

161718

Domenicaher Kin

23

25 181920

SabatoS. BEATRICE

DomenicaS. MARIO M.

MARTIN LUTHER KING’S DAY

Lunedì25

SCOPRI COM’è COMODO:IMPEGNI, COMPLEANNI VISITE MEDICHE

TUTTO qUELLO CHE VUOIRICORDARESEMPRE SOTTO AI TUOI OCCHI

VUOI

DEI

Distributore per l’italia e per l’estero: press-Di Distribuzione s ta m pa e m u lt i m e D i a s . r . l . - 2 0 13 4 m i l a n o

Distributore per l’italia e per l’estero:

soccorso pubblico di emergenza 113

vigili del fuoco 115

carabinieri 112

emergenza sanitaria 118

NUMERI SALVAVITA

Gli impegni di...

ottobre

1 2 3 4 5 6 7 8 9

10111213141516171819202122232425262728293031

23 OttObre22 NOvembre

scorpione

GiovedìS. TereSa vergine

VenerdìSS. angeli CuSTodi

FeSTa dei nonni

SabatoS. gerardo di Brogne

DomenicaS. FranCeSCo d’aSSiSi

giornaTa degli animali

LunedìS. PlaCido monaCo

MartedìS. Bruno aBaTe

MercoledìB. v. maria del roSario

GiovedìS. Pelagia vergine

giornaTa della viSTa

VenerdìS. dionigi

SabatoS. daniele

g. della SaluTe menTale

DomenicaS. Bruno

Lunedì S. SeraFino da m.

ColumBuS day

Martedì S. edoardo re

MercoledìS. ForTunaTo

GiovedìS. ruggero

VenerdìS. edvige

g. dell’alimenTazione

SabatoS. mariSa

g. riFiuTo della miSeria

DomenicaS. luCa evangeliSTa

LunedìS. laura

Martedì S. irene

g. dell’oSTeoPoroSi

MercoledìS. orSola e ComPagne

GiovedìS. donaTo veSCovo

VenerdìS. giovanni SaCerdoTe

SabatoS. anTonio maria veSC.

giornaTa della PSoriaSi

DomenicaS. CriSPino marTire

LunedìS. evariSTo PaPa

MartedìS. delia

MercoledìSS. Simone e giuda Taddeo aP.

GiovedìS. ermelinda vergine

VenerdìS. germano veSCovo

SabatoS. luCilla vergine

halloween

•COMPLEANNIANNIVERSARI

2015

INT_nonni_150X500_2015.indd 10 16/06/14 10.20

LiSA GOODMAN CALENDAR N. 1/2015 - ANN - € 5,90

DEI

NONNI

non si

dimentica

più niente!

mario Teresa

recita scuola materna H.17

Vinaio

H.10 partenza

sarta

h.16 tè con maria

finale di bocce

giornata con i nipoti

h.11 Toby dal veterinario

visita oculistica

preparativi partenza

cena a casa dei nipotini

2015

COP_I_COVER_nonni_150X500_2015.indd 1 16/06/14 10.27

Prenotali subito!

Scegli i tuoi calendari preferitiPREZZO SUBTOTALE

Sarai il primo a riceverli perché te li spediremo appena stampati!

Tiratura limitata

Se ne compri due ti

REGALIAMO il terzo

e paghi SOLO 1 COSTO

di spedizione!

Ordinali subito su www.calendarioagenda.it oppure utilizzando questo coupon

FAM GLOB_210X285_senza pio.indd 2 09/09/14 16:28

4K e Linux4K e Linux

30 Linux pro 147 Linux pro 147 31

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

L’evoluzione della risoluzione dei monitor è stata meno costante di quella della maggior parte delle altre tecnologie. Ai tempi dei monitor CrT, voluminosi

scatoloni beige che si potevano usare tanto per il riscaldamento della casa quanto per la visualizzazione, vi era effettivamente una tendenza ad aumentare sistematicamente la risoluzione massima via via che venivano lanciati

nuovi modelli. Benché la risoluzione SVGA 800 x 600 sia rimasta la più diffusa negli anni novanta (d’altronde rappresentava un bel progresso rispetto alla risoluzione VGA 640 x 480), alcuni monitor CrT hanno finito per raggiungere una risoluzione di 2048 x 1536 pixel. Con l’arrivo dei monitor a schermo piatto, la risoluzione 1920 x 1080, nota anche come ‘full HD’, è divenuta rapidamente lo standard

e le risoluzioni hanno conosciuto un periodo di stagnazione. Se recentemente abbiamo assistito a una ripresa dell’evoluzione verso risoluzioni più elevate, trainata in parte dai monitor a buon mercato capaci di raggiungere i 2640 x 1440 pixel (nonché dai display ‘retina’ di Apple, con risoluzioni che toccano i 2880 x 1800 pixel), è la cosiddetta risoluzione 4K (3840 x 2160) ad aver suscitato un vero entusiasmo nel pubblico.

L’ultra alta definizione è il ‘prossimo grande evento’: ma come se la cava Linux nel supporto 4K? Siamo andati a indagare…

4K: lo stato dell’arte

030_032_034_LXP_146_LXF188.feat_4K.indd 30 22/10/14 18:16

4K e Linux4K e Linux

30 Linux pro 147 Linux pro 147 31

1 Scaricate i driver più recenti per prima cosa, visitate il sito ufficiale della casa produttrice della vostra scheda grafica (nel nostro esempio installeremo un driver nvidia). Scovate la versione più aggiornata del driver giusto per la vostra scheda e scaricatela. Se i driver sono all’interno di un file compresso, estraeteli nella vostra cartella Downloads. Aprite quindi il terminale e mandate in esecuzione il file .run drivers con il seguente comando: chmod 777 ~/Downloads/nViDiA-

Linux-*-340.24.runnon dimenticate di sostituire NVIDIA-Linux-*-340.24.run con il nome dei driver da voi installati.2 Via il vecchio, dentro il nuovo uscite

dall’interfaccia grafica premendo Ctrl + Alt + F1 (o F2). Collegatevi usando il vostro nome utente e la vostra password, quindi disinstallate gli eventuali driver esistenti con il seguente comando: sudo apt-get purge nvidia*

Se usate una scheda AMD/ATi, digitate ati invece di nvidia. Se premendo Ctrl + Alt + F1 non visualizzate altro che una schermata vuota, premete Ctrl + Alt + F7 per ritornare all’interfaccia grafica, quindi digitate:sudo sed -i -e ‘s/#GruB_TErMinAL/GruB_

TErMinAL/g’ /etc/default/grub sudo update-grub riavviate, quindi interrompete la sessione x in corso digitando: sudo service lightdm stop

Se non funziona, provate con: sudo service gdm stop

o ancora, digitate kdm al posto di gdm.3 Installate il nuovo driver Digitate ora: sudo sh ~/Downloads/nViDiA-Linux- x86_64-

340.24.run Seguite quindi le istruzioni per l’installazione. Anche in questo caso, non dimenticate di indicare il nome giusto per il file .run che intendete installare. Digitate quindi:sudo reboot

per riavviare il sistema. il vostro nuovo driver dovrebbe ora essere installato; controllando le impostazioni di sistema, dovreste trovarvi indicati modello e versione corretti della vostra scheda.

Installazione dei driver grafici

La possibilità di visualizzare film e immagini veramente in grande non costituisce l’unico vantaggio. Da un punto di vista più pratico, il 4K offre un enorme spazio di lavoro sul desktop, che vi

consente di visualizzare simultaneamente più applicazioni e finestre senza ricorrere a un monitor aggiuntivo. Finora, l’unico problema era il costo. Fino a poco tempo fa, acquistare un monitor 4K significava sborsare come minimo 1.000 euro. Fortunatamente gli ultimi tempi hanno visto il lancio di vari monitor 4K più abbordabili da parte di marchi prestigiosi quali philips, AoC, Asus e Samsung, con prezzi compresi in media tra le 650 e le 750 euro. Due ottimi modelli da 28 pollici sono l’Asus pB287Q a 850 euro e l’AoC u2868pQu a circa 600 euro. Forse sono prezzi che è un po’ arduo definire ‘abbordabili’ ma rappresentano senz’altro un passo nella giusta direzione; e i prezzi dei monitor 4K sono destinati a continuare a scendere. L’altro investimento implicato dal 4K è rappresentato dal computer necessario per utilizzarlo, benché la potenza di quest’ultimo sia legata all’utilizzo che intendete fare della risoluzione 4K. Se mirate semplicemente a sfruttare il maggiore spazio su desktop e la maggiore fedeltà delle fotografie, i requisiti hardware sono sorprendentemente modesti. Se disponete di una scheda madre e di un processore recenti, potreste non avere nemmeno bisogno di una scheda grafica separata. il mini-pC Zbox E1730 di Zotac supporta la risoluzione 4K e noi siamo riusciti perfino a collegare un Chromebox a un monitor 4K.

4K di listinoper visualizzare e montare contenuti multimediali in 4K, così come per utilizzare i videogiochi, avrete bisogno di una o più schede grafiche potenti e provviste di ingressi Displayport 1.2, in grado di sopportare una risoluzione 4K a una frequenza di aggiornamento di 60 Hz. Lo standard HDMi può essere utilizzato per il 4K, sebbene al momento la versione HDMi 1.4 lo supporti solo a una frequenza di 30 Hz, che non è ideale per i videogiochi; quanto all’interfaccia DVi, supporta un massimo di 1.440 punti. Questi limiti di supporto 4K verranno meno con l’arrivo dei dispositivi HDMi 2.0. posto che disponiate di un computer adeguato e di una distribuzione relativamente recente, il collegamento di un monitor 4K non si discosta molto da quello di qualunque altro. Dopo averlo connesso al pC dovreste poter caricare normalmente la vostra distribuzione di Linux; ma il vostro desktop verrà renderizzato alla risoluzione 4K di 3840 x 2160 pixel. Ve ne accorgerete notando che icone, cursori del mouse e simili appaiono piuttosto piccoli. potete verificare la risoluzione corrente digitando xrandr nel terminale. Caricherete così lo strumento xrandr, che vi permette di regolare la risoluzione del sistema. una volta avviato, visualizzerete una serie di informazioni relative al monitor, per esempio: Screen 0: minimum 320 x 200, current 3840 x 2160, maximum

16384 x 16384 DFp1 connected 3840x2160+0+0 (normal left inverted right x axis y axis) 621mm x 341mm.

Alla voce current è indicata una risoluzione di 3840 x 2160 pixel, il che significa che la risoluzione 4K è visualizzata correttamente. Di seguito vedrete un elenco delle risoluzioni disponibili, con relative frequenze di aggiornamento. La voce DFP1 connected si riferisce alla porta alla quale è collegato il vostro monitor. Se il vostro monitor non visualizza la risoluzione 4K, potete usare xrandr per modificare la risoluzione, digitando: xrandr --output DFp1 --mode 3840x2160

Sostituite DFP1 con l’output della vostra scheda grafica. potete inoltre modificare la frequenza di aggiornamento del monitor aggiungendo --rate seguito dalla frequenza desiderata. il seguente comando, per esempio, imposta una risoluzione 4K con una frequenza di 60 Hz: xrandr --output DFp1 --mode 3840x2160 --rate 60

Driver scatenatiSe tutti i vostri dispositivi sono all’altezza ma non riuscite comunque a visualizzare la risoluzione 4K, la prima cosa da fare è verificare che i driver della vostra scheda video siano aggiornati. per scoprire in modo facile e veloce versione e modello della vostra scheda, nonché la versione del driver attualmente installato, usate lo strumento glxinfo. Anzitutto dovrete installarlo dal terminale digitando: sudo apt-get install mesa-utils

Dopo averlo installato, digitate: glxinfo | grep openGL

per ottenere informazioni sulla scheda grafica e sul driver. Tra le altre informazioni che visualizzerete con questo comando, dovreste vedere qualcosa di simile a quanto segue:openGL renderer string: AMD radeon r9

290 Series openGL version string: 4.3.12618Compatibility profile Context 13.251 Accanto alla voce OpenGL renderer string: sarà indicata la vostra scheda video e accanto a OpenGL version string: potrete leggere la versione del vostro driver. ottenute queste informazioni, potrete quindi verificare di avere in uso i driver più aggiornati. Questo suggerimento spiacerà ad alcuni; ma a questo punto, per ottenere un supporto 4K ottimale, vi consigliamo di optare per i driver closed source e proprietari della casa produttrice della scheda, piuttosto che per le alternative open Source. per le schede nvidia, andate su http://bit.ly/lxfnvidia; per i modelli AMD, collegatevi con http://bit.ly/lxfAMD, mentre se usate un chip grafico integrato in un processore intel, visitate http://bit.ly/lxfintelgraphics. naturalmente esistono alternative open Source anche per i driver, create e curate da una comunità di appassionati; perciò, se preferite usare comunque l’open Source, date

030_032_034_LXP_146_LXF188.feat_4K.indd 31 22/10/14 18:17

4K e Linux4K e Linux

per le nostre prove abbiamo utilizzato due computer. il primo è un pC fisso piuttosto convenzionale con specifiche normali, tra cui un processore intel Core i7-2700K, ormai piuttosto datato. Abbiamo provato la risoluzione 4K su questo sistema servendoci sia della scheda integrata, sia di una scheda grafica Sapphire AMD r9 290x di fascia alta (www.sapphiretech.com), progettata per l’uso dei videogiochi a 4K. il nostro secondo computer è un muscoloso pC fatto apposta per il 4K e provvisto di alcuni dei componenti più potenti disponibili sul mercato, tra cui non una ma ben due schede grafiche nvidia Titan Black

gentilmente fornite da Zotac (www.zotac.com) e palit (www.palit.biz), il tutto all’interno di un possente case Bitfenix Colossus Window (www.bitfenix.com) per tenere tutti i componenti in ordine e ben aerati. per fornire potenza a tutti questi componenti di lusso occorreva un alimentatore all’altezza, perciò ci siamo serviti di un fiammante Corsair Ax860i (www.corsair.com) che offre energia in abbondanza oltre a essere efficiente e quasi completamente silenzioso, con una struttura modulare che riduce l’affollamento dei cavi migliorando la circolazione dell’aria. il monitor 4K da noi utilizzato è il philips 288p6.

Le nostre macchine a 4K

32 Linux pro 147 Linux pro 147 TM

Il Bitfenix Colossus Window

è davvero ‘colossale’ ma lo

spazio interno più vasto richiede

una circolazione dell’aria

ottimale per il raffreddamento di un sistema a 4K

un’occhiata ai seguenti progetti, perché se tutto andrà bene presto offriranno anche un migliore supporto 4K. per i driver open source nvidia, visitate http://nouveau.freedesktop.org, per quelli AMD fate un salto su http://xorg.freedesktop.org/wiki/RadeonFeature. installati i driver nvidia più recenti nel nostro sistema 4K, abbiamo attivato il supporto per le 2 schede grafiche Titan Black utilizzando il comando:sudo nvidia-xconfig –sli=auto

Ubuntu, Gnome e il 4Kusare la vostra distribuzione Linux a 4K va benissimo ma non implica necessariamente che risulterà particolarmente comoda. A questa risoluzione super-elevata, molti font, icone ed elementi dell’interfaccia appariranno piuttosto piccoli. L’effetto può essere gradevole ma può anche rendere più difficoltoso l’uso del sistema operativo, rendendo necessaria una precisione millimetrica per cliccare su icone piccole come formiche. inoltre, fissare un’interfaccia troppo piccola può stancare maggiormente gli occhi; abbiamo quindi provato alcune distribuzioni a 4K per verificare come i loro ambienti desktop predefiniti se la cavavano con la risoluzione ultra-elevata. per primo è venuto ubuntu 14.04. pur non incontrando i gusti di tutti, il suo desktop unity si adatta decisamente bene alla risoluzione 4K. Anzi, possiamo dire che l’interfaccia utente trae effettivamente beneficio dalla risoluzione 4K. L’ingombrante interfaccia con la lente, che spesso ostruisce lo schermo, è ora confinata all’angolo in alto a sinistra e consente quindi una visione d’insieme migliore dei programmi e dei file, senza occupare troppo spazio. Le icone del file manager, leggermente più grandi (senza dubbio una conseguenza del desiderio di Canonical di rendere ubuntu utilizzabile sui dispositivi touch screen) rimangono abbastanza grosse da poter essere utilizzate comodamente anche a questa risoluzione. i risultati migliori sono forse offerti dalla barra laterale Launcher, che ospita le icone delle applicazioni. A 4K offre ancora più spazio per i collegamenti, il che accresce notevolmente la praticità di ubuntu. Se queste icone vi sembrano troppo piccole, potete facilmente ridimensionarle selezionando Impostazioni di sistema D Aspetto e quindi trascinando il cursore dimensionale delle icone del Launcher per modificarle. Se proprio non ce la fate a usare unity, avete comunque delle alternative. prima di lasciare ubuntu abbiamo installato la shell e l’ambiente desktop Gnome per valutare come se la cavava con la risoluzione 4K rispetto a unity; sotto alcuni aspetti, le differenze sono risultate notevoli. per esempio, aprendo il menu Attività e selezionando Applicazioni, visualizzerete un elenco delle vostre applicazioni: e se le icone sono belle grosse, i font appaiono incredibilmente minuscoli e quasi illeggibili. Fuori dal menu le cose vanno un po’ meglio, sebbene

alcuni menu e icone non escano molto bene dal confronto con le maggiori dimensioni predefinite di unity. il lancio di Gnome 3.12 ha dimostrato che il 4K viene preso sul serio.

Xubuntu, Xfce e Mint xubuntu è il derivato di ubuntu con ambiente desktop xfce. La distribuzione base sarà pure essenzialmente la stessa ma il diverso ambiente desktop determina differenze sostanziali. Diversamente da unity, è evidente che xfce è stato progettato per un impiego desktop più convenzionale; niente di male in questo ma la conseguenza è che a una risoluzione di 3840 x 2160 pixel le icone, i font e i menu appaiono tutti decisamente piccoli. usarli è comunque possibile ma l’esperienza risulta nettamente più frustrante rispetto a unity. Abbiamo quindi provato Linux Mint. L’ambiente desktop Cinnamon di questa distribuzione ha conquistato un seguito notevole, specie tra i neofiti di Linux, grazie alla sua somiglianza al layout di Windows (pre-versione 8), con la barra delle applicazioni in basso e il menu Start (che in Mint si chiama semplicemente Menu) per l’accesso rapido a file e cartelle. Come in xfce, font e icone risultano molto piccoli in Cinnamon, il che rende piuttosto difficoltoso l’uso del Menu. Fortunatamente, l’inconveniente si può eliminare cliccando con il tasto destro del mouse sulla barra in basso (chiamata Pannello in Linux Mint) e quindi aumentando il valore in pixel indicato accanto all’altezza del pannello. Mint ridimensionerà icone e font di conseguenza, rendendoli molto più comodi da usare.

Elementary e Fedorapur essendo meno diffuso di ubuntu o Mint, Elementary sta rapidamente acquistando popolarità, soprattutto grazie al fatto che dispone di una propria shell e di un ambiente desktop, chiamato pantheon e progettato per essere tanto veloce ed efficiente quanto elegante. A una risoluzione 4K, Elementary oS risulta decisamente affascinante, con il suo ambiente desktop pantheon, elegante e minimalista, che sfrutta ottimamente lo spazio di lavoro in più offerto dalla risoluzione superiore. L’interfaccia di lancio delle applicazioni trae vantaggio da icone più grandi che la rendono più facile da usare a 4K rispetto a quella di xfce. Altrove, icone e font appaiono un po’ troppo piccoli per essere comodi ma se non altro è possibile modificarli facilmente, tramite le impostazioni di sistema di Elementary o scaricando lo strumento Elementary Tweaks, che vi permette di impostare le dimensioni di icone e font in tutto il sistema rendendo Elementary più pratico da usare. per installare Tweaks, aprite il terminale e digitate: sudo apt-add-repository ppa:versable/elementary-update sudo apt-get update sudoapt-get install elementary-tweaks

030_032_034_LXP_146_LXF188.feat_4K.indd 32 22/10/14 18:17

4K e Linux

Il metodo più facile e veloce per adattare la vostra interfaccia utente consiste nell’usare la funzione Zoom, che si applica a numerose applicazioni oltre che ad alcuni file manager. È sufficiente tenere premuto Ctrl sulla tastiera e premere quindi il tasto + o, se utilizzate un mouse provvisto di rotella, farla scorrere verso l’alto. Questo farà aumentare le dimensioni del testo, delle icone e delle immagini del programma che state utilizzando. È un metodo rapido per facilitare l’uso di monitor 4K ed è molto efficace con i browser come Firefox e Chromium, dato che vi permette di ridimensionare istantaneamente il testo di un sito. Altrove, i risultati non sono sempre perfetti, dato che le icone e le immagini possono risultare leggermente sfocate; ma se per esempio avete difficoltà a leggere ciò che state scrivendo in Libre Office, questo metodo funziona

a meraviglia. Meglio ancora, potete usare le impostazioni di sistema della vostra distribuzione. Modificare le dimensioni di icone e font e la risoluzione DPI dei font con l’interfaccia grafica è più pratico e alcune impostazioni di visualizzazione, per esempio in Ubuntu, modificano istantaneamente l’aspetto del desktop: questo vi permette di valutare l’effetto delle modifiche mentre le applicate, rendendovi più facile adattare alla perfezione l’aspetto della vostra distribuzione alla risoluzione 4K. Un altro vantaggio sta nel fatto che queste impostazioni sono globali, perciò le modifiche apportate avranno effetto praticamente su tutti i vostri programmi e non avrete bisogno di modificarle applicazione per applicazione. Il vostro ambiente desktop è Gnome 3.10 o superiore? Allora potete attivare l’ingrandimento HiDPI inserendo quando segue nella riga di comando:

gsettings set org.gnome.desktop.interfacescaling-factor 2 L’interfaccia utente di Gnome verrà così ottimizzata per i monitor a risoluzione superiore. Se il risultato non è di vostro gradimento, potete ritornare al formato standard reinserendo lo stesso codice ma con 1 al posto di 2. Potete anche ingrandire in modo indipendente il testo dell’interfaccia, utilizzando il seguente comando: gsettings set org.gnome.desktop.interface text-scaling-

factor 0.9 Le modifiche verranno applicate istantaneamente. Per gli altri ambienti desktop, potete ingrandire il desktop servendovi del nostro vecchio amico xrandr, con il seguente comando: xrandr --output DFP1 --scale 1.5x1.5

Sostituite 1.5 con il fattore di ingrandimento desiderato.

Adattarsi al 4K

La Nvidia GTX Titan Black è una delle schede grafiche più potenti del mondo, perciò abbiamo pensato di inserirne ben due nel nostro sistema per ottenere prestazioni 4K ottimali

34 LInUx PrO 147

Potrete quindi accedere a queste impostazioni aggiuntive aprendo le impostazioni di sistema e selezionando Tweaks. In ogni caso, la prossima versione di Elementary promette tra l’altro un migliore supporto HiDPI. Infine, abbiamo avviato Fedora 20, che utilizza il desktop KDE. Lo spazio desktop in più è un vantaggio e le icone sul desktop rimangono tanto comode da utilizzare quanto gradevoli alla vista; ma i font sulla barra delle applicazioni in basso risultano, come in Cinnamon, molto piccoli e difficili da leggere. L’applicazione Kickoff, usata da Fedora per il lancio delle applicazioni, funziona ottimamente e i font, per quanto piccoli, risultano relativamente leggibili. nascoste tra le impostazioni di Fedora ci sono numerose opzioni per la regolazione delle dimensioni di icone e font, il che permette di rendere il desktop KDE più piacevole da usare. Proprio mentre scriviamo, comunque, KDE sta lanciando Plasma 5.0, l’ultima versione del relativo ambiente desktop. Accanto a vari miglioramenti in termini di prestazioni e grafica, comprende anche una ‘shell Plasma convergente’ progettata per caricare il desktop e introdurre un’interfaccia utente pratica in vari dispositivi non standard. L’intento è simile a quello di Canonical che punta a rendere Unity compatibile con smartphone, tablet e simili. L’aggiornamento offre anche il supporto per i monitor HiDPI, che rende questo desktop decisamente più adatto ai monitor 4K. nel complesso abbiamo rilevato che l’ambiente desktop Unity di Ubuntu è quello che offre l’esperienza di per sé migliore, offrendo un’interfaccia perfettamente utilizzabile a una risoluzione 4K senza necessità di interventi. Attribuiamo la ragione di questo alla ‘tradizione di convergenza’ di Canonical, che implica l’adattamento di Ubuntu a numerosi dispositivi e schermi di formato diverso. I creatori degli ambienti desktop più tradizionali, invece, dovranno darsi ancora un po’ da fare, specie se la risoluzione 4K diventerà moneta corrente. Usate un desktop più tradizionale? non siete costretti ad accontentarvi di icone minuscole e font illeggibili. Ci sono vari modi per modificare l’interfaccia utente della vostra distribuzione in modo da adattarla meglio alle risoluzioni elevate: date un’occhiata al riquadro in basso. Questi sistemi si differenziano tra loro per difficoltà e risultati ma vale la pena di provarli tutti per ottenere un’esperienza 4K ottimale in Linux.

Linux e il 4K: lo stato dell’arte Che cosa abbiamo rilevato dunque in merito al supporto 4K in Linux? La risposta più veloce è che il supporto è OK e che i segnali per il futuro sembrano ancora più promettenti. A patto di disporre di un computer che lo supporti, non dovreste avere difficoltà a

collegare un monitor 4K al vostro sistema Linux e a utilizzarlo con una risoluzione di 3840 x 2160 pixel. Quanto poi questa risoluzione risulti utile, dipende molto dalla distribuzione e dall’ambiente desktop che utilizzate. I nostri esperimenti con il 4K hanno evidenziato che Ubuntu con ambiente Unity è la distribuzione che offre la migliore esperienza senza la necessità di particolari interventi. Le altre distribuzioni e gli altri ambienti desktop danno risultati eterogenei riguardo al supporto 4K, sebbene basti qualche ritocco per rendere rapidamente più comodo l’uso del desktop. L’aspetto più promettente è che molti ambienti desktop stanno introducendo il supporto per risoluzioni monitor più elevate, perlopiù mediante l’ingrandimento HiDPI (High Dots Per Inch), il che è un effetto collaterale della tendenza degli utenti a sostituire OS x con Linux sui loro MacBook con display retina. Se aspirate a un’esperienza 4K ottimale con Linux, vi consigliamo di attendere ancora un po’. L’allargamento del supporto da parte delle distribuzioni e dei programmi renderà molto più comodo utilizzare il vostro computer a 4K, mentre il prezzo dei dispositivi in grado di supportare questa disposizione continuerà a diminuire. Tra l’altro, per il momento non esiste granché in termini di contenuti 4K. netflix ha manifestato interesse per la diffusione in streaming di contenuti 4K; ma dato che netflix non è disponibile per Linux a meno di sostituire il plug-in Silverlight con Pipelight, potete permettervi di aspettare. In ogni caso, se il 4K rappresenta davvero il futuro, siamo certi che Linux non avrà difficoltà a farne parte. LXP

030_032_034_LXP_146_LXF188.feat_4K.indd 34 22/10/14 18:17

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:

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

47

OFFErTA vALIDA SOLO pEr L’ITALIA

•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

035_LXP_147_Abbo_LinuxPro 35 21/10/14 22:05

Intervista Intervista

36 Linux pro 147 Linux pro 147 37

Abbiamo parlato con l’enigmatico hacker Freakyclown sul futuro della sicurezza online in un mondo in cui ogni click è soggetto a sorveglianza

36 Linux pro 147

HackspaceIl mondo degli hacker è un sottobosco pieno di segreti e bugie; ma negli ultimi anni questo mondo è stato trascinato per il collo sotto i riflettori dei media da episodi come quelli di WikiLeaks, il caso Snowden e le violazioni ad alto livello di grandi corporation messe in atto da gruppi clandestini. L’hacking, tuttavia, è vecchio quanto la tecnologia stessa e non tutti gli hacker sono cattivi. Recentemente abbiamo incontrato Freakyclown, hacker e penetration tester che lavora per fare del mondo un luogo più sicuro, un cliente alla volta. Freakyclown appartiene a un tipo di persone piuttosto raro: pur mantenendo riservata la sua vera identità, è più che lieto di parlare in pubblico della sua professione e ha guadagnato una certa popolarità intervenendo a vari eventi in Gran Bretagna. Inoltre, è un convinto sostenitore della Raspberry Pi Foundation e della sua missione.

LP: Sei una celebrità piuttosto enigmatica nel mondo delle non conferenze e degli eventi. Puoi dirci qualcosa della tua storia? Freakyclown: Sono originario dell’Essex e vengo da una famiglia piuttosto povera; ma grazie ai miei amici, che per me sono come fratelli, ho potuto formare un gruppo molto unito che ci ha permesso di superare tutti insieme i tempi duri. Ho cominciato a interessarmi ai computer molto giovane. il mio primo computer era una console per videogiochi Binatone a due giocatori con controller analogici e interruttori metallici per selezionare Tennis, pong e giochi simili. poi ho avuto un paio di altre console tra cui un Atari 2600: Lee, il mio migliore amico, ha ancora la sua con il rivestimento in legno! poi ho preso un Amstrad CpC464, che è stato il mio primo vero computer completo di tastiera e con quello ho cominciato a programmare un po’. Quindi ho scambiato l’Amstrad con un Commodore 64 e alla fine sono passato all’Amiga 500 e 1200. È stato allora che il computer è diventato una cosa seria per me. Ho cominciato a frequentare le bacheche elettroniche e altri spazi di incontro. È stato più o meno allora che ho cominciato a frequentare i gruppi di hacker 2600. poco dopo

ho cominciato a partecipare ai loro incontri a Londra e a stringere amicizie; ma soprattutto, il gruppo mi ha aiutato moltissimo a imparare cose nuove. Dopo qualche anno, eccomi a lavorare come hacker professionista o ‘pentester’ (penetration tester).

LP: C’è stato un evento specifico della tua vita che ti ha fatto scattare l’interesse per l’hacking? FC: non direi che si diventa hacker perché un evento fa scattare qualcosa. È un modo di pensare e di vivere con cui si nasce: la sete, la voglia di capire e cambiare le cose. non direi che ci sia stato un momento chiave in cui ho esclamato “Eureka!” e ho deciso di imparare a fare l’hacker. Credo che tutto sia partito da un bisogno innato di imparare non solo come funzionavano le cose ma come fare sì che facessero ciò che volevo che facessero. Certo, starsene seduti a giocare con i videogiochi è divertente; ma non c’è niente di paragonabile alla sensazione che si prova creandosene uno da soli, per quanto semplice ed elementare. Questo atteggiamento mentale è utile quando si tratta di collaudare una rete, un’applicazione Web, un’applicazione binaria o di creare un sistema di sicurezza. noi approcciamo tutto questo da un punto di vista completamente diverso da quelli dell’utente finale e dello sviluppatore. Quando faccio notare una falla nella sicurezza, spesso mi sento dire: “non me ne sarei mai accorto” o “non mi sarebbe mai venuto in mente di farlo”. Questo è il frutto di una vita intera trascorsa osservando le cose in modo completamente diverso. Molti credono che occorra essere dei mezzi criminali o degli ex-criminali per fare il nostro lavoro ma non è affatto vero. Anzi, un criminale non potrebbe fare un lavoro del genere quasi in nessun caso: sarebbe un po’ come dire che un poliziotto deve essere un criminale per poter catturare i criminali. È tutta una questione di atteggiamento mentale.

LP: Lavori per un’azienda chiamata Portcullis Security. Puoi dirci qualcosa del lavoro che svolgi concretamente? FC: portcullis è una delle maggiori aziende britanniche che si occupano di sicurezza dei computer. È in attività dal 1986 e ha circa 40 pentester. Buona parte del mio lavoro consiste nel testare applicazioni e reti.

Abbiamo specialisti quasi in ogni campo, dai collaudatori di cellulari ioS agli esperti di scienza forense. Siamo molto attivi nel pubblicare nuovi strumenti e post tramite il sito dedicato del nostro laboratorio (http://labs.portcullis.co.uk). Quando non mi occupo di ‘normali’ controlli della sicurezza, mi dedico alla mia specialità: l’ingegneria sociale!

LP: E che cos’è l’ingegneria sociale?FC: L’ingegneria sociale consiste sostanzialmente nel persuadere le persone a fornire informazioni o accesso a luoghi che non dovrebbero fornire. Sebbene questa attività comprenda anche strumenti di cui molti hanno sentito parlare, come gli attacchi di phishing via e-mail, noi usiamo l’ingegneria sociale per testare la sicurezza fisica degli edifici, dai piccoli uffici alle banche, fino a luoghi ancora più riservati che non posso citare. Faccio questo tipo di test da molti anni e ho un indice di successo del 100%: ho centrato ogni singolo bersaglio che mi era stato indicato. non so se questo significhi che sono bravissimo nel mio lavoro o che sono gli altri a curare malissimo la sicurezza fisica. Dedico molto tempo a tentare di convincere la gente che si tratta di un aspetto importantissimo della sicurezza informatica. Molte volte, misurandomi con aziende che avevano investito milioni di sterline nella sicurezza delle loro reti, mi è bastato entrare tranquillamente nell’edificio e portarmi via i computer che si erano tanto sforzati di proteggere. potrei citare letteralmente migliaia di eventi e situazioni interessanti che mi è capitato di vivere effettuando test di ingegneria sociale. pian piano sto scrivendo un libro sull’argomento: invito i lettori interessati a farsi vivi su Twitter o irC per incoraggiarmi, perché mi serve un po’ di motivazione per terminarlo.

LP: Ti è mai capitato di riscontrare in un servizio o in un prodotto un problema di sicurezza che ti ha indotto a ripensare personalmente all’opportunità di utilizzarlo?FC: Come no! Vengo a sapere un sacco di cose che mi preoccupano e mi fanno venire voglia di smettere di usare determinati prodotti o servizi. C’è di tutto: dai bancomat con funzioni nFC (durante le mie conferenze, adoro dare dimostrazione pratica di quanto sia facile sottrarne i dati) a intere aziende

036_039_LXP_147_LXF183.iview 36 21/10/14 22:06

Chris DiBona

Intervista Intervista

36 Linux pro 147 Linux pro 147 37Linux pro 147 37

Un ringraziamento speciale al Museum of Computing di Swindon per il suo aiuto nella realizzazione dell’intervista. Il suo sito è visitabile all’indirizzo: www.museum-of-computing.org.uk

di cui so per certo che usano reti non sicure. Ho paura per i miei dati personali! Sono certo che nessuno che sia sano di mente riuscirebbe a dormire bene la notte. un trucco che può aiutare le persone a scoprire chi sta vendendo le informazioni che le riguardano consiste nel registrare un account Google e quindi fornire alle aziende indirizzi e-mail con un +. per esempio, l’utente [email protected] può usare [email protected] per i contatti con il fornitore di energia elettrica e così tenere più in ordine la posta elettronica; e se dovesse iniziare a ricevere messaggi su [email protected] da un’azienda che fornisce gas, saprà chi ha dato il suo indirizzo e gli sarà più facile bloccare e denunciare lo spam.

LP: Nell’ambito delle tue presentazioni durante gli eventi, ti presenti per mezzo di una serie di rapide slide. Hai mai avuto problemi con la legge e, se sì, in che modo la legge vede un ‘hacker’? FC: una volta sono stato arrestato ai sensi dell’articolo 3 del CMA (Computer Misuse Act, una legge sull’abuso dei computer). Diciamo che la cosa era un

po’ sfuggita di mano; alla fine però, dopo molti mesi di agonia da parte mia, la legge ha ritrovato il senno e l’accusa è stata lasciata cadere. un’altra storia buffa mi è capitata a Londra mentre mi occupavo di un lavoro di ingegneria sociale. Erano le 2 o le 3 del mattino e stavo perlustrando un edificio alla ricerca di punti deboli in vista del mattino seguente. Avevo come lavoro quello di scoprire in che modo penetrare in questo edificio super-protetto. improvvisamente sento un colpo di tosse alle mie spalle e qualcuno mi chiede che cosa ci faccio lì. Chiaramente esausto per la mancanza di sonno e concentrato sul mio compito, ho risposto senza pensarci: “Cerco di capire come penetrare in questa banca domani”. Solo allora mi sono reso conto che davanti a me c’erano due poliziotti che mi fissavano sbalorditi. Ho dovuto dare un bel po’ di spiegazioni! un’altra volta stavo conducendo un test di ingegneria sociale su una banca del centro e all’improvviso le cose si sono messe male: la banca è stata circondata dalla polizia e ho dovuto sudare quattro camicie per spiegarmi e dimostrare che stavo dalla parte dei ‘buoni’! Tornando alla domanda, direi che il poliziotto medio

non capisce l’hacking, così come non lo capisce la gente in generale (dopotutto, sono normali esseri umani!) e francamente non sono tenuti a farlo. È compito dei tribunali e dei giudici capire e interpretare le linee guida molto confuse fornite dalla legge e, idealmente, trovarvi un senso.

LP: I tuoi interventi hanno molto successo e attiri folle notevoli. Che cos’è secondo te ad attirare le persone?FC: Sinceramente, non ho idea del perché la gente ci venga né tantomeno del perché io venga invitato a intervenire agli eventi; mi hanno detto però che la ragione è la mia capacità di spaventare la gente e al tempo stesso di farla ridere. Le mie conferenze suscitano le reazioni più diverse, da chi mi chiede l’autografo a chi strepita perché un certo argomento lo ha fatto arrabbiare. nei miei interventi mi piace mescolare spiegazioni semplici di temi complessi e spiegazioni ultra-tecniche, per assicurarmi che tutti coloro che vi assistono possano ricavarne qualcosa. Se riesco a far capire loro qual è la ragione precisa per cui si devono usare password sicure o non si deve

036_039_LXP_147_LXF183.iview 37 21/10/14 22:06

Intervista Intervista

38 Linux pro 147 Linux pro 147 39

postare la propria foto su Facebook, così che loro possano spiegarlo ai loro amici in modo non tecnico ma illustrando comunque il motivo preciso, allora ritengo che il mio intervento abbia avuto successo.

LP: Le azioni di Edward Snowden e il fatto che abbia consegnato documenti top secret ai media e ad altri siti, lo hanno fatto diventare una sorta di celebrità. È giusto celebrare atti come questi? FC: So che mi attirerò qualche antipatia dicendo questo ma ritengo che Snowden dovrebbe essere processato per tradimento. È andato a lavorare per la nSA e poi, dopo anni, gli è spuntata una coscienza? Ma per favore! Se uno diventa veterinario, non può aspettarsi di non dover sopprimere dei gattini, né mettersi a strillare con i giornali perché gli altri veterinari lo fanno. L’agenzia per cui lavorava ha un lavoro da svolgere e deve essere messa in condizione di svolgerlo. Francamente, niente di ciò che ha rivelato è risultato sensazionale o non prevedibile. L’unica cosa che ci ha insegnato è che le presentazioni della nSA fanno schifo! i mass media adorano far apparire le cose mille volte peggiori di come sono in realtà; e sì, si lamentano del modo di agire di alcune agenzie segrete ma vedono le cose da un solo punto di vista. Ci sono molte decisioni e azioni che devono essere compiute per proteggere il nostro modo di vivere e non sempre sono piacevoli. Come ha detto una volta Spock: “Le esigenze dei molti prevalgono sulle esigenze dei pochi”.

LP: Abbiamo sentito molte storie a proposito del

fatto che la NSA spia e monitora le comunicazioni dei privati cittadini. Qual è la tua opinione in proposito?FC: Lo dice la parola stessa. in tutto il corso della storia, gli uomini si sono spiati a vicenda: è così che funziona il mondo e non è destinato a cambiare! Come ho già detto, abbiamo bisogno di queste agenzie per poter godere delle libertà che abbiamo. non ho niente da eccepire sul modo in cui fanno le cose: anzi, le tecnologie con cui hanno a che fare e i loro progetti, di cui la gente in generale non ha la minima idea, mi entusiasmano. Leggetevi la storia di Menwith Hill!

LP: Cos’ha a che fare Menwith Hill con l’hacking? Quali tecnologie sono state usate o create lì per poi divenire oggi di uso comune?FC: Menwith Hill è una piccola centrale del sistema mondiale Echelon, gestito congiuntamente da Gran Bretagna, Stati uniti, nuova Zelanda, Australia e Canada. Esiste fin dagli anni Sessanta ed è utilizzata per analizzare il traffico; i dati vengono quindi trasmessi ad altre agenzie. La ragione è che spiare il proprio paese è illegale, mentre spiarsi a vicenda non lo è. L’opinione pubblica è venuta a conoscenza di Menwith quando alcuni documenti presentati in un processo negli anni novanta hanno dimostrato che utilizzava fibre delle reti telefoniche britanniche in grado di gestire 100.000 linee simultaneamente. La gente ha pensato che fosse solo una delle tante teorie del complotto, finché Snowden non ha iniziato a pubblicare i suoi documenti, per cui oggi si ritorna

a parlarne.

LP: Qual è la tua definizione del termine ‘hacker’?FC: Sono cresciuto nell’epoca in cui il termine aveva un significato tradizionale: utilizzare una cosa in modo diverso da quello per cui è stata creata, il cosiddetto hacking tecnico, o modificare una cosa in modo da poterla usare in modo diverso da quello per cui è stata progettata. oggigiorno, però, il termine è usato più che altro in relazione ai computer. i mass media hanno completamente denigrato questa parola e la comunità dei ‘geek’ dovrebbe proprio tentare di riappropriarsene per restituirle il suo senso originale. Ho contribuito alla nascita del Surrey and Hampshire

Hackspace (http://sh-hackspace.org.uk), che non ha niente a che fare con l’hacking nel senso della violazione dei computer. Facciamo di tutto, dal filare la lana al costruire robot. Secondo alcuni dovremmo chiamarlo ‘makerspace’, ‘spazio creativo’; ma io sono contento del fatto che abbiamo scelto di usare un termine tradizionale come Hackspace.

LP: Tor è stato considerato a lungo come il sistema migliore per mantenere l’anonimato online ma gira voce che alcune agenzie governative lo avrebbero violato. Stiamo assistendo a un aumento della sorveglianza a spese della libertà?FC: non fate mai affidamento su un solo sistema per mantenere l’anonimato. Se il logo di Tor è una cipolla, un motivo c’è. usate pure Tor ma usatelo come uno solo degli strati di una cipolla, che sono numerosi e sovrapposti. La cifratura è un altro metodo che la gente usa male; a seconda di ciò che volete fare, prendete le misure opportune. non è necessario volare in Thailandia e usare un laptop rubato connettendosi illegalmente al Wi-Fi di un locale vicino per navigare sul ‘Web invisibile’; se però volete sbirciare sui server della nASA alla ricerca delle prove dell’esistenza degli alieni, non fatelo dalla casa dei vostri genitori!

LP: Stiamo avanzando alla cieca verso un’Internet controllata, in cui determinate organizzazioni possono bloccare i contenuti, come quando gli ISP bloccano i siti di torrent per contrastare la condivisione illegale di file?FC: no, non alla cieca. Le cose sono sempre andate così e chi la pensa diversamente è semplicemente mal informato. La deep packet inspection (filtraggio dei pacchetti) e i sistemi di QoS (qualità del servizio) sono sempre stati disponibili anche nelle reti più elementari. E se non vi piace che cosa questi sistemi bloccano, c’è sempre un modo per aggirarli. Anche qui, dobbiamo difendere gli innocenti, per esempio i bambini con genitori non all’altezza, impedendo che vedano cose non adatte a loro. Di solito, quelli che si lamentano del fatto che questi contenuti vengano bloccati a monte dispongono delle competenze tecniche per bypassare i blocchi e danno per scontato che la gente in generale desideri la libertà di accesso di cui hanno bisogno loro. È come quando si dice che bisognerebbe elevare il limite di velocità, quando la maggior parte della gente non è capace di guidare in modo sicuro nemmeno andando a venti all’ora in un parcheggio. Dobbiamo difendere le masse da loro stesse, senza preoccuparci dei pochi Michael Schumacher e super-esperti di computer.

LP: L’Internet delle Cose sta lentamente diventando realtà. Recentemente si è scoperto che alcuni frigoriferi facevano parte di una rete di bot che ha spedito 750.000 email spam. Abbiamo davvero bisogno che tutti i nostri dispositivi siano in Rete? E se sì, come possiamo limitare il rischio che il nostro frigorifero diventi parte di una specie di Skynet?FC: Finché il protocollo ipv6 non prenderà piede, non

036_039_LXP_147_LXF183.iview 38 21/10/14 22:06

Intervista Intervista

38 Linux pro 147 Linux pro 147 39

vedo proprio come tutto quanto potrebbe diventare interconnesso. E non credo proprio che saranno i frigoriferi a creare Skynet! C’è un fantastico film intitolato Brivido (Maximum overdrive, del 1986) in cui tutti i dispositivi computerizzati della Terra iniziano a rivoltarsi contro le persone e a ucciderle. Forse questo scenario è più simile al futuro di quanto non lo siano le guerre in stile Terminator. i computer sono estremamente volubili. non posso immaginare una Skynet che funzioni per più di due settimane senza doversi riavviare perché è necessario un aggiornamento…

LP: Ultimamente Google ha acquistato numerose aziende interessanti, tra cui l’impresa di robotica Boston Dynamics e, più di recente, Nest, il progetto di termostato centrale controllato a distanza. L’acquisizione di Nest fa presagire potenziali rischi di sicurezza per la vita e per la libertà?FC: Secondo me, Google riceve più critiche del dovuto, non è finanziata dai militari e non svolge attività di ricerca e sviluppo per conto dei militari. Semplicemente, Google ha troppi soldi ed è alla ricerca del prossimo grande evento. Alla gente piace odiare chi ha successo. negli anni ottanta e novanta tutti odiavano Microsoft; oggi tutti odiano Google, Facebook e Flappy Bird.

LP: In che modo quindi gli utenti possono rimanere sicuri online?FC: non fidatevi di nessuno. Assicuratevi di aver installato tutti gli aggiornamenti che vi è stato chiesto di installare (dopo aver verificato che siano autentici). usate un antivirus gratuito decente. Assicuratevi di comprendere realmente quali sono i rischi. immagino che il lettore medio di questa rivista sia più scafato della media, perciò invito i cari lettori a insegnare agli altri alcune nozioni di base che loro già conoscono.

LP: Dispositivi come il Raspberry Pi e Arduino hanno reso l’hacking più accessibile ai principianti. Ti è capitato di imbatterti in casi di uso dannoso di questi strumenti?FC: Certo; anzi, ne ho creati alcuni io stesso. uno è un telefono Voip con un raspberry pi incorporato. il telefono fornisce al pi nascosto una connessione Ethernet alla rete bersaglio. il pi crea un punto di accesso wireless, per cui è possibile lasciarlo collegato alla rete bersaglio e utilizzarlo come un normale telefono Voip, salvo che permette all’intruso di attaccare la rete in questione in modalità wireless.

LP: A proposito dei dispositivi dannosi, qual è la tua opinione sull’uso dei droni? Dato che i kit sono facilmente reperibili online, la nostra privacy sta correndo dei rischi?FC: ogni nuova tecnologia comporta il rischio che essa venga usata per fare del male oltre che per fare del bene. Voglio dire, quanto tempo passerà prima che qualcuno colleghi una granata a un drone e lo lanci su un concerto di Justin Bieber o sorvoli una base militare per carpire segreti?

LP: In giro per il mondo stanno nascendo molti gruppi di utenti e hackspace. Che cosa consiglieresti a un gruppo? Quali lezioni hai appreso?FC: prima di tutto, a beneficio dei lettori, chiariamo che stiamo parlando di spazi in cui le persone possono imparare attività come l’elettronica, la tessitura, l’ebanisteria e qualunque altra competenza posseduta dai membri. imparano a costruire stampanti 3D, torni e trapani e a volte usano anche i computer. un hackspace non è un posto dove si va per imparare tecniche di hacking illegale. Come dicevo, ho contribuito alla nascita del Surrey and Hampshire Hackspace di Farnborough, perciò ho una certa esperienza riguardo a ciò che occorre per creare un hackspace. Consiglierei prima di tutto di dare una bella occhiata alla zona: potrebbe esistere già un hackspace. Se, come nel mio caso, scoprite che non ce ne sono, vi consiglio di cominciare in piccolo. partite da semplici incontri in un bar o in un locale della zona, per assicurarvi di mettere insieme i membri essenziali. Saranno queste persone ad aiutarvi nei prossimi anni, finché non avrete il vostro primo spazio. procedete a passi di bimbo. noi abbiamo tenuto degli incontri in un pub, poi abbiamo trovato dei pub disposti a lasciarci usare il retro gratuitamente e abbiamo proseguito da lì. Se qualcuno desiderasse altri suggerimenti, siamo sempre disponibili su irC (freenode #sh-hackspace).

LP: Che consigli daresti a chi è interessato a una carriera nel campo della sicurezza o dello hacking?FC: imparate i fondamentali. Assicuratevi di conoscere come funzionano gli elementi di base come reti, codici, pacchetti, cavi e simili, perché solo quando

conoscerete i fondamentali potrete iniziare a ragionare su come lavorarci sopra e a far sì che lavorino a vostro vantaggio. Se siete giovani e pensate di frequentare il college o l’università, cercate un corso che tratti quanti più argomenti possibile, invece di concentrarvi su un settore specifico. L’attività di pentester richiede non solo la giusta forma mentis ma anche ampie conoscenze. Se non siete giovanissimi o avete già un lavoro e quindi non potete frequentare un corso a tempo pieno, vi conviene cercare di ottenere un attestato. in Gran Bretagna potete prendere in considerazione i programmi Crest o Tiger, che sono conosciuti nel settore: le imprese sono più propense ad assumere persone che hanno ottenuto questi attestati piuttosto che i candidati in possesso di certificati CCnA o MS. Esistono poi molti tutorial gratuiti e una quantità di CD scaricabili con strumenti e applicazioni utili per imparare, come Kali Linux e Black Arch; ci sono anche CD che permettono di creare laboratori di collaudo, come WebGoat e DamnVulnerable Web App. ricordate: se non avete il permesso di toccare qualcosa, non fatelo o vi metterete nei guai e vi giocherete qualunque chance di fare questo lavoro.

LP: C’è qualche impresa compiuta da altri hacker che avresti voluto compiere tu? E se sì, quale e perché?FC: [ride] non so se vorrei averne compiuta qualcuna io, dato che di solito gli hacker si fanno beccare; direi però che quella di Gary McKinnon è stata quella che ho trovato più interessante, dato il mio interesse per gli uFo. il guaio è che, dopo averlo incontrato brevemente a una conferenza, non credo a una sola parola di ciò che sostiene di aver visto! LXP

036_039_LXP_147_LXF183.iview 39 21/10/14 22:06

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

40 LInux pro 147 LInux pro 147 41

Aquelli che come noi hanno le casa piena di pC, laptop, tablet e smartphone, l’idea di non avere

accesso a Internet o addirittura a un qualsiasi computer risulta inconcepibile. Eppure è tuttora la realtà per il 70% della popolazione mondiale, cioè per cinque miliardi di persone. Il progetto One laptop per child, con il suo innovativo, robusto e poco costoso laptop xo, cerca di fornire un computer al più vasto numero di persone possibile, al costo di 100 dollari (i dettagli su http://laptop.org). Il progetto Keepod utilizza un approccio differente. Considerato che ci sono un gran numero di vecchi pC sparsi per il mondo, il progetto distribuisce una chiavetta uSB da 7 dollari che contiene una versione live di Android 4.4 (così dice il sito) e dispone di un po’ di spazio libero per archiviare i file personali. L’idea è che i bambini condividano i pC riciclati, ma che ognuno conservi il suo personale ambiente di lavoro sul suo Keepod personale. Il suo utilizzo non lascia tracce sul pC che lo ospita; la macchina non ha nemmeno bisogno di un disco rigido. Dal punto di vista tecnologico non c’è nulla di nuovo, naturalmente: siamo abituati a far partire i computer da media live. Quello che è nuovo è l’idea di diffondere Keepod in alcuni dei paesi più poveri del mondo. Dopo aver raccolto 40.000 dollari in crowdfunding su Indegogo, Keepod unite ha ora avviato il suo primo progetto alla

Whynot Academy di nairobi, nel quartiere degradato di Mathari. Sarei ben felice che Keepod avesse successo, ma non posso fare a meno di pensare che rimangono aperti alcuni problemi fondamentali, come la fornitura e la manutenzione dei computer, la loro alimentazione elettrica o la ricarica delle batterie, la connessione a Internet e la possibilità che i genitori dei bambini vendano il keepod dei figli per comprarsi qualcosa da mangiare. Se vi interessa un resoconto entusiastico del progetto guardate il video della BBC all’urL http://bbc.in/QrbUBO oppure visitate il sito Web ufficiale del progetto http://keepod.org. A proposito, ne ho ordinato uno. Se riesco a farlo partire vi farò sapere come funziona.

Nella maggior parte dei corsi di formazione dedicati a Linux che tengo si finisce inevitabilmente per discutere

su come “configurare le cose” e di solito io metto in evidenza i vantaggi derivanti dalla modifica manuale dei file di configurazione. Sottolineo il fatto che, dato che tutta la configurazione del sistema è mantenuta in semplici file di testo sotto /etc, un editor di testo è l’unico strumento di configurazione di cui avete bisogno. Faccio notare come in molti casi avrete a disposizione unicamente un login di solo testo sulla macchina che state configurando. Chiarisco che l’utilizzo di un gradevole front-end grafico non vi esime dalla necessità di comprendere quello che avviene dietro le quinte. Spiego che non è possibile creare script di shell che utilizzino strumenti grafici. A volte però devo contraddirmi... se voglio configurare Samba è meglio lavorare direttamente su /etc/smb.conf o puntare il browser alla porta 901 e usare SWAT? Se voglio aggiungere una stampante al mio sistema ubuntu devo modificare a mano /etc/cups/printers.conf oppure è meglio cliccare sull’icona Impostazioni e seguire il percorso guidato per aggiungere una stampante o magari navigare sulla porta 631 su cui si trovano le pagine di configurazione di CupS? Se voglio configurare un firewall sul mio sistema red Hat meglio creare a mano una serie di comandi iptables o lanciare system-config-firewall? E che dire di webmin? Mi conviene adottarlo? C’è da fidarsi? potrei fare domande simili anche per quanto riguarda la modifica di altri aspetti della configurazione del sistema, come l’impostazione dei parametri Ip della scheda di rete o l’aggiunta di un nuovo utente. Testo o grafica? Dove tracciare la linea di divisione? Mi interessa il vostro punto di vista, scriveteci!

Testo o grafica?

Keepod afferma di essere in grado di fornire a tutti un accesso a un computer per 7 dollari...

Keepod

040_043_LXP_147_LXF187.sysadmin 40 22/10/14 17:15

SysadminSysadmin

40 LInux pro 147 LInux pro 147 41

dice ai resolver come getpwnam di cercare per prima cosa nel file locale degli account (/etc/passwd) e poi consultare Winbind. Questi nomi non sono arbitrari, ma specificano le librerie che verranno utilizzate per eseguire la ricerca. Quindi, se per esempio la voce files dice di utilizzare la libreria libnss_files.so, mentre la voce winbind dice di usare la libreria libnss_winbind.so, e così via. Quindi la semplice inclusione di winbind nella lista significa che deve essere consultato il servizio Winbind. Teniamolo a mente e passiamo ad altro... Come probabilmente saprete, la maniera in cui vengono prese le decisioni relative all’autenticazione in Linux è controllata da un sottosistema chiamato PAM (Pluggable Authentication Modules). Qualsiasi programma che abbia bisogno di eseguire un’autenticazione (per esempio il demone SSH o il classico programma di login a riga di comando) consulta il suo personale file di configurazione pAM (come /etc/pam.d/sshd o /etc/pam.d/login) per capire quale combinazione di moduli pAM deve usare. Di nuovo potrei divertirvi con un intero tutorial dedicato al funzionamento di pAM, ma per ora quello che conta è che ce n’è uno chiamato pam_winbind che delega le decisioni relative all’autenticazione a un domain controller Windows o a un server Active Directory chiamando il servizio Winbind.

I l mese scorso ho usato Samba per creare uno share di file a cui fosse possibile accedere da una macchina Windows. Questo mese voglio occuparmi di autenticazione. In particolare mostrerò come

sia possibile utilizzare un servizio chiamato Winbind per consentire a un server Samba di ottenere informazioni sugli account degli utenti da un Windows Domain Controller o da un server Active Directory. Winbind è un servizio che collega il mondo Linux degli account utente e dell’autenticazione con gli equivalenti per Windows. È utile quando si ha una mescolanza di sistemi Linux e Windows e un’ampia popolazione di utenti, dato che è sufficiente definire gli account in un solo posto: in Active Directory. Quest’ultima è a sua volta amalgama di una directory LDAp, della versione Microsoft di Kerberos e di un DnS. Ha iniziato a circolare con Windows 2000 e fa parte (con progressive estensioni) di tutti i successivi prodotti server di Windows.

Descrizione generaleper capire come Winbind si inserisce nel quadro generale cominciamo con una visione molto Linux-centrica degli account utente. nella libreria C standard ci sono le cosiddette funzioni resolver, getpwnam e getpwuid, che permettono di recuperare informazioni sull’account di un utente partendo dal suo nome o dal suo uID. C’è anche la getpwent che permette di iterare su tutti gli account, uno per uno. Questi resolver consultano il file di switch del name service (/etc/nsswitch.conf), che dice loro dove cercare le risposte. In questo file ci sono anche informazioni usate da altri resolver, come gethostbyname, che cerca informazioni sugli host (principalmente l’indirizzo Ip) a partire dal nome, ma la cosa non ci interessa in questo momento. La riga alla quale siamo interessati è quella che specifica la sorgente dei dati passwd. per esempio la rigapasswd: files winbind

Come usare l’autenticazione in Samba e quindi centralizzare tutti gli account utente in una Windows Active Directory

Integrare Linux e Windows

I livelli di sicurezza di SambaLe impostazioni di sicurezza in smb.conf modificano il modo in cui Samba esegue l’autenticazione. Dei cinque possibili livelli di sicurezza, due sono quelli interessanti.security = user: nome utente e password inseriti dagli utenti vengono

effettivamente verificati usando il file locale delle password. security = ads: gli utenti vengono autenticati nel dominio Active Directory di cui il server Samba è entrato a fare parte. È l’impostazione utilizzata in questo tutorial.

Ricerca di un account utente

Autenticazione

Un server Linux “Domain Member

server”

Controller di dominio NT

Controller di dominio Active

Directory

libnss_winbind

pam_winbind

Winbind

-----------------Librerie Kerberos

/etc/nsswitch.conf

/etc/pam.d/xxxx

/etc/krb5.conf

smb.conf

Chiamata RPC Microsoft

Winbind crea un ponte tra i mondi Linux e Windows, con funzionalità come la ricerca dei nomi e autenticazione basata su PAM in un dominio Windows

040_043_LXP_147_LXF187.sysadmin 41 22/10/14 17:15

SysadminSysadmin

42 LInux pro 147 LInux pro 147 43

Winbind non è un servizio nel senso tradizionale del termine perché ascolta soltanto su un socket interno (di dominio unIx) e quindi offre il suo servizio solo alla macchina locale.

Rimbocchiamoci le manicheLa mia missione questo mese consiste nel mostrarvi come usare Winbind per ottenere informazioni sugli account utente che abbiano senso nel modo Linux ma che provengano da Active Directory e come autenticarsi con un server AD. A tale scopo userò Samba 3.6 su CentoS 6.5 dal lato Linux e Windows Server 2012 r2 dal lato Windows. Di solito quando scrivo questi tutorial mi aspetto che, se voi seguite fedelmente le mie istruzioni, le cose funzionino nel modo da me descritto. In questo caso però ci sono troppe variabili perché possa indicarvi i comandi precisi che dovete usare affinché tutto funzioni al 100% come previsto. per prima cosa verifichiamo che i nostri orologi siano sincronizzati. Kerberos usa data e ora per ridurre il rischio di replay attack e non funziona se la differenza di orario tra gli orologi della macchina Samba e quello del server AD è troppo grande. Quindi imposteremo l’orologio con un comando:# date 06030839

La soluzione migliore consiste nel lanciare il demone ntpd per mantenere l’orologio sincronizzato. Installate il pacchetto ntp e poi avviate il servizio e configuratelo per partire all’avvio della macchina:# service ntpd start# chkconfig ntpd on

potete verificare che il demone ntp si sia connesso con successo con i suoi pari con il comando:# ntpq -p

non saltate questo passaggio: è importante. Io sto facendo girare la mia macchina Samba all’interno di una VirtualBox e lasciandolo senza controllo l’orologio della macchinaa sbaglia di parecchio. ora dobbiamo fare qualche lavoro di configurazione. per prima cosa aggiungo una riga a /etc/hosts:192.168.1.150 adserver.Lxp.local adserver

L’indirizzo Ip qui sopra è quello del mio server AD. Questa riga mi consente di riferirmi a esso nelle successive configurazioni usando il suo nome anziché l’indirizzo Ip. poi inserisco una riga in /etc/resolv.conf per specificare il controllore AD come mio server DnS:nameserver 192.168.1.150

Fate attenzione: se è in esecuzione, networkManager riscriverà resolv.conf con i DnS sbagliati. probabilmente conviene fermarlo e gestire le connessioni di rete alla vecchia maniera.

Quante teste avete?ora dobbiamo configurare Kerberos che nasce dal lavoro svolto al MIT all’interno del progetto Athena negli anni ‘80. È un servizio di

autenticazione che emette “biglietti” che un’applicazione può usare per provare la propria identità alle altre applicazioni. L’idea è quella di fornire un ambiente con un singolo punto di autenticazione. Kerberos è importanti perché Active Directory li usa per l’autenticazione. Dovremo familiarizzarci con la terminologia Kerberos. per prima cosa un principal è un’entità a cui Kerberos può assegnare un ticket, un biglietto; cioè un’entità che è in grado di provare la sua identità ad altre applicazioni. Esempi tipici di principal sono un utente o un computer. Secondo, un realm è una raccolta di risorse dotata di un nome e protetta da Kerberos. un ticket è un insieme di credenziali che vengono presentate a un servizio per dimostrare che si è autorizzati ad accedere a esso. Il ticket è cifrato con un chiave privata nota solo al servizio e a Kerberos. I ticket sono distribuiti da un Key Distribution Centre (KDC). Il primo ticket che ricevete è il vostro ticket granting ticket (TGT); in seguito presenterete questo ticket a un server ticket-granting per ricevere un ticket per un servizio specifico. Quando eseguite il login in un sistema che usa Kerberos dovete eseguire kinit per ottenere il vostro TGT, ma di solito questo passaggio è integrato all’interno della procedura di login. Il demone Winbind si affida alle librerie di Kerberos per eseguire l’autenticazione con un server Active Directory e queste librerie a loro volta leggono il file di configurazione /etc/krb5.conf. Questo file descrive il realm di default di Kerberos e la posizione dei centri di distribuzione delle chiavi. Ecco il file krb5.conf che ho usato:[libdefaults] default_realm = Lxp.LoCAL

[realms] Lxp.LoCAL = { kdc = adserver.Lxp.local default_domain = Lxp.LoCAL }

[domain_realm] .Lxp = Lxp.LoCAL Lxp = Lxp.LoCAL

[kdc] profile = /etc/krb5kdc/kdc.conf

[logging] kdc = FILE:/var/log/krb5kdc.log admin_server = FILE:/var/log/kadmind.log default = FILE:/var/log/krb5libs.log

In questo file, LXP.LOCAL è il nome del realm Kerberos. per verificare se la configurazione è corretta proviamo a ottenere un ticket per un utente che si trova nella nostra Active Directory:$ kinit [email protected] for [email protected]:

per avere una lista dei propri ticket si usa il comando klist:$ klistTicket cache: FILE:/tmp/krb5cc_500Default principal: [email protected] starting ExpiresService principal06/03/14 10:43 06/03/14 11:43 krbtgt/[email protected]

Se questo funziona, Kerberos è a posto. In caso contrario non funzionerà niente di quanto esporremo in seguito finché non saremo in grado di dialogarci. A questo punto dobbiamo configurare Winbind, che legge la configurazione dallo stesso file da cui la leggono gli altri demoni Samba: /etc/samba/smb.conf.

Cosa? Una videata

Windows in una rivista dedicata

a Linux? In questo esempio

vediamo l’utente Fred che abbiamo

definito in Windows

Server 2012 Active

Directory

040_043_LXP_147_LXF187.sysadmin 42 22/10/14 17:15

SysadminSysadmin

42 LInux pro 147 LInux pro 147 43

Le righe che ho aggiunto sono:workgroup = Lxpsecurity = adspassword server = adserver.Lxp.localrealm = Lxp.LoCALwinbind uid = 20000-30000winbind gid = 20000-30000template shell = /bin/bashwinbind use default domain = truewinbind separator = +

La riga security = ads dice a Samba (e a Winbind) di delegare le decisioni relative all’autenticazione a un server Active Directory. Quando verrà consultato per fornire informazioni su un account utente, Winbind non troverà un ID di utente e di gruppo stile Linux in Active Directory, quindi li creerà al momento. Le impostazioni winbind uid e winbind gid in smb.conf specificano gli intervalli all’interno dei quali scegliere questi uID e GID. per dire ai resolver di consultare Winbind per avere informazioni sugli account utente dobbiamo modificare le corrispondenti righe di /etc/nsswitch.conf:passwd: files winbindshadow: filesgroup: files winbind

ora siamo pronti per entrare a far parte del dominio. possiamo farlo con il comando net, contenuto nel pacchetto Samba:# net ads join -u Administrator%qui-la-password-di-adminusing short domain name -- LxpJoined ‘CEnToS65’ to dns domain ‘Lxp.local’DnS update for centos65.example.com failed: Error_DnS_GSS_

ErrorDnS update failed!

L’ingresso nel dominio crea in AD un elemento relativo alla nostra macchina, che è ora nota come domain member server. possiamo verificare che tutto ciò sia avvenuto con successo con il seguente comando:# net ads testjoinJoin is oK

Funziona! Se tutto va bene ora siamo in grado di interrogare direttamente Winbind per ottenere la lista degli utenti in AD:# wbinfo -uadministratorguestkrbtgtfredbarney

fred e barney sono due account utente che ho aggiunto ad Active Directory. Analogamente wbinfo -g dà la lista dei gruppi.un test più utile consiste nel verificare che i resolver siano in grado di vedere le informazioni contenute in AD. È possibile farlo con il comando getent:$ getent passwd chris fredchris:x:500:500:Chris Brown:/home/chris:/bin/bash

fred:*:20000:20000:Fred Flintstone:/home/Lxp/fred:/bin/bash In questo caso stiamo facendo una richiesta di informazioni relative ai nomi utente chris e fred. La prima risposta proviene dal sistema Linux mentre la seconda proviene da Active Directory. Magico! notate come l’uID sia 20000; questo corrisponde al valore minimo dell’intervallo assegnato in smb.conf. Sebbene l’assegnazione iniziale di un uID a fred sia (in un certo senso) arbitraria, Windbind è consistente. La corrispondenza tra SDIS di Windows e l’uID scelto da Winbind sono conservate nel database /var/lib/samba/winbindd_idmap.tdb, quindi d’ora in poi Winbind assegnare sempre l’uID 20000 a fred.

Ci siamo finalmente?Quasi finito! L’ultima cosa da fare è delegare le decisioni relative all’autenticazione ad AD. possiamo fare una verifica iniziale:# wbinfo -a fredEnter fred’s password:plaintext password authentication succeededEnter fred’s password:challenge/response password authentication succeeded

Dobbiamo usare authconfig-tui per informare pAM della presenza di Winbind (vedere la videata qui sopra). A questo punto siamo finalmente in grado di collegarci come fred. nell’esempio qui sotto eseguo un login SSH da una macchina ubuntu su un sistema CentoS (il server Samba che fa da domain member server):$ ssh [email protected]@192.168.1.76’s password:Last login: Tue Jun 3 08:48:16 2014Could not chdir to home directory /home/Lxp/fred: no such file or

directoryFred non ha una directory home, ma l’autenticazione funziona! possiamo verificare di essere veramente fred in questo modo:-bash-4.1$ iduid=20000(fred) gid=20000(domain users)groups=20000(domain users),20003(BuILTIn+users)

È tutto per questo mese. Siamo riusciti ad avere accesso alle informazioni relative agli account utente in una Active Directory e abbiamo eseguito l’autenticazione con controller di dominio AD. LXP

authconfig-tui, lo strumento di Red Hat usato per automatizzare le modifiche a nsswitch.conf e ai file di configurazione di PAM

Questo tutorial è basato su Samba 3.6: Samba 4 è uscito ormai da quasi un anno. Se lo usate solo per fornire servizi di condivisione di file e di stampa come membri di un dominio, questa versione può sostituire senza problemi la versione 3 e fornire gli stessi servizi per mezzo dei medesimi demoni (smbd, nmbd e winbindd), anche se ha prestazioni migliori

ed è in grado di lavorare con le versioni più recenti di SMB/CIFS. La cosa che rende interessante la nuova versione di Samba è invece la sua capacità di partecipare completamente a un dominio Active Directory, anche con il ruolo di controller di dominio. per fare questo ha raggruppato in un singolo server, chiamato samba, le funzioni di server LDAp,

Kerberos e DnS. può esser configurato con lo strumento a riga di comando samba-tool, che offre una pletora di sottocomandi relativi a cose come l’adesione a un dominio, l’interrogazione e la gestione del DnS e la gestione delle politiche di gruppo. In ogni caso se state cercando un tutorial su Samba 4 questo di sicuro non lo è!

Samba 4

040_043_LXP_147_LXF187.sysadmin 43 22/10/14 17:15

44 Linux pro 147

L’angolo di

News, recensioni e guide sul sistema operativo libero per smartphone

Android

Uno dei principali punti di forza degli smartphone Windows Phone è ora disponibile anche per i modelli del robottino verde

Q uando ancora Android non esisteva c’erano già le mappe di nokia che giravano sugli

smartphone Symbian con soddisfazione di pochi valorosi appassionati. oggi, a quasi 10 anni di distanza, per miliardi di persone ci sono le mappe di Google, quelle di Apple e di molti altri sviluppatori indipendenti, ma le mappe di nokia rimangono per molti le migliori se non altro perché possono essere utilizzate offline, senza cioè bisogno di una connessione a internet. Da ottobre le mappe Here saranno disponibili per gli smartphone Samsung su cui giri almeno Android 4.3 e poi arriveranno sul play Store

per tutti quelli che hanno uno smartphone con Android 4.3 e oltre. rispetto alle mappe di Google il vantaggio principale rimane la possibilità di scaricare intere nazioni o volendo anche interi continenti, a condizione naturalmente di avere i GB necessari, che però possono essere archiviati anche su schede di memoria. noi abbiamo scaricato la mappa della Lombardia che ha occupato circa 200 MB di spazio, per quella dell’italia è necessario circa un gigabyte. Le caratteristiche di Here comprendono la navigazione vocale strada per strada, anche se la versione beta che abbiamo provato aveva disponibile solo la lingua inglese, le indicazioni sugli autovelox

Le mappe Here di NokiaSe hai news da segnalarci o dei commenti scrivici ad [email protected]

e anche quelle sul traffico, per queste ultime naturalmente occorrerà una connessione 3G attiva. inoltre nokia garantisce la sincronizzazione delle mappe di Here anche con gli smartwatch Samsung Gear S e subito dopo con gli Android Wear. in pratica sarà possibile creare l’itinerario sullo smartphone e visualizzarlo in tempo reale sul piccolo schermo dello smartwatch, soluzione ideale per chi gira in bicicletta o in moto.

Google al centro

Android è un sistema operativo open Source sviluppato da Google sulla base del kernel

Linux e come tale può essere modificato e distribuito liberamente, tranne naturalmente per le app proprietarie di Google. per poter inserire queste ultime i produttori devono accettare il Mobile Application Distribution Agreement, cioè un accordo con il quale si impegnano a seguire le indicazioni di Google e a inserire un numero minimo di app e di widget proprietari. nell’ultimo periodo però singoli produttori come Samsung e LG hanno realizzato versioni di Android estremamente personalizzate in cui le app del produttore

di Mountain View erano nascoste e in parte addirittura assenti, fatta eccezione naturalmente per il Play Store che rappresenta il vero valore aggiunto del sistema. ora però Google ha deciso di rendere più rigidi questi requisiti, in pratica i produttori se vorranno avere il play Store dovranno inserire almeno 20 delle app di Google, di cui una cartella nella schermata principale del desktop, attivare la gesture che prevede l’accesso rapido a Google now con uno swipe dal basso o dal pulsante della Home, mettere la barra di ricerca su tutte le schermate del desktop, attivare il riconoscimento vocale oK Google e inserire la frase powered by Google durante l’avvio. L’alternativa? Fare

come Amazon che ha deciso di non avere alcuna app Google nella propria versione del sistema ma che così facendo ha dovuto anche rinunciare al play Store originale sostituendolo con il proprio, con risultati che al momento non sono propriamente esaltanti. LXP

Le mappe Nokia Here di tutto il mondo possono essere

scaricate gratuitamente e usate senza bisogno di una

connessione a Internet

Per continuare ad avere l’accesso al Play Store, i produttori dovranno inserire nella pagina iniziale del desktop una cartella con le principali app di Google, Google Now e la barra di ricerca

044_LXP_147_news android 44 21/10/14 22:07

PROG_Special2_CR_210x285.indd 110 12/09/14 14:05

46 Linux pro 147

L’angolo di Android Samsung Galaxy Alpha

Caratteristiche 8Prestazioni 7.5Autonomia 6Qualità/prezzo 7.5

Samsung Galaxy Alpha

Un primo passo di Samsung alla ricerca di quei clienti che in uno smartphone oltre alla tecnologia cercano il design.

Il voto di Linux Pro

Giudizio

Produttore: Samsung Web: www.samsung.itPrezzo: €599

7.5

Samsung è saldamente il numero uno tra i produttori di smartphone Android grazie

soprattutto alla serie dei Galaxy e a quella dei note, ormai giunte alla quinta generazione. Eppure nonostante la dotazione hardware non abbia rivali, e non solo nel settore Android, sono in molti ad accusare il produttore coreano di realizzare dispositivi troppo plasticosi e sicuramente meno belli dei corrispondenti modelli di HTC e naturalmente di Apple. E così mentre molti si aspettavano che il Galaxy S5 sarebbe stato realizzato con materiali più nobili della plastica, Samsung ha spiazzato tutti confermando la struttura in plastica del Galaxy originale ma aggiungendo un nuovo modello in metallo, il Galaxy Alpha. Sottile e leggero Galaxy Alpha è decisamente differente da tutti gli smartphone Samsung che abbiamo provato fino a oggi. L’impressione immediata è quella di avere tra le mani un dispositivo ultraleggero e in effetti 115 grammi per uno smartphone da 4,7 pollici sono veramente pochi. E se a questo poi si aggiunge uno spessore inferiore ai 7 millimetri ci si rende conto che al momento sono pochi i terminali più leggeri di questo, anche lo stesso iphone 6 pur avendo un display dalle stesse dimensioni pesa 15 grammi in più. Avere ridotto le dimensioni in maniera drastica ha però obbligato Samsung a utilizzare una batteria da soli 1860 mAH, molto meno capiente della media e che pone il rischio concreto di non riuscire a finire nemmeno una giornata di utilizzo intenso. iniziamo col valutare il display Super Amoled che, pur avendo una risoluzione di “soli” 1280x720 pixel (esattamente la metà dei modelli al top), ci ha pienamente convinto sia a livello

quest’ultimo Galaxy Alpha può riprendere video a 4K, con l’effetto moviola e con il sistema HDr automatico. ottimo anche l’illuminatore che permette di risolvere molte situazioni di luce scarsa. E poi c’è il Touchwiz, cioè la versione Samsung del launcher di Android 4.4 KitKat che potrà non piacere, ma che è indubbiamente completa e a volte persino oppressiva visto

che integra widget non proprio strategici come la rivista personale basata su Flipboard che non possono essere disinstallati. Le app Samsung sono quelle solite, a partire dal sistema di riconoscimento S-Voice e dal gruppo di app dedicate alla salute riunite in S Health. il sistema di riconoscimento dell’impronta digitale è abbastanza preciso ma ha il limite di richiedere un paio di secondi di elaborazione prima di far accedere alla schermata Home, rimane più veloce allora il classico sistema di sblocco con

Samsung Galaxy Alpha

sequenza o password. L’autonomia è come previsto il vero punto debole di Galaxy Alpha, a noi è capitato di arrivare alle 17 col 10% di autonomia, veramente poco per chi usa lo smartphone per lavoro. in definitiva si tratta di un nuovo corso per Samsung che va incontro alle richieste di maggiore qualità giunte da molti clienti. il rischio però è che molti lo considerino, per le dimensioni ridotte e per la minore risoluzione, come un fratellino minore di S5, mentre il prezzo rimane sempre ai massimi della categoria. LXP

Il primo smartphone in metallo di Samsung ha spessore e peso ridotti al minimo

di resa cromatica che di luminosità, al punto da risultare meglio visibile dello stesso S5 sotto la luce diretta del sole. inoltre è possibile abilitare la funzione per l’uso con i guanti e questo non è un vantaggio da poco soprattutto ora che andiamo verso l’inverno. La sezione hardware vede l’abbandono del chip Qualcomm Snapdragon in favore di quello a marchio Samsung, cioè l’Exynos 5 octa 5430 che ha la caratteristica di poter utilizzare tutti gli otto core contemporaneamente e che non ha nulla da invidiare allo SnapDragon S801. La memoria rAM è di 2 GB mentre quella di archiviazione è da 32 GB, una quantità più che sufficiente per la maggior parte degli utilizzi che però non potrà essere ampliata ulteriormente vista la mancanza dell’alloggiamento per le schede microSD. il resto della dotazione hardware è da top di gamma e comprende tutti i sensori del Galaxy S5 a eccezione del trasmettitore a raggi infrarossi. C’è invece il rilevatore di

impronte digitali e vicino al flash il sensore del battito cardiaco. per quanto riguarda la connettività, la dotazione è al top: LTE da 150 Mbps, Wi-Fi a/b/g/n/ac, bluetooth 4.0, nFC e GpS con GLonASS. Fotocamera e software Lo spessore inferiore ai 7 millimetri ha costretto Samsung a inserire un sensore fotografico da 12 megapixel che si è comunque rivelato di livello paragonabile a quello da 16 megapixel del Galaxy S5. Come

Il look è quello classico Samsung con il grosso pulsante centrale, cambiano i pesi e il feeling grazie alla struttura in metallo

“Lo schermo Super Amoled da 4,7 pollici risponde al touch anche se chi lo usa indossa i guanti”

046_LXP_147_rec_android 46 24/10/14 17:31

Linux pro 147 47

OnePlus One L’angolo di Android

Caratteristiche 10Autonomia 10Prestazioni 10Qualità/prezzo 10

OnePlus One

Un prezzo contenuto per una quantità di tecnologia e prestazioni impensabili.

Il voto di Linux Pro

Giudizio

Produttore: oneplusWeb: http://oneplus.netPrezzo: € 299

10

D i fronte a un dispositivo come l’One di oneplus è davvero difficile decidere da dove

cominciare. Tra l’altro, si rischia di risultare poco credibili nel giudizio, visto l’entusiasmo che suscita. Ma cerchiamo di andare con ordine. oneplus è una piccola azienda cinese nata da una costola di oppo, quindi con l’obbligo di fare bene i propri compiti per sperare di avere qualche possibilità di dare almeno un po’ fastidio a colossi come Samsung, nokia e LG. oltretutto, lo slogan “Mai accontentarsi” con cui pubblicizza questo smartphone è quanto mai impegnativo. Ma i dubbi vengono spazzati via in un battibaleno quando cominciamo a scoprire cosa c’è dentro questo involucro dal design minimalista eppure molto gradevole, impreziosito da una bordatura argentata che segue il contorno dello schermo da 5,5”. Cominciamo dal processore, uno Snapdragon 801 quad-core da 2,5 GHz che è attualmente il numero uno sul mercato e che è coadiuvato da ben 3 GB di rAM. Ma non basta, perché l’one fa una splendida figura anche con la memoria interna, mettendocene a disposizione ben 64 GB, un vero record, così non dovremo nemmeno comprare la classica scheda MicroSD, che tra l’altro non potremmo mettere da nessuna parte, visto che non c’è lo slot. Quindi, con questo dispositivo, non solo potremo memorizzare e installare un

operativo, è impossibile non accorgersi che questo modello di smartphone sia stato pensato per gli utenti che vogliono smanettare con il proprio dispositivo. infatti è stata inclusa CyanogenMod, la roM più amata dagli appassionati di Android. per l’esattezza, qui siamo alla presenza di una versione migliorata di CyanogenMod 11S, inoltre avremo a disposizione il supporto per le nightly build di CM e un bootloader sbloccato. insomma, c’è materiale sufficiente per divertirsi davvero. A questo punto non ci resta da chiederci se oneplus abbia risparmiato sulla qualità dei materiali. La risposta è ancora una volta no, perché anche in questo caso non ci sono critiche da muovere. in realtà, l’unico vero problema è riuscire a procurarsi uno di questi smartphone eccezionali.

OnePlus One

Nonostante il design minimalista, indubbiamente l’OnePlus One è un oggetto esteticamente molto gradevole, impreziosito da un bordino argentato leggermente incavato che circonda lo schermo

infatti, all’inizio, oneplus ha avuto serie difficoltà a produrre un numero di dispositivi sufficiente ad accontentare le richieste di mercato, tant’è che per averlo era necessario passare attraverso un sistema di inviti. Ma da ottobre è possibile prenotarlo. LXP

Uno smartphone che lascia completamente a bocca aperta per l’incredibile rapporto qualità/prezzo: l’unico problema è metterci le mani sopra!

sacco di roba, ma faremo girare perfettamente qualsiasi tipo di applicazione, anche i videogiochi più avidi di risorse. nemmeno lo schermo da 5,5” delude. infatti, con i suoi 401 pixel per pollice e la risoluzione da 1920 x 1080 avremo immagini sempre nitide e dai colori ben calibrati. inoltre è protetto da un vetro Gorilla Glass 3 e risulta essere estremamente luminoso anche all’esterno. il sonoro è forte e chiaro, così potremo usare questo smartphone per guardare film senza rinunciare proprio a niente. ottime notizie giungono anche dalla sezione fotografica che ha a disposizione un’app pensata per ottenere il massimo dai 13 Mpixel della fotocamera posteriore e dai 5 Mpixel di quella anteriore, che ci consente di scattare dei selfie di altissima qualità. Tutta questa profusione tecnologica potrebbe però crollare come un castello di carte se non fosse supportata da una autonomia adeguata. ovviamente oneplus non si è fatta prendere in contropiede neppure in un simile frangente e ha dotato questo smartphone di una batteria da 3100 mAh, capace di resistere, senza tanti problemi, anche alla giornata di lavoro più intensa. riguardo alla connettività, l’unico neo è rappresentato dall’assenza del supporto all’audio Bluetooth Aptx. Comunque, questa carenza non è imputabile al produttore, ma alla versione Android stock adottata. restando in tema di sistema

Scheda tecnica Sistema operativo

Android 4.4.2 Processore

Qualcomm Snapdragon 801 quad-core da 2,5 GH

Memoria 3 GB

Dim. 152,9 x 75,9 x 8,9 mm Peso 162 grammi Schermo 5,5” Risoluzione schermo

1920 x 1080 pixel Espansione no

047_LXP_147_rec_android_2 47 22/10/14 17:24

48 Linux pro 147

L’angolo di Android ASUS ZenFone 6

Caratteristiche 8Autonomia 8Prestazioni 7Qualità/prezzo 8

ASUS ZenFone 6

Il display da 6” è uno dei punti di forza di questo smartphone dalle caratteristiche nella media.

Il voto di Linux Pro

Giudizio

Produttore: Asus Web: www.asusplus.it/zenfonePrezzo: €299

7.5

L a nuova gamma ZenFone di Asus si presenta al pubblico con ben quattro modelli che si

differenziano principalmente per le dimensioni dello schermo, che vanno dai 4”, del modello più piccolo, ai 6” del phablet che stiamo prendendo in considerazione. Diciamo subito che tutta la serie ZenFone risponde a delle caratteristiche comuni che sono la semplicità d’uso, la solidità e un’estetica molto classica e rassicurante. Abbiamo quindi un tipico smartphone dai bordi arrotondati e dai dispositivi di accensione e di controllo del volume posti sul bordo destro. All’interno, troviamo un processore intel® Atom™ Z2580 Dual-core a 2 GHz affiancato da 2 GB di rAM. La memoria è di 16 GB, che possiamo espandere grazie a una normale scheda MicroSD, a cui però si affiancano altri 5 GB di spazio cloud Asus gratuiti. Queste caratteristiche gli garantiscono buone prestazioni, anche quando si tengono aperte più applicazioni. Tuttavia, con i videogiochi più avidi di risorse, può mostrare un po’ la corda. in sostanza è perfettamente allineato con le prestazioni medie attualmente disponibili anche sui modelli della concorrenza. più vicino alle prestazioni degli smartphone di fascia alta è il reparto fotografico. infatti abbiamo a disposizione una fotocamera posteriore da 13 Mpixel, che garantisce foto

di coloro che affrontano per la prima volta il sistema operativo Android, rendendoglielo piacevole e facile da usare. un’altra caratteristica interessante è la visualizzazione sulla schermata di blocco degli appuntamenti e delle scadenze, in modo tale che avremo sempre tutto sott’occhio, senza dover necessariamente attivare l’interfaccia principale. oltretutto, grazie a un’app presente in Zenui, potremo facilmente organizzare i nostri appuntamenti e suddividerli in base al comportamento che vogliamo che tengano. per esempio, possiamo visualizzarli nel pannello delle notifiche e collegarli a quanti account vogliamo per la sincronizzazione. parlando invece di aspetti molto meno tecnici, l’ASuS ZenFone 6 ci mette a disposizione tutta una serie di cover colorate intercambiabili, così avremo

ASUS ZenFone 6

sempre lo smartphone del colore giusto. in conclusione, questo phablet ha un buon rapporto qualità/prezzo, considerate le prestazioni e le caratteristiche. La cifra di 299 euro è quindi più che mai giustificata e rende lo ZenFone 6 tra i dispositivi più convenienti della sua fascia di mercato. LXP

Il modello di punta della seria ZenFone si fa notare per l’ampio display e per il prezzo piuttosto contenuto, nonostante le buone caratteristiche

di buona qualità, anche in condizioni di luce particolarmente difficili, grazie alla tecnologia pixel Master. invece la fotocamera anteriore è da 2 Mpixel, che va benissimo per i selfie. Lo schermo da 6” è protetto da un vetro in Gorilla Glass 3 ed è costituito da un pannello ipS. La risoluzione da 1280 x 720 pixel non è sorprendente, ma resta perfettamente nella media e ci restituisce immagini nitide e brillanti. Anche i testi risultano chiari da leggere e senza sfocature. il display dello ZenFone 6 ha comunque una caratteristica molto interessante. infatti è dotato della tecnologia Glove Touch, che ci permette di usarlo anche con i guanti, utilissima soprattutto nel periodo invernale. nella media anche l’autonomia. Asus ci promette 28 ore di conversazione, ma come sappiamo sono valori più che altro indicativi. Diciamo che un uso normale di questo dispositivo mobile ci dovrebbe garantire 24 ore consecutive, senza bisogno di ricorrere al caricabatterie. Con questo phablet, Asus punta senza alcun dubbio sulla facilità e sulla praticità d’uso. Grazie all’interfaccia utente Zenui, che in sostanza è un ottimo sistema di notifiche, possiamo accedere velocemente a tutte le impostazioni, anche a quelle rapide. in pratica, nella progettazione di questa interfaccia utente, si è tenuto conto in modo particolare

Scheda tecnica Sistema operativo Android

4.3 con interfaccia Asus Zenui Processore intel® Atom™

Z2580 Dual-core a 2 GHz Dimensioni

166,9 x 84,3 x 9,9 mm

Memoria 2 GB di rAM Peso 196 grammi Schermo 6’’ Risoluzione schermo

1280 x 720 pixel Espansione MicroSD

L’interfaccia utente ZenUI rende questo smartphone molto pratico, poiché permette di accedere in modo veloce e intuitivo alle impostazioni di sistema, a quelle rapide e anche a quelle di Asus senza mai smarrirsi

048_LXP_147_rec_android_1 48 22/10/14 18:01

Test >>280X DirectCU II TopUna scheda video ottima

per i giochi più recenti pag. 50

AVM FRITZ!Box 7490Un ottimo modem/router per

i professionisti e non pag. 52

Epson EcoTankLe stampanti che vi faranno

risparmiare nei costi per le

cartucce pag. 53

Raspberry Pi Compute ModuleLa nuova versione per i vostri

progetti fai-da-te pag. 54

Scribus 1.4.4 Un buon programma per l’era

dell’editoria elettronica pag. 56

Zbox EI730 PlusLa versione aggiornata del

potente mini PC Zotac pag. 57

Confronto >>Riconoscimento vocale pag. 58∆ FreeSpeech ∆ Julius ∆ Palaver

∆ Simon ∆ Speech-App

Da non perdere >> pag. 64

AVM FRITZ!Box 7490

Simon

Midnight Commander

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 147 49

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

049_LXP_147_introRecens 49 22/10/14 17:15

50 Linux pro 147

Test 280X DirectCU II Top

280X DirectCU II Top

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

Asus 280X DirectCU II Top

Una scheda di fascia medio-alta in grado di supportare i giochi più recenti.

Il voto di Linux Pro

Giudizio

Sviluppatore: Asus Web: www.asus.comPrezzo: €320

8

Vogliamo costruirci un sistema Steam: è questa la scheda video ideale per le nostre esigenze?

Questa scheda ha subìto un overclocking di fabbrica per mano di Asus. La velocità nominale del core è di 1070 MHz, contro i 1000 MHz delle normali schede grafiche AMD 280X

Da quando Valve ha annunciato SteamoS, la sua distribuzione basata

su Debian e orientata ai videogiochi, stiamo andando a caccia di componenti adatti alla costruzione di un sistema Linux compatto da piazzare sotto il televisore e abbastanza potente da spazzare via xbox one e playStation 4. E con la Asus 280X DirectCU II Top potremmo aver trovato la scheda grafica ideale. Sebbene il nome non sia proprio facilissimo da pronunciare, fa riferimento ad alcune caratteristiche chiave che ci hanno indotto a prendere in considerazione questo dispositivo per un sistema Steam. L’espressione ‘DirectCu’ si riferisce al condotto termico in rame da 10 mm che si trova direttamente a contatto con la Gpu, invece di attraversare una piastra con base in rame come avviene nei sistemi di raffreddamento più tradizionali. Secondo Asus, questo garantisce alla scheda un’area di dissipazione più ampia del 220%, che disperde il calore con maggiore efficienza; in altre parole, la scheda opera a una temperatura inferiore del 20% rispetto a un modello analogo con dissipatore convenzionale. Mantenere la scheda quanto più fredda possibile è sempre importante, tanto più quando è inserita in un case compatto per pC. una Gpu più fresca è non solo più stabile ma anche più silenziosa, dato che le

proprio vedere di che cosa era capace la Asus 280x DirectCu ii Top, perciò abbiamo regolato al massimo le opzioni grafiche del gioco. E siamo felici di averlo fatto: la resa del gioco è risultata straordinaria e a una risoluzione di 1080 pixel abbiamo registrato una frequenza media di 95 fotogrammi al secondo, che scendevano a 83 nelle scene particolarmente complesse, con lo schermo zeppo di esplosioni e nemici. nei momenti più tranquilli abbiamo rilevato picchi di 115 fotogrammi al secondo, un dato impressionante se considerate che le console di ‘nuova generazione’ faticano a mantenere o anche solo a toccare i 60 fotogrammi al secondo a una risoluzione di 1080 pixel. La scheda è provvista di 3 GB di memoria GDDr. Attualmente, lo standard delle schede grafiche di fascia media è di 1-2 GB di memoria GDDr; per utilizzare risoluzioni molto elevate o monitor multipli sono richiesti valori più alti. non volevamo che la memoria in più andasse sprecata, perciò abbiamo anche provato Metro: Last Light a una risoluzione di 2560 x 1440 pixel. Questa risoluzione, a volte denominata WQHD, è sempre più comune e offre un numero di pixel quasi doppio rispetto alla risoluzione 1080. il risultato è un’esperienza visiva ancor più avvincente, che tuttavia impone alla scheda un carico di lavoro molto maggiore. A una risoluzione di 1440

ventole hanno meno pretesti per girare a tutta velocità; e questo è importante per chi punta a costruirsi un sistema da usare in salotto. Abbiamo rilevato che quando la scheda è sottoposta a un carico ridotto, con il pC inattivo o impegnato in operazioni di uso quotidiano come la navigazione su internet e l’elaborazione di documenti, la temperatura rimane a 36°, con un rumore limitato a circa 36 decibel. Sulla carta, ciò significa che la scheda è meno rumorosa di molte da noi collaudate: benché non sia completamente silenziosa, le ventole si fanno sentire in modo meno invasivo. il montaggio e l’installazione della scheda grafica sono risultati relativamente semplici, sebbene il condotto termico DirectCu renda l’unità leggermente più ingombrante rispetto alle Gpu con raffreddamento standard; montarla in un case di dimensioni ridotte, quindi, potrebbe risultare difficoltoso. noi abbiamo usato i driver grafici proprietari ATi/AMD, che garantiscono stabilità e ci hanno permesso di tenere sotto controllo la temperatura della scheda grafica per mezzo del comando aticonfig --odgt.

Risultati strabiliantiAbbiamo testato la scheda con Metro: Last Light, uno dei giochi più ‘pesanti’ sul piano grafico attualmente disponibili per Linux. Volevamo

pixel la frequenza dei fotogrammi è scesa a un minimo di 46 al secondo, con un valore medio poco inferiore ai 63. Sulla carta può apparire un vero e proprio crollo ma è una frequenza perfettamente utilizzabile nel gioco, che tra l’altro offre una fedeltà visiva superiore. Durante l’azione di gioco la scheda grafica ha raggiunto una temperatura di 59°, che si colloca comunque entro i limiti di sicurezza. nel complesso, questa è un’ottima scheda grafica ideale per i videogiochi più recenti. non è la più potente disponibile sul mercato ma è destinata a resistere alla grande per diversi anni, grazie ai suoi 3 GB di memoria GDDr. il supporto Linux è decente; peccato che i software per il monitoraggio e per l’overclocking siano solo per Windows. LXP

In evidenza

Condotti DirectCUi condotti termici DirectCu da 10 mm toccano direttamente la Gpu, mantenendo la scheda molto più fredda durante l’uso.

CollegamentiLa scheda è provvista di due DVi, una HDMi e una connessione Displayport per il collegamento del monitor.

050_LXP_147_LXF187_rev_asus 50 21/10/14 22:07

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 135 - NoVEMBrE 2013COD. lP135

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 portatile

Tariffa r.O.C

. - POsTe iTalian

e sPa - abb. POsT. - D.l. 353/2003 (C

On

v. in l. 27/02/2004 n

. 46) arT. 1, CO

mm

a 1, s/na - DisTribuTO

re: Press-Di, milan

OLinux Pro 144 - 2014 - M

ensile - €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

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

l

Data Firma del titolare

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 2014COD. lP144 N 145- SETTEMBrE 2014 N 146- oTToBrE 2014COD. lP146COD. lP145

051_LXP_147_arretrati 51 22/10/14 17:15

52 Linux pro 147

Test AVM FRITZ!Box 7490

AVM FRITZ!Box 7490

Caratteristiche 10Prestazioni 8Facilità d’uso 8Qualità/prezzo 9

FRITZ!Box 7490

Ottime prestazioni e un gran numero di funzionalità. L’unica vera pecca è la portata del Wi-Fi AC.

Il voto di Linux Pro

Giudizio

Produttore: AVM Web: www.fritzbox.eu/itPrezzo: €289

9.5

Da AVM arriva un nuovo modem/router che accorpa tutte le funzionalità che vi possono effettivamente servire in casa o in ufficio: i risultati sono ottimi

Gigabit Ethernet, centralino telefonico, domotica, accesso in remoto e tramite app: non manca proprio nulla a questo modem/router

Oggigiorno la rete è divenuta parte integrante della nostra vita. per

questo motivo il modem/router che abbiamo in casa è “il centro nevralgico” di tutte le nostre comunicazioni. più è versatile ed efficiente, più cose siamo in grado di fare. Tra i migliori router per l’utente evoluto e per i piccoli e medi uffici c’è, secondo noi, la linea di dispositivi FriTZ!Box di AVM; in questo numero proviamo il nuovo top di gamma, il FRITZ!Box 7490. Massima versatilità Si tratta di una evoluzione del modello precedente, il 7390, recensito qualche tempo fa. in sostanza la vera novità è l’introduzione del wireless AC, che si aggiunge agli altri protocolli Wi-Fi, offrendo la possibilità di utilizzare contemporaneamente sia la rete wireless AC con una velocità che arriva ai 1.300 Mbit/s (sui 5 GHz) teorici, sia il wireless n con un throughput di 450 Mbit/s (a 2.4 GHz). La prova sul campo ha dato risultati simili a quelli offerti da altri router compatibili con il protocollo 802.11 AC: le tre antenne integrate indipendenti (con architettura MiMo 3x3) offrono ottime prestazioni in un range

internet che svela tutti i parametri del collegamento a internet (utili per verificare il buon funzionamento della connessione) o il menu Smart Home per gestire i dispositivi domotici di AVM (come le presa intelligenti FriTZ!DECT 200). La voce “Sistema”, invece, consente a chi gestisce il router di verificare i log di sistema e controllare i consumi (molto contenuti grazie a un sistema di gestione intelligente del Wi-Fi e delle porte Ethernet). Da Internet D MyFRITZ!, invece, si configura l’accesso al router via internet, per esempio se si vogliono usare in remoto le sue funzioni nAS o la segreteria. nonostante le tante funzioni (noi ne abbiamo elencate solo una parte), l’interfaccia grafica è ben progettata, risultando quindi semplice da usare. oltre a questo, poi, AVM mette a disposizione una serie di app per Android (e alcune anche per iphone) che permettono, per esempio, di utilizzare lo smartphone come “telefono di casa”, di accedere ai contenuti multimediali presenti nei dischi/chiavi uSB collegate al router o per gestire anche in remoto la configurazione del router. insomma, il mix tra

di 10/15 metri, dopodiché il segnale decade abbastanza rapidamente. oltre al Wi-Fi, questo modem router ADSL/ADSL2+/VDSL offre 4 porte Gigabit Ethernet e 2 uSB 3.0 per collegare stampanti, dischi esterni o chiavi 3G (che consentono di trasformare il router in un server di stampa, in un server multimediale o di attivare il 3G nel caso casa l’ADSL). oltre a questo, il FriTZ!Box può essere utilizzato anche come centralino telefonico grazie alle due porte per collegare telefoni tradizionali, a quella per telefoni iSDn, al DECT (vengono gestiti fino a sei telefoni cordless, con tre chiamate in contemporanea) e al Voip.

Funzioni e app Tutte le potenzialità dell’hardware vengono gestite dal sistema operativo del FriTZ!Box, il FriTZ!oS 6. L’interfaccia a “due livelli”, uno base e uno avanzato, offre al primo avvio un pratico wizard per la prima configurazione. Dopodiché i vari menu disponibili consentono di controllare ogni aspetto del modem/router. navigando tra essi troviamo un ottimo sistema di controllo parentale (indispensabile se si hanno dei minori in casa), il menu di gestione di segreteria telefonica, rubrica e fax, un’area

hardware e software creato da AVM per la sua “ammiraglia” ci ha lasciati decisamente soddisfatti, visto che i punti di forza e le tante funzioni sopperiscono ai pochi difetti presenti. il prezzo consigliato di 289,00 euro ci pare adeguato alle possibilità offerte, considerando il target già citato a inizio articolo, cioè i piccoli e medi uffici o gli utenti evoluti; chi invece vuole spendere meno ha comunque una vasta scelta tra gli altri modelli offerti da AVM, tutti caratterizzati dallo stesso livello di qualità e dal potente e versatile FriTZ!oS. LXP

In evidenza

DettagliL’interfaccia del FriTZ!oS vi mette a disposizione ogni informazione possibile sulla vostra linea ADSL.

Controllo parentalenon serve acquistare un software per proteggere la navigazione dei più piccoli, ci pensa il router.

052_LXP_147_rev_fritzbox 52 21/10/14 22:08

Linux pro 147 53

Epson EcoTank Test

Epson EcoTank

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

EcoTank L300, L355, L555

Costa più di altre stampanti ma il risparmio sulle cartucce in prospettiva è notevole.

Il voto di Linux Pro

Giudizio

Produttore: Epson Web: www.epson.itPrezzo L300: €269,99Prezzo L355: €329,99Prezzo L555: €499,99

9

Uno speciale sistema di ricarica per stampare migliaia di pagine senza più preoccuparsi delle cartucce: ecco la carta vincente delle nuove stampanti EcoTank prodotte da Epson

Ecco come avviene la ricarica dei serbatoi. L’inchiostro contenuto nel flaconi viene semplicemente versato nei relativi serbatoi. Questo sistema evita la sostituzione delle cartucce di stampa

Un risparmio del 65% sui costi di stampa. Questo, in sintesi, è il vantaggio

promesso da Epson per chi deciderà di acquistare e usare una delle nuove stampanti EcoTank. in realtà è ben più di una promessa, anzi, è una certezza che Epson ha provato confrontando i costi di stampa delle EcoTank con quelli medi delle dieci stampanti più vendute in Europa nei primi sei mesi del 2014. Come è quindi possibile un tale risultato?

La stampante ricaricabile Chiunque abbia una stampante, prima o poi ha pronunciato la fatidica frase: “costano più le cartucce della stampante”. Ebbene, Epson ha deciso di provare a cambiare le carte in tavola con la sua linea EcoTank, la cui caratteristica più rivoluzionaria sono i serbatoi ricaricabili. in pratica, all’acquisto della stampante, nella confezione troviamo quattro flaconi di inchiostro originale Epson. i flaconi in dotazione garantiscono la stampa di 4.000 pagine in bianco e nero e 6.500 a colori.

siamo abituati. Di conseguenza, quando la carica si esaurirà non sarà necessario cambiarle: basterà comprare l’inchiostro, riempire i serbatoi e continuare a stampare.

Tre modelli per tutti gli usi il nome EcoTank non potrebbe essere più azzeccato. il termine Tank, infatti, in inglese significa serbatoio, ma è l’aggiunta di Eco ad avere ancora più valore. L’uso dei flaconi al posto delle normali cartucce, infatti, significa meno plastica, meno imballaggi e quindi meno rifiuti. il sistema dei serbatori ricaricabili è stato usato da Epson per tutti e tre i modelli della linea EcoTank. ogni modello offre caratteristiche diverse per adattarsi ai vari usi. per esempio, la L300 è il modello più semplice e si limita alle sole stampe senza funzioni extra. più versatile è la L355, classica multifunzione che può anche svolgere il ruolo di fotocopiatrice e scanner. La L555, infine, è il modello più avanzato e comprende funzioni di fax e un alimentatore automatico, oltre a integrare uno schermo LCD per un migliore controllo delle operazioni. i due modelli più avanzati hanno anche funzioni Wi-Fi e questa è una buona

Facendo i conti si tratta di circa 270 pagine a colori e 165 in bianco e nero ogni mese, il che rappresenta circa due anni di uso medio per una famiglia o una piccola media impresa. per tutto questo tempo, potremo stampare senza preoccuparci di toner esaurito, cartucce da ricaricare e altre seccature. il sistema, infatti, prevede che l’inchiostro contenuto nei flaconi sia usato per riempire le cartucce che si trovano già installate all’interno della stampante. Queste sono più simili a serbatoi, che non alle tradizionali cartucce alle quali

notizia per chi usa smartphone e tablet. Epson, infatti, ha messo a disposizione un’app gratuita sia per Apple, sia per Android, che una volta installata permette di stampare direttamente dal telefono senza il bisogno di collegarlo alla stampante. È molto comodo per trasferire le foto su carta in modo veloce e semplice.non resta che parlare dei prezzi, che sono più alti rispetto a quelli delle stampanti equipaggiate con cartucce tradizionali, ma non così tanto e comunque va considerato che per un lungo periodo non sarà richiesta altra spesa per l’inchiostro. LXP

053_LXP_147_rev_epson 53 21/10/14 22:08

54 Linux pro 147

Test Raspberry Pi Compute Module

Raspberry Pi Compute ModuleSeriamente intenzionati a usare la Raspberry per i vostri progetti? Questa nuova versione della scheda potrebbe essere quello che cercavate!

Le dimensioni da “banco di RAM” della CM permettono di usarla in progetti industriali poveri di spazio

La raspberry pi è nota e apprezzata nella comunità open Source, e parecchie

migliaia di “maker” hanno potenziato le proprie creazioni sfruttando questo computer dalle dimensioni di una carta di credito. Durante la sua breve vita molte attività commerciali hanno avuto come fulcro la schedina inglese: per esempio le linee di produzione della raspberry hanno alcuni esemplari della stessa dedicate al “Controllo Qualità” in alcune fasi dell’assemblaggio nello stabilimento gallese dove vengono prodotte. per svolgere alcune attività particolari le schede possono essere modificate e adattate, ma non sempre tale scelta è funzionale e/o “elegante” come si potrebbe desiderare: ed è proprio qui che il Compute Module tenta di ritagliarsi uno spazio. il Compute Module ha le dimensioni di un normale banco di rAM per portatili, (standard SoDiMM) ma in tale spazio racchiude una raspberry Modello A “compressa” per occupare il minor spazio possibile. il fatto che occupi un volume così ridotto significa che può essere infilata ovunque, ma al contempo implica anche la necessità di una scheda di espansione che funga anche da supporto. Come parte di un kit, il CM è accompagnato da una scheda chiamata Compute Module io (per gli amici CMio) che permette l’accesso al bus Gpio del S.o.C. BCM2835 (per chi ancora non lo sapesse, è così che si chiama il chip

debba essere usata per connettere la CMio al pC: per tale attività è necessario un software prelevabile da www.raspberrypi.org usando il quale potrete accedere alla memoria flash come se fosse una disco uSB. Attenzione: il CMio richiede che entrambe le microuSB siano connesse al pC. La seconda serve solo per dare più corrente. Connessi i cavi e avviato il software, potrete riversare l’immagine del sistema operativo sul CM tramite il solito comando dd, il cui utilizzo vi è stato ripetuto in questi anni fino alla noia e che quindi eviteremo di riproporre. L’immagine scelta è la solita copiata-ma-mai-eguagliata raspbian, vale a dire il meglio disponibile per raspberry. Al momento della scrittura di questo articolo non è possibile utilizzare il metodo nooBS (traducibile con “più facile di così non è possibile”) per fare l’installazione quindi occorrerà usare dd, ma considerando il pubblico che si suppone stia leggendo, non dovrebbe essere un problema digitare una istruzione a riga di comando. una volta che raspbian è installata, aggiungiamo alla CMio tastiera e mouse (tramite un hub uSB), un monitor HDMi e poi diamo corrente. Al primo avvio restiamo piacevolmente sorpresi dalla velocità con cui il CM si avvia, grazie alle superiori prestazioni della memoria flash rispetto alla lenta SD. Completato il boot, ci viene proposto

principale della raspberry). parliamo di ben 120 linee di i/o! il CM contiene, in sostituzione del connettore per SD, 4 GB di disco flash (memoria allo stato solido) dedicato a contenere il sistema operativo e gli eventuali programmi necessari all’utente finale. il sistema operativo è caricabile sulla flash tramite una porta microuSB presente sul CMio, rendendolo di fatto indispensabile: quest’ultimo si incarica di far comunicare il CM col mondo, tramite una porta uSB “normale” e un’altra microuSB oTG (On The Go) dedicata alla interazione del kit col vostro pC di lavoro. Su questo punto torneremo più tardi.

Porte? Sì, tante!Sulla basetta CMio notiamo 4 connettori chiamati CAM0, CAM1, DiSp0 e DiSp1: sono espressamente dedicati al sensore ottico (Webcam) e al display che la Fondazione ufficializzerà a breve. Questi connettori non sono gli stessi presenti sulla raspberry “normale” e per usarli con la Webcam che già avete dovrete ricorrere a un adattatore che vi potrete facilmente procurare dai numerosi rivenditori che li commercializzeranno tra poche settimane: probabilmente saranno forniti come accessorio se comprerete il sensore ottico (o il display) della raspberry da qui a un paio di mesi. poco fa abbiamo menzionato la porta oTG e come

il menu di raspi-config che facilita la configurazione di tutto il sistema, dopodiché occorre un riavvio per garantire il recepimento delle modifiche per poi finalmente giungere al login dove inseriremo nome utente e password. raspbian è la solita distro alla quale siamo abituati, per cui andiamo direttamente ad analizzare il cambiamento più significativo, cioè il bus Gpio.

Pin e PythonLa scheda CMio porta sui piedini del Gpio tutte le linee di comunicazione del BCM2835, per un totale di 120 piedini in due banchi da 60: di questi, 45 possono essere controllati via software tramite la libreria rpi. Gpio di python. Gli altri pin sono dedicati all’alimentazione (1V8, 3V3, 5V0), dei pin dedicati alle periferiche esterne come il sensore ottico, il display e la porta oTG. il chip BCM2835 è lo stesso presente sulla raspberry originale, che però può gestire solo una ristretta parte delle linee disponibili: viceversa, il maggior spazio presente sul CMio permette il pieno uso delle risorse in modo da affrontare progetti più grossi ed esosi di risorse. per testare il Gpio volevamo usare i pin che non sono presenti nella raspberry classica, in modo da provare l’effettivo funzionamento del connubio tra software e hardware. Abbiamo rapidamente scritto un programmino di test usando l’ambiente iDLE:

In evidenza

Bus generosoEcco in bella mostra i 120 pin del CMio: solo 45 però sono a disposizione dell’utente.

Doppio DisplayLa possibilità di usare due Webcam o due display alletterà gli utenti più esigenti e fantasiosi.

054_055_LXP_147_LXF187_rev_pi 54 21/10/14 22:09

Linux pro 147 55

Raspberry Pi Compute Module Test

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

RPi Compute Module

Il prezzo dovrebbe calare nei prossimi mesi, ma chi ha immediata esigenza non aspetterà di certo.

Il voto di Linux Pro

Giudizio

Sviluppatore: rpi Foundation Web: www.raspberrypi.orgPrezzo: €180

9

Il CMIO è più largo della Raspberry e questo significa maggiori piedini di I/O disponibili per i vostri progetti

Il CMIO con in evidenza i 120 piedini di I/O

se volete farlo anche voi ricordate di anteporre il comando sudo al lancio del programma in quanto solo l’amministratore ha il diritto di accedere al bus Gpio. il programmino non fa altro che accendere ciclicamente 4 LED connessi: abbiamo mandato in esecuzione il programma premendo F5 e il programma ha funzionato al primo colpo, segno che il codice è giusto ma soprattutto che libreria e hardware non hanno problemi e che il CM non presenta malfunzionamenti. La disposizione dei piedini Gpio del CMio non segue la numerazione della raspberry normale: infatti non è possibile connettere le schede di espansione fino a ora progettate sulla CMio ma è sempre possibile connetterle tramite una serie di fili volanti avendo l’accortezza di riportare i segnali corretti da una scheda all’altra. Questo tipo di sistemazione, pur non essendo proibita, non è ufficialmente approvata in quanto determinate operazioni potrebbero essere malamente influenzate da cavi di connessione troppo lunghi, quindi prestate attenzione a questo tipo di rimaneggiamenti. il CMio riprende la nomenclatura dei pin usata già dal chip Broadcom, e sulla scheda sono riportati tutti i nomi delle linee di i/o, quindi non ci saranno problemi per capire “cosa” va “dove”. L’utilizzo del bus tramite python avviene tramite: Gpio.setmode(Gpio.BCM)

al posto del solitoGpio.setmode(Gpio.BoArD)

Questo apparente minimo cambio comporta una grossa modifica concettuale in quanto scombussolerà tutte le vostre abitudini di programmazione richiedendo un periodo di adattamento e una modifica dei programmi già realizzati per adattarli alla nuova disposizione di i/o. il Compute Module non è per utenti occasionali: il prezzo parte da un minimo di 180 euro (la scheda di sviluppo si paga a parte), escludendo gli utenti con poco margine di spesa. il primo lotto di produzione è stato prezzato pensando a sviluppatori che già apprezzano la rpi ma che esigevano delle dimensioni inferiori e un elevato numero di i/o per i loro progetti seri, quindi il prezzo non è una variabile troppo pesante in questi contesti. La Fondazione raspberry ha avuto l’astuzia di travestire la rasperry da modulo professionale per poter rendersi appetibile al mercato che va oltre il solito hobbysta, iniziale platea di diffusione della scheda: il CM diventa facilmente il cuore di progetti che possono sfruttare i bus in modi fino a ora inimmaginabili. per esempio, su Kickstarter troviamo OTTO (https://www.kickstarter.com/projects/1598272670/meet-otto-the-hackable-gif-camera?ref=discovery), costruita intorno al CM, oTTo si connette al vostro smartphone permettendovi così di scattare sia foto normali sia in Time Lapse, una particolare tecnica molto apprezzata dai fotografi. Tutto ciò grazie al nuovo fattore

di forma del CM che lo rende usabile laddove era impossibile fare lo stesso lavoro con la rpi classica, a causa delle sue dimensioni. Dopo una lotto minimo per test e collaudo, la Fondazione è ora pronta per la produzione di massa del CMio, per rendere chiunque in grado di acquistare il kit di sviluppo.

Lo scopo sociale è quello di avvicinare i bambini alla programmazione e all’elettronica, e i guadagni che arriveranno verranno impiegati in tale direzione: la CM e la CMio hanno un grosso potenziale per lavori seri, come processi di automazione industriale o altre applicazioni di questo tipo. per gli utenti casalinghi e scolastici nulla cambia, in quanto la rpi sarà in produzione ancora per alcuni anni. LXP

054_055_LXP_147_LXF187_rev_pi 55 21/10/14 22:09

56 Linux pro 147

Test Scribus 1.4.4

Scribus 1.4.4

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

Scribus 1.4.4

Scribus sta migliorando rapidamente e grazie alle nuove funzioni e all’eliminazione dei bug potrebbe presto vivere una nuova giovinezza.

Il voto di Linux Pro

Giudizio

Sviluppatore: Team di sviluppo Scribus Web: www.scribus.net/canvas/ScribusLicenza: GpL

7

Le nuove funzioni e l’eliminazione dei bug portano questo venerando programma in una nuova era dell’editoria elettronica

Questa scheda ha subìto un overclocking di fabbrica per mano di Asus. La velocità nominale del core è di 1070 MHz, contro i 1000 MHz delle normali schede grafiche AMD 280X

Scribus è il pilastro dei software per l’editoria elettronica ormai da

qualche tempo, malgrado l’introduzione di pacchetti più recenti come Libreoffice. La versione più recente, Scribus 1.4.4, rappresenta sostanzialmente una soluzione per l’eliminazione di alcuni bug ma comprende anche alcune novità di rilievo che potrebbero rappresentare una svolta per questo programma ormai affermato. il team incaricato di correggere gli errori si è dato un gran daffare per colmare le lacune individuate dalla comunità. L’interfaccia utente è stata rinnovata e tutti i problemi relativi all’importazione di più immagini, alle funzioni Annulla e Ripeti e alle voci ‘fantasma’ sono stati risolti. Anche lo script Autoquote è stato riscritto e migliorato in modo da offrire più opzioni e il plug-in per i codici a barre è stato aggiornato e adattato ad alcune delle nuove funzioni introdotte dopo la versione 1.4.3 pubblicata nello scorso luglio. novità quali l’esportazione in formato pDF/x-1a, vari script, una nuova tavolozza di colori per i geografi di professione e i bordi pagina migliorati che funzionano da guide danno vita a un’esperienza d’uso

per quanto riguarda la traduzione da e verso varie lingue. Questo denota un impegno reale a fare di Scribus un programma più accessibile e rappresenta forse un effetto collaterale della crescente tendenza da parte dei nuovi utenti ad abbandonare Windows xp in favore delle soluzioni open Source. Quale che sia la ragione, si tratta di un progresso degno di lode. in passato, alcuni elementi secondari che creavano frequenti blocchi hanno causato qualche problema. il controllo ortografico, l’importazione xpS e quella di file oDT e perfino la modifica delle preferenze sono tutti noti come responsabili di blocchi fatali. Fortunatamente, la versione 1.4.4 tappa tutte le falle e, da quanto abbiamo potuto vedere, questo ha migliorato anche le prestazioni del programma. i tempi di caricamento sono minori e l’interfaccia molto più scattante rispetto alla versione precedente; spostando le immagini non si ha più la sensazione di arrancare nel fango o di attendere il caricamento riga dopo riga della versione de Lo Hobbit per Zx Spectrum. Le nuove funzioni ci piacciono e l’eliminazione dei bug dà vita a un’esperienza migliore rispetto al passato: ma tutto

più completa e articolata. una delle novità più rilevanti, però, è l’implementazione della versione più recente del set di colori CMYK, realizzata e raccomandata dalla newspaper Association of America. Scribus è il solo software DTp a offrire l’ultima versione dello spazio cromatico ufficiale nAA, caratteristica questa che non mancherà di accrescerne il prestigio. per l’utente privato medio, tuttavia, il set di colori ufficiale nAA non rappresenta niente di particolarmente entusiasmante. Ciò che più conta per gli utenti comuni è che la versione 1.4.4 costituisce un programma molto più stabile rispetto al passato e deciso a migliorare ulteriormente.

Più accessibileÈ positivo che i nuovi elementi non siano stati semplicemente messi lì tanto per allettare i potenziali nuovi utenti; sono invece ottimamente implementati, facili da trovare e, quando vengono usati, hanno prestazioni fenomenali. il set dei colori CMYK, per esempio, è intelligentemente inserito nel menu Extras e si apre istantaneamente quando viene selezionato. un altro dato da citare è il miglioramento della documentazione, in particolare

questo basterà a catapultare Scribus in pole position rispetto ad altri programmi più strettamente ‘da ufficio’? Ammettiamo che, da parte nostra, non usiamo Scribus da qualche tempo; altri software DTp sono subentrati nel compito quotidiano di realizzare gli effetti che ci interessano. riteniamo però che la maggiore stabilità e il miglioramento delle prestazioni e delle funzioni potrebbero inaugurare per Scribus una nuova stagione di apprezzamento da parte degli utenti, sia privati sia professionali. LXP

In evidenza

Creazione veloce di codici a barreLe prestazioni del plug-in Barcode sono nettamente migliorate rispetto all’ultima versione.

Supporto CMYKil supporto per la tavolozza CMYK susciterà l’interesse tanto dei professionisti dell’editoria quanto degli appassionati dei software DTp.

Scribus 1.4.4 elimina numerosi bug e introduce anche interessanti novità

056_LXP_147_LXF187_rev_scribus 56 21/10/14 22:09

Linux pro 147 57

Zbox EI730 Plus Test

Zbox EI730 Plus

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

ZOTAC ZBOX EI730 PLUS

È un po’ caro e la ventola fa baccano quando è sottoposto a carichi di lavoro pesanti: ma è uno dei migliori mini-PC che abbiamo visto finora.

Il voto di Linux Pro

Giudizio

Sviluppatore: Zotac Web: www.zotac.comPrezzo: €720

9

Zotac presenta una versione aggiornata del suo potente mini PC provvista delle più recenti tecnologie Intel. Siamo andati a darci un’occhiata...

Il più recente mini-PC di Zotac è ideale come media box per il salotto

G li ‘small form factor pC’ hanno fatto molta strada negli ultimi due anni,

soprattutto grazie all’ascesa della scheda madre mini-iTx. occorreva però un certo lampo di genio per avere l’idea di dotare queste schede di componenti desktop o laptop decenti e al passo con i tempi, in grado di sostituire i vecchi componenti da cellulari che li caratterizzavano in precedenza. Zotac è una delle case produttrici che hanno continuato a credere in questa idea anche negli anni funestati dai componenti scadenti; e la sua linea di Zbox è diventata sempre più potente e ricca di funzioni con ogni nuovo modello. L’ultimo che avevamo provato era lo Zbox nano iD68 plus, che ci aveva fatto una certa impressione. Lungi dal dormire sugli allori, Zotac ha recentemente lanciato una serie di Zbox nuovi di zecca. Come se la cavano queste nuove reclute rispetto all’iD68? Attualmente, la serie E offre due opzioni in termini di processori Haswell. L’Ei750 ha un intel Core i7-4770r (3,2 GHz e fino a 3,9 con la versione Turbo), mentre questo EI730 si serve di un intel Core i5-4570r (2,7 GHz, fino a 3,2 con la versione Turbo) e di un chipset H87M di intel. Di solito gli Zbox sono disponibili in due

avevamo visto solo nel suo costoso formato i7 per cellulari, perciò è rassicurante trovarlo nella sua versione i5. Tuttavia, quali conseguenze abbia lo stipare in una scatoletta così piccola una Cpu TDp da 65 W e componenti così importanti appare evidente non appena il sistema viene sottoposto a carichi pesanti. La sua ventola di raffreddamento passa da un silenzio quasi totale a una frastuono che rende impossibile non notarne la presenza. A 66° lo Zbox non è esattamente incandescente; ma per mantenerlo a quella temperatura sotto carichi di lavoro pesanti, le ventole devono letteralmente rombare. per il resto, le funzioni dell’Ei730 sono una dimostrazione di quanti componenti sia possibile montare su una mini-scheda madre: doppio Gigabit Ethernet, Wi-Fi 802.11ac e Bluetooth 4.0, doppio Displayport, DVi, adattatore HDMi... A tutto ciò si aggiungono quattro ingressi uSB 3.0, due porte audio e, per buona misura, un quadruplo lettore di schede. Se poi voleste riporre al sicuro il vostro Zbox, avete anche a disposizione un supporto VESA.La nuova serie E è anni luce

versioni, quella base e quella plus, comprensiva di memoria e hard disk. il nostro Ei730 plus è provvisto di 8 GB di rAM DDr3L a 1600 MHz, espandibili a 16 GB grazie a una coppia di slot SoDiMM, nonché di un disco HDD preinstallato da 1 TB e 5400 rpm. La scheda H87M della serie E supporta inoltre dischi SSD e mSATA da 2,5 pollici ed è di facile accesso per chi desideri aggiornarne i componenti. Come i precedenti Zbox Zotac, l’Ei730 è privo di sistema operativo, perciò potrete installarvi tranquillamente la vostra distribuzione preferita. Le piccole dimensioni lo rendono comodo da collocare in salotto ed è un ottimo candidato per una distribuzione orientata ai contenuti multimediali o ai videogiochi e provvista di un’interfaccia utente adatta al televisore, come SteamoS oppure openELEC. il piatto forte della serie E, però, è rappresentato dal sottosistema grafico. L’i5-4570r è provvisto di un chip intel iris pro 5200 (Haswell GT3e) integrato con 128 MB di eDrAM. i chip grafici integrati di intel sono stati oggetto di più di una battuta salace negli ultimi anni ma la situazione è completamente cambiata con iris pro. Finora lo

avanti rispetto al modello iD68 e le sue prestazioni grafiche brillano soprattutto grazie all’iris pro. purtroppo, il prezzo di prestazioni simili è una ventola che diventa decisamente rumorosa quando il sistema lavora sodo. Anche il prezzo, mettendo in conto tutti i componenti aggiuntivi, non è indifferente. Detto questo, è uno dei mini-pC più interessanti che abbiamo mai visto, perfetto per un sistema Linux indipendente o per utilizzare SteamoS in salotto. LXP

In evidenza

ConnettivitàCome vedete, l’Ei730 plus non manca certo di ingressi, il che ne fa il dispositivo ideale per una centrale multimediale.

Supporto VESApotete facilmente fissare l’Ei730 plus sul retro di un monitor o di un televisore grazie al supporto VESA incluso.

057_LXP_147_LXF187_rev_zbox 57 21/10/14 22:09

Roundup Office suites

58 Linux pro 147 Linux pro 147 59

Confronto Test Test Confronto

Nonostante i tanti sforzi compiuti da parecchi sviluppatori, il riconoscimento vocale su Linux sembra abbia

vissuto una battuta d’arresto, se paragonato a quanto disponibile su altri sistemi. prendiamo per esempio Dragon naturally Speaking. Questo prodotto è uno dei migliori in circolazione per il riconoscimento vocale, ma purtroppo non esiste alcuna versione per Linux. pertanto, l’unica cosa che possiamo fare è utilizzarlo su Wine. Stando così le cose, abbiamo quindi deciso di dare

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

Modalità del test

un’occhiata a cinque alternative per Linux, scoprendo con nostra grande soddisfazione che le cose stanno iniziando a cambiare. infatti, molti dei miglioramenti in ambito di riconoscimento vocale che abbiamo sperimentato sono dovuti soprattutto a Google. il colosso di Mountain View,

essendo impegnato nello sviluppo di Android per dispositivi mobile, ha posto l’accento sul riconoscimento vocale al pari di Apple con Siri. La prima generazione di Google now era piuttosto scadente, ma quella attuale ha fatto notevoli passi in avanti. Vediamo quindi fino a che punto siamo arrivati.

Riconoscimento vocale

La nostra selezione FreeSpeech

Julius

Palaver

Simon

Speech-App

Questo mese abbiamo deciso di mettere sul nostro banco di prova cinque software per il riconoscimento vocale. Mettetevi le cuffie, accendete il microfono e scoprite insieme a noi qual è il migliore

Per i nostri test abbiamo pensato di utilizzare l’ultima versione di Ubuntu. I motivi di questa scelta si basano soprattutto sul alcune ipotesi d’uso di questa distro. Infatti, considerando il pubblico che può aver bisogno del software per il riconoscimento vocale, abbiamo accomunato questo parametro all’utente medio che usa Ubuntu. Siamo quindi giunti alla conclusione che i maggiori utilizzatori di tali applicazioni agiscano da questa distro. Tuttavia, tra le altre distribuzioni di cui possiamo servirci con questo genere di software, abbiamo notato anche Knoppix (www.knoppix.org). Per i non vedenti c’è poi una derivata di Ubuntu chiamata Vinux (http://vinuxproject.org) che lavora piuttosto bene. Per i test abbiamo usato Ubuntu 14.04 a 64 bit su un buon computer aziendale. Si tratta di un Dell Latitude E6400 con 4 GB di RAM e processore Intel Core 2 Duo da 2,4 GHZ.

“Il riconoscimento vocale su Linux sta facendo notevoli passi avanti, soprattutto per merito di Google”

058_063_LXP_147_LXF188.round 58 21/10/14 22:09

Roundup Office suites

58 Linux pro 147 Linux pro 147 59

Confronto Test Test Confronto

Con Speech-App potete impostare l’italiano tramite il menu delle opzioni sulla sinistra

D urante le nostre prove abbiamo trovato parecchie diversità tra un’installazione e l’altra. Alcune,

come quelle da Software Center, sono molto semplici, mentre ce ne sono altre piuttosto complesse. naturalmente, potrete optare per la via più semplice, vale a dire scaricare il tutto dal gestore pacchetti. Tuttavia può valere la pena perdere qualche minuto partendo dal codice sorgente. Speech è incredibilmente facile da installare. Tutto quello che dovete fare è accedere alla pagina GitHub di André Luiz Dos Santos (http://bit.ly/speech-app) e scaricare il file speech-0.7.crx, quindi trascinarlo nella pagina delle estensioni di Chromium (supponendo che abbiate installato questo browser). una volta che l’estensione è attiva, potete eseguirla tramite la pagina App del brower. Simon e Julius sono altri due pacchetti facili da installare: il primo è

Procedura d’installazione

Come configurarli

Si installano facilmente?

Di cosa abbiamo bisogno perché questi programmi ci ascoltino?

disponibile nel Software Center, mentre il secondo può essere compilato con il classico ./configure, make, make install. Simon, comunque, non viene lanciato fino a che non eseguite un riavvio del sistema. FreeSpeech, invece, richiede più lavoro. infatti, avrete bisogno di installare PocketSphinx e SphinxBase, seguiti da Pygst e Python-xlib.display. Da sottolineare come queste informazioni non vengano messe a disposizione in alcun file readme. nel nostro caso abbiamo dovuto scandagliare Google e solo dopo 20 minuti e innumerevoli pagine visitate siamo riusciti a capire quali erano le dipendenze di FreeSpeech. Sotto questo aspetto, una migliore documentazione ci avrebbe aiutato non poco. Palaver non può essere annoverato tra i software più semplici da installare, ma per lo meno non ci costringe a cercare su Google come FreeSpeech. prima di tutto dovete

scaricare il codice sorgente dalla pagina di James MacClain (JamezQ) su GitHub (http://bit.ly/Palaver). A questo punto sarà necessario installare da terminale sox, Python-argparse, libsox-fmt-mp3, mutt, xvkbd e xautomation. Adesso dovrete eseguire il file di installazione e impostare i tasti di scelta rapida tramite le impostazioni della tastiera su ubuntu. Se vi sentite persi, vi segnaliamo un ottimo video tutorial presente su YouTube (http://bit.ly/PalaverInstall), dove l’autore del programma spiega nel dettaglio tutti i passi da compiere per installare l’applicazione.

La procedura d’installazione è un conto, ma configurarli perché funzionino a dovere è un’altra

questione. Speech brilla ancora una volta per la semplicità con cui si contraddistingue. Basta fare click

sull’icona nella pagina chrome://apps e dare il via al programma selezionando il pulsante verde. Simon è un po’ più macchinoso, ma comunque piuttosto usabile. All’avvio del programma ci viene proposta una procedura guidata che

consente di impostare il profilo vocale, quello del server e i test per l’ingresso e l’uscita audio, nonché la regolazione del volume. Julius, pur essendo facile da installare, richiede una configurazione più complessa. infatti, dobbiamo utilizzare il terminale per apportare le giuste impostazioni. un aspetto, questo, che ci ha fatto venire un po’ di mal di testa. FreeSpeech ci ha complessivamente delusi per la mancanza di usabilità e semplicità di configurazione. in definitiva, non siamo rimasti per niente convinti che lo script pyhton di questo programma sia realmente adatto all’utilizzo che se ne vorrebbe fare. palaver ha funzionato abbastanza bene, anche se non può essere paragonato a Simon e a Speech per la semplicità d’installazione e configurazione. inoltre, abbiamo notato una certa tendenza a disattivare il tasto di scelta rapida.

Di nuovo è Speech-App a vincere. Infatti è l’applicazione più immediata da utilizzare. Dopo l’installazione è pronta all’uso.

Verdetto

FreeSpeech

Julius

Palaver

Simon

Speech-App

Speech-App vince a mani basse. Basta trascinarlo in Chromium.

Verdetto

FreeSpeech

Julius

Palaver

Simon

Speech-App

Simon è disponibile anche in Ubuntu Software Center. Potete così installarlo al volo e senza complicazioni

058_063_LXP_147_LXF188.round 59 21/10/14 22:09

60 Linux pro 147 Linux pro 147 61

Confronto Test Test Confronto

Semplicità d’usoSono immediati da usare? Su cosa dobbiamo puntare l’attenzione?

S tiamo guardando questi programmi dal punto di vista di un utente che non ha né voglia né tempo di pasticciare con

i file di configurazione. non solo, ma cerca un software che, dopo un processo d’installazione più o meno semplice, gli consenta un utilizzo quotidiano senza intoppi. Abbiamo poi

considerato molto attentamente quanto il nostro accento influisca sulla ricezione delle parole. A questo proposito ci siamo avvalsi dell’aiuto di due collaboratori con accenti diversi: uno con cadenza tipica del sud italia e l’altro del nord. nonostante la tendenza a parlare in italiano corretto, le cadenze sono

molto diverse, tali da mettere in difficoltà anche i software più moderni. Abbiamo quindi cercato di portare al limite ogni programma, mettendolo alle strette con parole particolari. non solo, ma abbiamo cercato di parlare quanto più velocemente possibile, per vedere se le frasi venivano percepite correttamente.

FreeSpeechCon FreeSpeech non abbiamo avuto molta fortuna. Dopo un primo avvio piuttosto buono, il programma ha poi smesso di funzionare del tutto. per quanto ne sappiamo, l’amalgama tra interfaccia grafica e script python tende a partire bene, ma poi crea problemi durante il regolare utilizzo. purtroppo, facendo provare questo programma al nostro collaboratore del sud, non siamo riusciti a fargli comprendere quasi niente. il risultato è stato un vero strazio, con parole continuamente ripetute e un ritmo lento e snervante. È andata un po’ meglio con l’accento del nord, anche se non così bene come potevamo aspettarci. Anche in questo caso abbiamo dovuto ripetere più volte alcune parole, cercando di sforzarci quanto più possibile nell’eliminare qualsiasi cadenza dal nostro parlato.

JuliusJulius, purtroppo, dopo il primo utilizzo diventa una spina nel fianco. i modelli linguistici non sembrano funzionare molto bene. Anzi, alcuni non funzionano affatto. Abbiamo anche trovato che i comandi da terminale sembrano vivere di vita propria, non facendo quello che dovrebbero. L’aggiunta di un’interfaccia grafica, inoltre, non guasterebbe per niente. intendiamoci, l’applicazione ha del potenziale ma al momento è davvero molto limitata. per quanto riguarda l’accento del nord, il programma è riuscito a rispondere in modo a malapena sufficiente, non riuscendo comunque a registrare un discorso in piena regola. Gli stessi risultati anche per il sud, che ha letteralmente rinunciato a utilizzare questo programma in favore di Simon. L’unico aspetto positivo è lo scarso uso di risorse: solo 32 MB per il dizionario normale e 64 per quello con 20.000 parole.

Speech-App ha alcune caratteristiche che vale la pena di ricordare: in primo luogo,

è possibile cambiare la lingua e il tipo di carattere. inoltre, si può perfezionare il testo con l’aggiunta di punteggiatura, lettere maiuscole e minuscole, caratteri speciali e molto altro ancora. Simon è talmente ricco di funzioni che diventa impossibile elencarle tutte. Tra le prime c’è l’opzione Server, che crea un database centrale di parole e comandi.

Funzioni accessorieCosa ci offrono in più?

Simon ha poi la possibilità di scaricare e installare le funzioni predefinite per qualsiasi elemento del desktop, compreso il controllo della tastiera virtuale. in confronto a Simon, Julius non brilla per funzionalità. Ha però un dizionario di circa 20.000 e più parole o in alternativa di oltre 60.000 e utilizza uno strumento a due passaggi per raggiungere un più elevato livello di riconoscimento. FreeSpeech si serve del motore di riconoscimento vocale

PocketSphinx come database di backend. Come libreria di riconoscimento pocketSphinx è pressoché perfetta, ma la sua interazione con FreeSpeech lascia un po’ a desiderare, finendo per far decadere il funzionamento generale dell’app. palaver può eseguire più ricerche multiple, aprire documenti, lanciare programmi e rispondere a domande aperte. Se solo fosse più stabile ne guadagnerebbe sicuramente.

È Simon a vincere questo round. Infatti è il programma con maggiori funzioni, tante da non essere neppure elencabili.

VerdettoFreeSpeech

Julius

Palaver

Simon

Speech-App

058_063_LXP_147_LXF188.round 60 21/10/14 22:10

60 Linux pro 147 Linux pro 147 61

Confronto Test Test Confronto

Palaverpalaver, come abbiamo già detto, è un ottimo programma per il riconoscimento vocale. Tuttavia in alcuni momenti ha peccato di instabilità. Anche se quest’applicazione è costruita con le Api di Google Voice, abbiamo scoperto che soffre di un problema di blocco durante l’attività quotidiana. Quando succede, troviamo un tasto di scelta rapida che non funziona, oppure non riesce a fermarsi riproducendo in modo smisurato le azioni per cui è stato programmato. Quando però lavora, palaver è davvero un ottimo software, capace di fare il suo lavoro in modo semplice e veloce. Entrambi i nostri collaboratori sono rimasti abbastanza soddisfatti e sono riusciti a proferire frasi e concetti in modo fluido e senza intoppi.

SimonGrazie alla procedura guidata di configurazione, Simon si dispone in background sul desktop e aspetta di essere attivato. in alternativa, possiamo lanciarlo e usarlo solo quando accendiamo il microfono. in altre parole, è davvero facile da utilizzare. i nostri collaboratori sono riusciti a usare tutti i comandi e a proferire parola senza alcuna difficoltà. Visto il buon funzionamento del programma, abbiamo provato anche ad aumentare il coefficiente di difficoltà, facendogli ascoltare frasi particolarmente articolate e pronunciate velocemente. Anche in questo caso, a parte qualche ripetizione più che sopportabile, non si sono riscontrati fraintendimenti. È filato tutto liscio e senza intoppi. Considerando poi la semplicità di configurazione e installazione, possiamo dire che questo programma è stato di gran lunga il preferito da entrambi i nostri tester.

Speech-AppSpeech-App, fino a ora, è tra i primi posti della nostra classifica e non potrebbe essere altrimenti dato che fa uso delle Api di Google Voice. in termini di semplicità è pratico da installare e configurare. Anche l’accessibilità segna un punto a suo favore. infatti, è sufficiente lanciare Chromium e attivare il programma dalla pagina App. per quanto riguarda il rilevamento degli accenti e delle cadenze, il collaboratore del nord non ha avuto problemi di sorta. Diverso, invece, per il sud, in cui abbiamo notato una certa difficoltà nel rilevare frasi pronunciate troppo velocemente. provandolo poi nell’elaborazione di un documento di testo con Libreoffice, anche in questo caso, non abbiamo rilevato grandi problemi. Gli errori, con entrambe le cadenze dei nostri collaboratori, sono stati corretti prontamente.

Testa a testaPrincipianti, intermedi e utenti avanzati. A chi si rivolgono?

Mettere Speech-App contro Simon è piuttosto difficile. Da un lato abbiamo la semplicità d’utilizzo

per i principianti e per gli utenti intermedi di Speech-App. La sua capacità immediata di raccogliere modelli vocali e di iniziare a lavorare, così come l’interfaccia semplice e intuitiva, sono punti a favore di questa applicazione. Dall’altra parte, Simon è molto simile a Speech-App, anche se meno rivolto ai principianti. Sì, è facile da usare, ma diventa piuttosto complesso

mano a mano che si continua a utilizzare. inoltre, ha l’abitudine a lasciarvi nel limbo nel momento in cui smette di funzionare per qualche motivo sconosciuto. Mettere Julius contro FreeSpeech e palaver non è poi così difficile, soprattutto a causa dei problemi di stabilità del primo e del secondo che tendenzialmente ci buttano nelle mani di palaver. Quando gli hotkey di quest’ultimo funzionano, il programma fa un ottimo lavoro nella traduzione del parlato, così come nell’interazione con

il sistema operativo in generale. Tra FreeSpeech e Julius avremmo dovuto scegliere quest’ultimo solo per l’eccezionale dote di dizionari che fornisce. Tuttavia, questa coppia ha davvero bisogno di concentrarsi sui bug e sulla stabilità, perché così com’è adesso diventa davvero frustrante utilizzare uno dei due programmi. in definitiva, tutto si riduce a una battaglia tra Speech-App e Simon, dove mettiamo Speech al primo posto per livello di flessibilità e interfaccia grafica.

Verdetto

Ancora una volta è Simon a vincere questo round. Il motivo è presto detto: ha davvero tante funzioni rispetto agli altri.

Speech-App

Simon

Julius

FreeSpeech

Palaver

058_063_LXP_147_LXF188.round 61 21/10/14 22:10

62 Linux pro 147 Linux pro 147 63

Confronto Test Test Confronto

per i miglioramenti futuri. Julius, di contro, non è adatto all’uso quotidiano. La nostra esperienza ci ha messo di fronte a un software ancora immaturo e instabile. palaver potrebbe fare un lavoro ammirevole, a condizione di usare i tasti di scelta rapida per avviare il processo. Al momento, però, questo procedimento risulta piuttosto macchinoso e non adatto a un uso intensivo del programma. inoltre, il software non è certo immune da bug, che purtroppo lo portano a bloccarsi in più di un’occasione.

Usare un qualsiasi software di riconoscimento vocale per puro divertimento è un conto,

servirsene per lavoro è un’altra questione. Dobbiamo quindi considerare anche coloro che lo utilizzano professionalmente e quindi la capacità dei rispettivi software di far fronte alla quotidianità. Alla luce di questo, riteniamo che Speech-App sia il migliore, consentendoci di lavorare con serenità senza troppi problemi. È anche possibile configurarlo per funzionare

R ispetto ad altri software, i programmi di riconoscimento vocale non sembrano avere

la stessa forza propulsiva d’innovazione e miglioramento. Speech-App, l’ultima volta, è stato aggiornato quattro mesi fa e attualmente sembra ancora in fase di sviluppo. Anche Simon ha visto un aggiornamento piuttosto recente, tra cui il lancio di una versione per Mac oS x nel mese di aprile di quest’anno. L’ultimo aggiornamento di Julius risale a metà gennaio e, valutando il tenore con cui sono state rilasciate le nuove release nel passato, è lecito aspettarsi qualcosa di nuovo a breve. FreeSpeech è tra i software che non vedono un aggiornamento dal lontano

Utilizzo quotidiano

Sviluppo futuro

in molteplici scenari. nonostante questo, non possiamo dire che sia perfetto e a fine giornata qualche grattacapo ce lo ha comunque dato. Simon, invece, è un ottimo software di complemento per qualsiasi computer. può essere configurato in modo facile e veloce indipendentemente dall’ambiente in cui si vuole utilizzarlo (lavoro o casa). può poi essere perfezionato per soddisfare più utenti attraverso la funzionalità server. inoltre, è relativamente facile da mantenere e offre una buona prospettiva

novembre 2013. Sarebbe invece utile continuare lo sviluppo, soprattutto per superare gli odiosi script in python e migliorare la procedura d’installazione. Gli ultimi aggiornamenti di palaver sono di gennaio di quest’anno. È stato però pubblicato un messaggio nella homepage del programma, in cui si avvertono gli utenti che dal 1 gennaio 2014 Brett Mayson non si occupa più dello sviluppo di quest’applicazione che diventa così LiSpeak (http://lispeak.bmandesigns.com). Si tratta di un nuovo progetto interamente ridisegnato per supportare meglio diversi idiomi e una vasta serie di plug-in. Abbiamo quindi contattato Mayson, ma ci ha detto che al momento lo sviluppo è rallentato a causa

Come si comportano in ambito professionale?

Vediamo lo stato degli aggiornamenti

Per gestire Palaver è necessario mettere mano al terminale. Non è difficile, ma neppure molto intuitivo

di alcune modifiche apportate da Google alle proprie Api, spera comunque di rilasciare una prima versione entro fine anno.

Verdetto

Verdetto

In termini di uso quotidiano, sia lavorativo sia domestico, Speech-App e Simon si contendono questo round.

Speech-App e Simon sono i due software più aggiornati. Invece Palaver si è fermato in favore di LiSpeak.

LiSpeak è l’evoluzione di Palaver

FreeSpeech

Julius

Palaver

Simon

Speech-App

FreeSpeech

Julius

Palaver

Simon

Speech-App

058_063_LXP_147_LXF188.round 62 21/10/14 22:10

62 Linux pro 147 Linux pro 147 63

Confronto Test Test Confronto

a svolgere il proprio lavoro senza troppi fronzoli. C’è però da dire che, non essendo più in fase di sviluppo attivo, le aspettative su possibili miglioramenti finiscono qui. Certo, al suo posto vedrà la luce LiSpeak, ma per ora non abbiamo potuto mettervi le mani sopra per provarlo. Dopo aver contattato Mayson e ricevuto rassicurazioni su una possibile uscita di qui alla fine dell’anno, ci riproponiamo di provare questo software non appena sarà disponibile. infine, in ultima posizione, abbiamo messo FreeSpeech. purtroppo si tratta di un programma che non riscuote successo a causa della sua installazione tutt’altro che user-friendly e dello script in python per niente funzionale.

Come abbiamo visto, i software di riconoscimento vocale hanno delle potenzialità che però non

tutti riescono a sfruttare al meglio. in definitiva, il confronto tra il primo e secondo posto se lo contendono Speech-App e Simon. infatti, rispetto agli altri, entrambi forniscono un sistema di funzionamento migliore e flessibile. nel nostro confronto, comunque, abbiamo deciso di posizionare Simon al primo posto, seguito poi da Speech-App. il primo, infatti, è un programma completo, versatile e capace di gareggiare piuttosto bene con il blasonato Dragon Naturally Speaking. Abbiamo messo Julius in terza posizione, perché, nonostante abbia buone potenzialità, non fa niente per rendersi accettabile dai principianti. per quanto riguarda palaver, è necessario fare una precisazione. per com’è attualmente, questo programma non è tra i più soddisfacenti, ma comunque riesce

Riconoscimento vocale

Il verdetto

Di solito cerchiamo sempre di rimanere saldamente ancorati ai software dedicati a Linux, ma in questo caso dobbiamo fare un’eccezione. non provare Dragon naturally Speaking sarebbe una colpa troppo grave. Dobbiamo però usare Wine, perché allo stato

attuale non esiste una versione per Linux. Ciò nonostante, il programma ha funzionato egregiamente. oltre a questo, c’è un altro progetto interessante all’orizzonte. Stiamo parlando di SpeechControl per ubuntu, cui potete trovare informazioni su http://bit.ly/

SpeechControl. Se tutto va come deve, questo programma sarà dotato di comandi preconfigurati che verranno sfruttati all’interno di qualsiasi distro basata su ubuntu. Ci auguriamo di vederlo presto all’opera per provarne le funzionalità. LXP

Considerate anche...

Simon1° Palaver4°Web: http://bit.ly/Palaver Licenza: GPL v3 Versione: 1

il suo sviluppo si è fermato. LiSpeak sarà un degno erede?

Web: http://simon.kde.org Licenza: GNU GPL v1.2 Versione: 0.4.1

Lo slogan “Simon Listens” è assolutamente azzeccato

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

A voi la parola...

Speech-App2°Web: http://bit.ly/speech-app Licenza: GNU GPL Versione: 0.7

La semplicità d’utilizzo la rende una buona applicazione

Julius3°Web: http://bit.ly/JuliusEng Licenza: http://bit.ly/JuliusLic Versione: 4.3.1

Se diventasse più versatile sarebbe pressoché perfetto

FreeSpeech5°Web: http://bit.ly/Freespeech Licenza: GPL v3 Versione: r120

FreeSpeech ha ancora tanta strada da fare se vuole migliorare

“Simon è un programma completo, versatile e capace di fronteggiare il grande Dragon Naturally Speaking”

Simon è un programma molto configurabile. Per esempio, possiamo gestire nel dettaglio le specifiche della scheda audio

058_063_LXP_147_LXF188.round 63 21/10/14 22:10

64 Linux pro 147 Linux pro 147 6564 Linux pro 147 Linux pro 147 65

“mcedit è un editor che può essere utilizzato anche stand-alone”

Con nostra grande sorpresa, abbiamo appurato come ci siano ancora molte persone che non

hanno mai usato Midnight Commader. Questa utile applicazione, anche conosciuta con il semplice acronimo di MC, unisce la versatilità di una Gui alla potenza del terminale. Manipoliamo così file e directory tramite l’interfaccia a due pannelli, sfruttando un ottimo set di tasti di scelta rapida. È stato creato da Miguel de icaza nel 1994 e continua a essere sviluppato tuttora. La sua longevità parla da sé e dovrebbe dirvi tutto su quanto questo programma sia affidabile. probabilmente lo troverete già nel

Midnight Commandergestore programmi della vostra distro, da cui vi consigliamo caldamente di installarlo. La compilazione manuale, infatti, non è uno scherzo. Sfogliando il codice sorgente, ci accorgiamo subito della maturità del programma e della completezza in generale. Ciò nonostante, ogni release riesce sempre ad aggiungere qualcosa di nuovo. nell’ultima, per esempio, abbiamo un selettore pratico da usare e un miglior

supporto per zsh. Attraverso il software di base mcedit e l’utilizzo di vari helper, MC può leggere, modificare ed eseguire operazioni su file locali e remoti, compresi i tarball e gli archivi compressi. Tuttavia mcedit è un ottimo editor da utilizzare anche come singolo programma.

Rapido e versatileMC è un programma estremamente veloce. per esempio, usando wget su un sito Web, si può navigare utilizzando direttamente il programma, accedere al codice con mcedit e leggere le pagine da Lynx (o qualsiasi altro browser collegato a MC). Come si vede dallo screenshot qui a fianco, nella riga inferiore ci sono 10 collegamenti numerati associati a dei tasti funzione. il loro ruolo è fare in modo che le opzioni che richiamano siano sempre accessibili indipendentemente dai tasti di scelta rapida che si usano. F2, per esempio, permette di accedere al menu utente, ma se usato in mcedit corrisponde a Salva. in definitiva, ci vuole un po’ di tempo per prendere confidenza con gli strumenti d’interazione principali, ma una volta imparato tutto fila liscio.

Versione: 4.8.13 Web: www.midnight-commander.org

Midnight Commander Python Goggles MM Git Qtractor Shellpic Stellarium Pioneer Assassin of the Underdark

File manager a linea di comando

L’interfaccia di Midnight Commander

Dentro l’archivioLavorare all’interno di una cartella compressa è molto facile. MC, infatti, supporta la maggior parte dei formati di archiviazione.

Menu e opzionii menu a comparsa vi consentono di operare una o più attività su un file. Questo, oltre a dare accesso alle opzioni di configurazione.

Tasti funzioneogni pulsante è una scorciatoia per un comando o un menu. A seconda del contesto, però, assumono diverse funzioni.

Da non perdere

Creare una nuova directory con MC è un gioco da ragazzi

Locale e remotousando SSH, FTp o SFTp, MC può lavorare con file locali e remoti.

Opzioni di editingEdit è un’opzione sempre presente. Si può usare qualsiasi tipo di editor, ma mcedit è il predefinito.

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

064_068_LXP_147_LXF185.hot 64 21/10/14 22:10

64 Linux pro 147 Linux pro 147 6564 Linux pro 147 Linux pro 147 65

Nella nuova versione di Python, rilasciata nel mese di settembre, abbiamo notato solo lievi

cambiamenti e una manciata di nuove caratteristiche. iniziamo con la modifica dell’headline e la standardizzazione del modulo enum che permette di integrare tutti i tipi di enumerazione. in questo modo è possibile associare nomi simbolici (come i giorni della settimana) a valori costanti. La necessità di inserire questa caratteristica è da ricercarsi addirittura nel 2005, quando molti utenti hanno iniziato a richiederla. A tal proposito, gli sviluppatori sono stati subissati da tonnellate di email per far sì che venisse aggiunta. nelle comunità viene definito un compromesso scomodo, ma è grazie a questa insistenza se enum è stato incluso. Meno controversa, invece, l’aggiunta dell’i/o asincrono che

Goggles Music Manager è un gestore musicale veloce, leggero e aggiornato. Le modifiche includono

un nuovo motore di riproduzione e una migliore interfaccia utente, un gestore di podcast e miglioramenti che permettono una più precisa riproduzione di formati come FLAC, Vorbis, opus e Mp4. i cambiamenti del motore di riproduzione, tuttavia, hanno lasciato al di fuori il formato AAC, sulla cui integrazione gli sviluppatori stanno comunque lavorando. Avrete probabilmente bisogno di scaricare il toolkit Fox. una volta fatto, usate ./configure e installate i pacchetti dev mancanti (libglew e libgcrypt). A questo punto, nella nostra prova, ci siamo imbattuti in alcuni errori di compilazione comunque risolti. Solo dopo make e make install abbiamo aperto Goggles MM dal menu applicazioni e scelto la directory da cui importare la musica. una volta specificata, il programma

Python

Goggles MM

finalmente sovrascrive la libreria di base presa in prestito dal modulo Twisted.

Finalmente c’è pippython è largamente usato nel mondo dell’istruzione. Gli sviluppatori, infatti, hanno ricevuto molteplici feedback da insegnanti impegnati ad affrontare situazioni particolari in aree problematiche per la maggior parte dei programmatori. una delle mancanze più lamentate è stata l’assenza di un gestore pacchetti che permettesse un lavoro multi-piattaforma dei software. usando pip, ecco che python 3.4 risolve definitivamente il problema. Dopo molte

ha scansionato rapidamente il percorso e aggiunto la nostra collezione di podcast, più la musica che avevamo archiviato.

Manager minimalistaLa classificazione della musica è automatica e avviene in base al genere, all’artista, all’album e alla canzone. Se la nostra collezione è però al di fuori delle playlist più popolari, potremmo comunque avere qualche problema di identificazione. Allo stesso modo, se le cartelle importate non sono rinominate in modo significativo, non possiamo pretendere che Goggles ordini tutto per noi. in ogni caso, supportando l’editing di file multipli,

Linguaggio di programmazione ad alto livello

Gestore musicale

proposte respinte, pathlib è stata poi accettata come libreria orientata agli oggetti per l’accesso al filesystem locale. C’è anche un nuovo modulo di statistiche, il quale va a proporsi come alternativa leggera a numpy. L’aspetto centrale di questa versione, però, è la massa di utenti che è riuscita a smuovere dalla 2. infatti, solo pochi progetti vengono ancora sviluppati in python 2. Questo ci fa quindi sperare che la versione 3 sia capace di lasciare il segno.

possiamo sistemare il tutto senza particolari difficoltà. L’interfaccia utente (realizzata con il toolkit Fox) è piacevolmente minimale, con tutto il necessario raggiungibile dai tre menu a scomparsa. per collegarsi alle stazioni radio online basta un semplice uri. inoltre, le playlist possono essere importate o esportate in xSpF, M3u, pLS e CSV. Volendo, è possibile sistemare le raccolte tramite un semplice drag and drop, oppure ordinarle usando le opzioni di menu. Goggles MM supporta poi last.fm e libre.fm.

Versione: 3.4.2rc1 Web: www.python.org

Versione: 0.14 Web: http://gogglesmm.github.io

Con la versione 3 di Python c’è stata una grande evoluzione che sta continuando anche nella 3.4

Un ottimo manager musicale per gestire podcast e musica di ogni formato e provenienza

“Python 3 ha surclassato la versione 2 ed è pronta a lasciare il segno”

“Goggles è un gestore musicale minimalista ma ricco di funzioni”

Test Da non perdere Da non perdere Test

064_068_LXP_147_LXF185.hot 65 21/10/14 22:10

66 Linux pro 147 Linux pro 147 67

Git è forse uno degli strumenti più utilizzati nel mondo Linux. Da quando poi ha varcato la

soglia della versione 2.0, i miglioramenti sono sempre stati ancora più notevoli. Dal 2005, anno in cui Torvalds partorì il codice, di acqua sotto i ponti ne è passata, tanto che la maggior parte di noi dà per scontato l’uso e l’esistenza di Git. Alla base di questo progetto c’è comunque una documentazione di tutto rispetto disponibile sul sito ufficiale. oltre al manuale di riferimento, suddiviso in capitoli ben organizzati, avete a disposizione diversi video, ciascuno dei quali vi mostra come muovervi in questa piattaforma senza dover studiare pagine intere di istruzioni. Volendo, sempre sul sito alla sezione Download, ci sono delle Gui grafiche con cui usare Git. Alcune sono a pagamento, altre gratuite. Essendo un

S scritto in C++ con framework Qt4, questo sequencer multitraccia riserva senza dubbio delle

sorprese. Qtractor usa JACK per audio e ALSA per MiDi. Attualmente, sono disponibili pacchetti per Arch, Fedora e SuSE. Se volete compilare manualmente il programma, le dipendenze obbligatorie sono veramente poche: Qt4, JACK, ALSA, libsndfile e LADSpA. Tuttavia, in questo caso dovrete fare a meno di LV2, il successore di LADSpA, un’estensione che Qtractor è stato tra i primi a utilizzare così come librubberband, vale a dire rubber Band Audio Time Stretcher e il plug-in DSS. il nostro consiglio è quindi controllare i requisti opzionali elencati sul sito Web del progetto e aggiungere queste caratteristiche nel modo più opportuno. Anche se la versione 0.6 può dare adito

Git

Qtractor

sistema multi-piattaforma, troviamo tutto per Windows, Linux, Mac e Solaris. potete procurarvi Git con i più comuni comandi da terminale a seconda della distro che utilizzate. per Debian, per esempio, basta il tradizionaleapt-get install git

Su Fedora usate yum, su Gentoo emerge e su Arch pacman -S. Ci sono poi le versioni per openSuSE, FreeBSD, Solaris 11 Express e openBSD. nell’ultima release di Git non abbiamo nessuna grande modifica delle Api o aggiunta di caratteristiche rivoluzionarie. Ci sono piuttosto alcuni cambiamenti nel funzionamento

a qualche pensiero sulla stabilità del programma, ci siamo completamente ricreduti una volta lanciato. La latenza è bassa e, in parte grazie a Jack, il collegamento tra strumenti e microfoni reali e virtuali è assolutamente ottimo.

Fa il suo dovereil modo più semplice per iniziare è fare click destro sul riquadro a destra della finestra, così da scegliere i file musicali su cui lavorare. Qtractor è un sequencer non distruttivo, quindi non altera la qualità dei vostri file nel momento in cui vi mette mano. per la maggior parte delle attività avrete bisogno solo dei

Sistema di controllo revisione

Sequencer multitraccia audio/MIDI

predefinito. L’headline, per esempio, si sposta dalla corrispondenza semantica a quella semplice per git push [$there]. inoltre, la trasmissione adesso avviene direttamente dal ramo corrente a quello con lo stesso nome. inoltre, usare il comando git add <percorso> è lo stesso che utilizzare add -A <percorso>. Se state già usando Git, questi aggiornamenti non fanno certo urlare al miracolo, ma ciò nonostante possono fare comodo.

plug-in inclusi. infatti, il supporto per LADSpA, DSSi, Linux VST e LV2 è perfetto. È inoltre possibile utilizzare i plug-in VST di Steinberg con Wine, sfruttando il wrapper DSSi-VST. il manuale di 110 pagine è stato aggiornato alla 0.5.x, ma è comunque un buon punto di partenza per apprendere i rudimenti del programma. in definitiva, analizzando tutte le funzionalità, Qtractor soddisfa in pieno anche gli amatori più esigenti, ma non nasconde una certa velleità a competere con software più professionali.

Versione: 2.1.2 Web: www.git-scm.com

Versione: 0.6.3 Web: http://qtractor.sf.net

Nella sezione GUI Clients del sito www.git-scm.com potete trovare diverse interfacce con cui abbellire l’uso di Git

Qtractor ha una serie di utilità gestite da una vasta gamma di interessanti e pratici plug-in

“Git è stato creato da Torvalds nel 2005, ma da allora è molto migliorato”

“Qtractor attira un pubblico di amatori ma anche di professionisti”

Test Da non perdere Da non perdere Test

064_068_LXP_147_LXF185.hot 66 21/10/14 22:10

66 Linux pro 147 Linux pro 147 67

Shellpic utilizza i codici escape della shell per visualizzare immagini in un terminale o in un client irC. non

stiamo parlando di ASCii ma di foto reali anche se visualizzate a blocchi e con uno stile che ricorda molto da vicino i tempi degli 8-bit (a meno di non aver avuto un monitor in bianco e nero). La possibilità di mettere le immagini su irC è una novità, anche se questo significa pubblicarle a bassa risoluzione. Detto questo, abbiamo trascorso molto tempo a vedere vecchi album di foto e ci siamo ritrovati con una certa nostalgia per i tempi che sono andati. non stiamo parlando dei nostri ricordi personali, ma delle immagini a 256 colori tipiche dei monitor di una volta. Alcune foto non erano perfettamente riconoscibili e in questo caso la mancanza di dettaglio si fa sentire. Tuttavia, data la possibilità di pubblicarle su irC, non ce la sentiamo di farne una colpa a Shellpic. Le recenti release hanno aggiunto

Stellarium è un formidabile planetario gratuito, disponibile per più piattaforme tra cui Linux.

Lo potete trovare nel gestore pacchetti della vostra distro, ma se così non fosse, basta scaricare il codice sorgente dal sito ufficiale. Se ci sentiamo temerari, possiamo anche scaricare la beta della versione 0.13.1, che comunque non viene certificata come stabile. Sempre dal sito è poi disponibile una wiki fornita di tutte le informazioni per imparare a usare il programma in modo semplice e veloce. Stellarium mostra il cielo in 3D proprio come se vi foste davanti e nello stesso modo in cui potreste vederlo con un telescopio. L’ultima versione conta un catalogo di oltre 600.000 stelle a cui si possono aggiungere dei cataloghi extra per un totale complessivo di 210 milioni. Da non perdere la visione della via

Shellpic

Stellarium

il supporto per le immagini animate e per i terminali a 16 colori. Questo anche se, come detto, l’impostazione predefinita è a 256 colori. Se poi il terminale supporta un ambiente a 24-bit, basterà utilizzare il comando --shell24 per abilitare l’output di riferimento. per lanciare il programma, basta usare l’istruzione shellpic <pic.file>. A questo punto la finestra del terminale si ridimensionerà per ospitare la foto che volete aprire. in alternativa, è possibile specificare le dimensioni in scala. Altre funzioni permettono poi di abilitare l’animazione, la profondità del colore e la produzione di un’immagine per la pubblicazione su irC.

lattea che appare talmente realistica da rimanere a bocca aperta. naturalmente potete vedere anche i pianeti e i relativi satelliti, controllare il tempo, aumentare o diminuire lo zoom e sfruttare numerose modalità di proiezione. Tra queste la funzione fisheye utilizzata dalle cupole dei planetari, oppure la proiezione a specchio.

Installazione facileLa visualizzazione può essere gestita direttamente tramite il mouse che controlla anche lo zoom. in più abbiamo l’aiuto di alcuni tasti di scelta rapida che attivano i reticolati e i diagrammi stellari.

Display per terminale

Generatore di cielo fotorealistico

Installazione facileinstallate python-pil, quindi:sudo pip install Shellpic

in alternativa, potete usaregit clone https://github.com/larsjsol/shellpic.gitcd shellpicsudo python setup.py install

così da ottenere l’ultima versione. Bisogna poi dire che per questa rubrica siamo soliti installare montagne di programmi, ma raramente ne abbiamo visto uno capace di lavorare in modo così fluido.

possiamo sfruttare le coordinate equatoriali e altazimuthali, vedere le stelle cadenti, simulare un’eclissi o persino quello che succede quando esplode una supernova: davvero fantastico. in più siamo in grado di personalizzare il sistema con diversi plug-in per aggiungere satelliti artificiali e configurare l’uso di un telescopio. Sempre sul sito possiamo trovare componenti aggiuntivi, texture e script per aggiungere funzioni e caratteristiche al programma. Assolutamente da non perdere.

Versione: 1.6 Web: https://github.com/larsjsol/shellpic

Versione: 0.13.0 Web: www.stellarium.org

Parigi in primavera. Vedendo questa foto nel terminale, non possiamo fare a meno di sentirci nostalgici

Ecco cosa ci troviamo davanti una volta lanciato Stellarium. Affascinante, vero?

“Con Shellpic riportiamo le foto agli albori dei computer a 8-bit”

“Stellarium viene utilizzato spesso anche nelle scuole superiori”

Test Da non perdere Da non perdere Test

064_068_LXP_147_LXF185.hot 67 21/10/14 22:10

68 Linux pro 147 Linux pro 147 TM

Giochi Applicazioni per il tempo libero

Con lo stesso spirito di Frontier: Elite ii, Pioneer ci catapulta nella nostra galassia a cavallo

del 31° secolo. Grazie alla raffinatezza della ui di volo e delle diverse viste, viaggiare sarà un vero spettacolo. Le azioni che potete compiere sono parecchie: trasportare carichi, approdare alle stazioni commerciali, raccogliere missioni e, solo occasionalmente, incorrere in combattimenti spaziali. Siete liberi di diventare dei contrabbandieri e portare avanti attività illegali, così come degli onesti commercianti. ricordate, però, che se praticate la via dell’illegalità le autorità non rimarranno impassibili e vi daranno la caccia. per l’installazione è sufficiente decomprimere il file binario ed

Pioneer eseguirlo. Ci vuole un po’ di tempo prima che il programma abbia processato i 13,7 miliardi di anni di evoluzione dell’universo. una volta fatto, potrete scegliere di dare il via alla vostra missione partendo dalla Terra, dalla Stella di Barnard, da new Hope o da Epsilon Eridani, la capitale del Commonwealth dei mondi indipendenti. Sempre dalla schermata di avvio, avrete la possibilità di accedere al menu di configurazione. rispetto a molti altri giochi, qui c’è molto da imparare. Che vi piaccia o meno, dovreste studiare

Per pilotare è necessario studiarsi il manuale...

Avventura spaziale

il manuale per capire come simulare correttamente un volo interstellare. Se non lo fate, rischierete delle cocenti delusioni a ogni decollo. A seconda dei gusti questo può essere un ostacolo, ma dal nostro punto di vista ha dato un guizzo di novità al gioco; altrimenti sarebbe parecchio simile a molti altri titoli del genere, peraltro troppo semplici e immediati per farci divertire seriamente.

Versione: 200141006 Web: http://pioneerspacesim.net

“La grafica è davvero bella e a ogni viaggio vi regala panorami mozzafiato”

Uno dei classici del Gdr è costruire un mondo sotterraneo in cui il

protagonista deve addentrarsi alla ricerca di una formidabile ricompensa. Tuttavia non è questo il caso, in quanto Assassin of the Underdark è comunque un gioco relativamente poco sviluppato, che utilizza le librerie pygame e beneficia della rinnovata attività di Johan Ceuppens (persona che ha al suo attivo progetti come il clone di Super Mario Bros). il processo d’installazione è molto semplice. Assicuratevi di avere pygame e python 3, quindi scaricate e decomprimete il file tarball.

Assassin of the Underdark

per eseguirlo sarà sufficiente usare il comando python game.py. una volta lanciato il gioco, dovrete scegliere un personaggio, quindi affrontare una serie di combattimenti all’interno di una prigione. il tutto finisce qui. il problema di fondo, come abbiamo detto, è la scarsa completezza del gioco. Se fosse più rifinito, pur con un’ambientazione diversa, potrebbe avere gli stessi fasti di pioneer. A nostro avviso si tratta di un progetto

Si fa troppo presto ad arrivare al Game Over. Speriamo che gli sviluppatori arricchiscano il gioco presto

Gioco di esplorazione

con delle potenzialità che, se sviluppate in modo opportuno, possono portare alla realizzazione di un Gdr in piena regola, con tanto di innumerevoli dungeon da visitare e scoprire. Se siete esperti di python e volete mettervi alla prova, niente vi impedisce di contattare lo sviluppatore di questo gioco e proporvi per aiutarlo nella stesura. potrebbe essere un’esperienza divertente! LXP

Versione: 0.5rc1 Web: http://bit.ly/SdCT5x

“AOTU è un gioco con delle potenzialità ma ancora poco sviluppato”

Test Da non perdere Da non perdere Test

064_068_LXP_147_LXF185.hot 68 21/10/14 22:10

TutorialI nostri esperti offrono ogni mese i loro consigli di programmazione e di amministrazione del sistema

TuTorial PHP/SQliteInviate newsletter in massa via email dal vostro server evitando la maggior parte dei filtri anti-spam pag. 70

TerminaleUna breve guida su come funzionano gli account su Linux e su come configurarli a dovere senza errori pag. 74

openStackMemorizzate oggetti e gestite l’infrastruttura virtuale della vostra cloud pag. 76

lycheeCreate una versione alternativa di Flickr e condividete le vostre foto pag. 80

aCCaDEMia DEl CoDiCEPythonCreate un cluster connettendo tra loro diverse RPI e sfruttate la loro potenza per scoprire le password: un esercizio divertente e ragionevolmente economico per padroneggiare concetti avanzati. pag. 84

GimpIl programma di fotoritocco vi permette di estendere le sue funzionalità scrivendo i vostri plug-in: ecco come farlo in modo semplice grazie alle API e alla programmazione in Python. pag. 88

LInUx PRo 147 69

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

069_LXP_147_introTutorial 69 21/10/14 22:10

Tutorial Xxxx

70 Linux pro 147

Email di massa

PHP/SQLite Scrivere script per inviare e gestire newsletter

Spargete la voce! Ecco come inviare newsletter in massa via email dal vostro server evitando la maggior parte dei filtri spam

Parlare di email di massa tende a polarizzare. Da un lato potete apprezzare l’opportunità di inviare aggiornamenti ai vostri clienti e far loro offerte, mentre

a un livello più personale riconoscete il fastidio del trovarsi la casella piena di annunci che non avete mai richiesto. Lasciando perdere per un momento le vostre emozioni, questo articolo vi spiegherà un modo per spedire mail di massa dal vostro server, che sia dedicato dal vostro provider, un raspberry pi o una Linux su uSB. Sebbene questa applicazione possa funzionare su qualsiasi macchina che monti Linux, usarla dal vostro Web host è la scelta migliore perché oltrepasserà filtri spam più aggressivi: se la lanciate da un host il cui indirizzo non risolve lo stesso dominio potrebbe essere rifiutata da qualcuno. Dal momento che sfrutta SMTp per autenticare il mittente, tuttavia, avete già oltrepassato le regole della maggior parte dei filtri spam. Se pensate di mantenere un sito a casa vostra con un sistema Linux dovrete fare attenzione alle mail di massa così da non far finire il vostro ip in una blacklist. potete controllare il vostro dominio e l’ip su www.mxtoolbox.com. Se finite nella blacklist di mxtoolbox sarà necessario richiedere gentilmente la rimozione e magari ottenere un nuovo indirizzo ip dal vostro provider. Tenendo a mente questo, potete passare alla prossima sezione per cominciare a scrivere il programma.

Dal momento che il codice usato è in pHp e usa Apache, avrete bisogno di entrambi installati nella vostra macchina.

Installazione dei prerequisitiper far funzionare questo script dovrete lanciare una sequenza di comandi vari. il primo comando installerà SQLite nel vostro sistema. installare SQLite in Linux significa che potrete sempre accedere e modificare il database SQLite nel filesystem. Diversamente da MySQL, il database SQLite è un semplice file e vi basta aprirlo con SQLite per selezionare dati o effettuare modifiche. il comando per installare SQLite è:root@raspberrypi:~# apt-get updateroot@raspberrypi:~# apt-get install sqlite3

una volta installato SQLite su Linux dovrete installare i pacchetti pEAr usati per inviare le email di massa con SMTp:root@raspberrypi:~# apt-get install php-pearroot@raspberrypi:~# pear install Mail Mail_Mimeroot@raspberrypi:~# pear install net_SMTp

infine, aggiungete la libreria SQLite a pHp per interfacciarvi con il database:root@raspberrypi:~# apt-get install php5-sqlite

Dopo aver installato il modulo php sqlite Apache sarà riavviato: ora siete pronti a connettervi e usare il database SQLite. il resto del tutorial vi spiegherà come inviare email di massa personalizzate alle vostre liste. Ci sono solo alcuni piccoli file che vi permettono di inviare mail, modificare i modelli e tracciare le informazioni dai destinatari.

Impostare le email di massa il file principale su cui opererete è index.php. Questo file invierà il modello di email desiderato al gruppo di persone specificato. oltre a inviare le email, sulla pagina troverete dei link per modificarne il modello. Dal momento che potreste avere più gruppi ai quali inviare mail diverse, è normale avere diversi modelli utilizzati per un messaggio specifico o una newsletter periodica. Le righe 3-5 nel file impostano la connessione al database e includono i file header usati per la navigazione. L’oggetto $dbh ritornato è usato per tutte le query su SQLite all’interno dell’applicazione. Le query al database sono eseguite all’apertura della pagina e quando cliccate il pulsante Invia e spedite le mail. Dal momento che non avete ancora cliccato il pulsante, vedrete una pagina che elenca le opzioni di spedizione, una casella di testo e tre menu drop-down. Tutto il codice HTML che vedete nella pagina viene dall’output al di fuori della condizione if ($_POST[‘submit’]) { }; il codice e l’output interno a tale blocco verrà invece eseguito cliccando sul pulsante. nello specifico, il codice delle righe 1-9 e dalla 99 in poi viene visualizzato quando non avete inviato il form. La casella di testo può essere usata per inserire un oggetto personalizzato alle email, per esempio “Saluti da Linuxpro”. il primo menu può essere usato per selezionare il gruppo che riceverà la email. i destinatari sono registrati nella tabella leads. Tra le altre cose, la tabella

Tipi database SQLite hanno l’estensione sqlite per default che potete rinominare .db. Vi servirà anche impostare i permessi a 777 se pensate di modificarli dalla vostra applicazione, altrimenti avrete solo voi i privilegi per selezionarli.

InTErmEdIO

070_073_LXP_147_LXF188.tut_emailer 70 22/10/14 17:15

Tutorial Xxxx

Linux pro 147 71

PHP/SQLite Tutorial

La scheda struttura vi mostra le informazioni della tabella come nome e tipo. Potete modificarle e registrarle

contiene un iD unico, nome e cognome, indirizzo email, numero di telefono, categoria e data di ogni elemento. Finché ogni elemento ha un indirizzo mail e una categoria selezionata può ricevere email. Le categorie per gli elementi sono registrate nella tabella leads_categories. il secondo menu vi permette di selezionare il modello della mail da inviare. La tabella che contiene tali modelli è leads_email_templates. Contiene una colonna per l’id del modello, il nome e il codice. il file reale del modello è codice HTML. il vostro modello può essere qualsiasi cosa, da testo semplice a un modello commerciale responsive. per pochi euro potete comprare template puliti e reattivi visualizzabili bene sia su desktop che su mobile, e generalmente contengono diversi layout. un’alternativa è di copiare il codice sorgente di un’email che avete ricevuto e applicarvi il vostro tocco personale.A prescindere da dove arrivi il vostro template, potete collegare le immagini con i file su un host remoto o integrarle con indirizzi data. un’immagine integrata utilizzerà una tag src simile alla seguente:<img src=”data:image/jpeg;base64,/quicivailvostrobase64” />

dopo aver premuto Invia...Quando cliccate il pulsante Invia, viene eseguita l’intera pagina di codice dal momento che non esistono condizioni che le indichino il contrario. Visto che il codice che visualizzate prima che il form venga inviato l’avete visto poc’anzi, questa sezione illustrerà nel dettaglio il codice effettivamente eseguito all’invio del form. per i novizi, andate alla riga 10. Dal momento che la variabile $_POST[‘submit’] è impostata, la prima query viene lanciata e ritorna tutti gli elementi del database per la categoria selezionata. Tutte le righe che verificano il filtro sono estratte e ognuna viene inserita in due array chiamati ids_array e mails_array attraverso un ciclo foreach. L’istruzione print_r($mails_array) dopo il ciclo visualizza a video ogni indirizzo email aggiunto all’array. La seguente istruzione condizionale:if (isset($mails_array))

viene usata per inviare le mail se esistono degli indirizzi nell’array. Se non ce ne sono, il codice non viene eseguito e il vostro schermo non sarà riempito di fastidiosi errori. per il resto del tutorial sarà assunto che ci siano sempre destinatari per le mail. A questo punto per spedire le mail una alla volta a ogni persona viene usato un ciclo foreach sull’array mails_array. il codice foreach ($mails_array as $key => $mymail) creerà una $key e un valore di $mymail per ogni persona. Quest’ultimo valore è l’effettivo indirizzo email del destinatario. All’interno di questo ciclo foreach, il lavoro principale del codice è creare l’oggetto. Se avete aggiunto un messaggio personalizzato, l’utente riceverà quello. in caso contrario l’oggetto di default sarà Il mio messaggio. ottenuto l’oggetto viene recuperato il modello dalla tabella del database leads_email_templates. Tale tabella ha tre colonne, così da

dividere il modello in header, body e footer. Alternativamente potete usare una sola colonna per l’intero modello. il template esce dal database in una stringa $messagea e convertito nella variabile $body. immediatamente dopo la creazione di quest’ultima vengono creati gli header from, to e subject, che andranno a costruire la variabile $headers inviata assieme all’email. Le righe di codice successive sono le impostazioni per l’autenticazione SMTp. Conterranno il mittente, l’indirizzo dell’host (per esempio. ssl://smtp.gmail.com), username e password. Con questo esempio l’email viene inviata tramite SMTp. in parole povere significa che vi autenticate con un account mail reale come un account Gmai, perfetto dal momento che vi autenticate su connessione SSL e porta 465. Dopo aver impostato le credenziali, il metodo $smtp->send() invia la email. Se tutto va bene vedrete ‘La mail a: [email protected] è stata inviata!’, con [email protected] uno degli indirizzi del database. Se non avete indirizzi mail nella tabella del database quando schiacciate Invia, vedrete il messaggio ‘nessuna email’.

File modelloil file principale per modificare i modelli è view-template-code.php. A questa pagina si accede cliccando il link modifica sulla pagina principale. una volta aperta questa pagina potete modificare e salvare il file di modello. i file modello caricano i dati registrati nella tabella leads_email_templates. Cliccando il pulsante Invia per spedire una email dalla pagina index.php vengono recuperati i dati per il modello selezionato. Dopo la

La funzione di connessione può essere usata per database SQLite o MySQL: decommentate il $dbh che volete usare.

function db_connect() { global $dbh;

$user = ‘root’; $pass = “”; // ConnESSionE MYSQL //$dbh = new pDo(‘mysql:host=localhost;dbname=email_mass’, $user, $pass); // ConnESSionE SQLiTE

$dbh = new pDo(‘sqlite:db/emailmass.sqlite’); $dbh->setAttribute(pDo::ATTr_Err MoDE, pDo::ErrMoDE_ExCEpTion); return $dbh;}

SQLite e connessioni mySQL

070_073_LXP_147_LXF188.tut_emailer 71 22/10/14 17:15

72 Linux pro 147

Tutorial PHP/SQLite

modifica vengono aggiunte delle backslash dal momento che viene inserito nel database. Quando viene letto per la modifica o usato come modello, le barre vengono tolte così da mantenere il giusto stato di codice. Se volete vedere i modelli prima di spedirli, avete tre opzioni. La prima è quella di creare una categoria test (o usare Test in leads_categories, inclusa nel codice sorgente). Sebbene quest’opzione sia critica per controllare i messaggi email prima di inviarli agli iscritti, può essere tedioso e lungo inviarvi ogni volta una mail, soprattutto se il modello è complesso. Se usate un modello HTML, la vostra seconda opzione è usare un editor per scrivere il modello. per testare il modello vi basterà visionarlo su un browser come fareste per una normale pagina Web. una volta soddisfatti potete modificarne uno esistente nel database o crearne uno nuovo. L’opzione finale è usare il basilare editor integrato. potete accedere all’editor aprendo il file index.php e cliccando sul nome del tema, link che vi porta a view-template.php seguito dall’id del template. per esempio, sarete rediretti a una pagina simile a view-template.php?templateid=1. ora, se aprite index.php alla riga 168 vedrete il collegamento dell’esempio precedente:<a href=”view-template.php?templateid=’ . urlencode($id_

template) . ‘”>il collegamento apre la pagina view-template.php e il punto interrogativo aggiunge il parametro templateid contenente il valore dell’id dalla tabella leads_email_templates nel vostro database SQLite. La funzione urlencode() è ottima qui, specialmente se usate url lunghi con molti parametri; in questo caso potreste rimuoverla e funzionerebbe tutto comunque. Quando viene aperta view-template.php, include il file per la connessione al database e l’header. Quindi l’url viene decodificata da urldecode() e i caratteri sono ripuliti con htmlentities(). Essendo solo un numero dal database, sarà semplicemente uno. in questo caso usare htmlentities(), _urlencode() e urldecode() può sembrare un po’ eccessivo; è sempre bene, tuttavia, tenere a mente la sicurezza, visto che le Web application sono spesso bersaglio di attacchi e anche un utente senza scopi malvagi può semplicemente giocare con le stringhe e causare problemi. Se poi l’aggressore è a conoscenza di qualche buco di sicurezza le probabilità di attacco si moltiplicano. Andando avanti, la funzione htmlentities() e la costante EnT_QuoTES vengono usate per assicurarvi che l’applicazione sia più sicura. Ancora una volta non è essenziale ma è buona abitudine bonificare l’input prima di usarlo in una query o in un elemento della form. Le righe successive recuperano i dati esistenti nell’header, body e footer del vostro modello scelto e lo visualizzano nella pagina.

File per tracciare le emailora che avete un cannone portatile per le vostre email di massa, potreste essere contenti e fermarvi qui. potreste però

anche voler tracciare i destinatari delle vostre email per vedere chi ha aperto la mail. per farlo, l’esempio di codice contiene due file: track-email.php e leads-opened-mail.php. il file track-email.php viene attivato quando un utente permette al suo programma di posta la visualizzazione di immagini remote: quando viene chiamato il database viene aggiornato. Se pensate di tracciare gli utenti, potete lanciare questa applicazione in un server in casa o in altri account in hosting. Se il vostro host è in casa assicuratevi che il router faccia forward della porta 80 per permettere ai link di raggiungere i file nel vostro computer. per tracciare le email ricevute, createne una con un collegamento nascosto di tipo immagine che punta a un file pHp. il codice può essere aggiunto a index.php sotto la variabile $footer vicino alla riga 53:$footer .= ‘<img src=”http://example.com/email-mass/track-

email.php?id=’.$id_of_lead.’”>’;Anche se funziona, potreste fare un passo in più e inserire la variabile contenente l’indirizzo email così da assicurarvi che il membro sia realmente lui e non solo qualcuno che sta chiamando quell’indirizzo con degli id a caso, il che causerebbe inserimenti errati. il file lead-opened-mail.php vi mostrerà un elenco di persone che hanno aperto la mail con l’immagine: potete trovarlo nel menu principale.Dovreste anche dar modo ai destinatari di cancellarsi. La tabella leads_open_mail_unsubscribe può essere usata per gestire coloro che hanno scelto per l’opt-out. Dal momento che questo è un tutorial potete copiare il codice da track-email.php chiamandolo per esempio unsubscribe.php. Entrambi catturano l’id utente nel link. La sola differenza è che inserirete i dati nella tabella leads_open_mail_unsubscribe, inclusa nel database. perché il destinatario possa avere un link per cancellarsi, aggiungete la riga seguente sotto alla variabile $footer: $footer .=’<a style=”text-decoration:underline;

color:#f16423;” href=”http://example.com/email-mass/unsubscribe. php?id=’.$id_of_lead.’”>Cancellami</a>’;nel caso siate interessati, l’operatore ‘.=’ semplicemente aggiunge il link alla variabile $footer. Anche se questo tutorial potrebbe essere stato scritto per MySQL, SQLite è una scelta migliore per quello che riguarda la portabilità. Se usaste MySQL avreste dovuto creare un nuovo database per ogni posizione in cui mettere in opera la Webapp. Con queste istruzioni invece vi basterà copiare la cartella dell’applicazione e copiarla in qualsiasi server che abbia pHp installato. Attenzione però: il file di database di SQLite dev’essere scrivibile, quindi sia la cartella db che il file di database devono avere permessi 777. il comando chmod 777 lo garantisce. Se i permessi non sono 777 riuscirete a effettuare dei select ma non potrete modificare il contenuto con insert, update e delete. Se volete usare SQLite da riga di comando potete farlo. una volta che avete accesso al database SQLite esistono un ventaglio di comandi per interagirvi: una lista completa è all’indirizzo http:///sqlitestudio.pl. Se volete usare un’interfaccia grafica, esistono strumenti come SQLite Studio o SQLiteman da installare sulla vostra macchina Linux. Entrambi sono liberi e facili da usare: SQLiteman è già negli archivi, mentre SQLite Studio dev’essere scaricato (da http://sqlitestudio.pl/?act=download) e reso eseguibile. Dopo averlo scaricato in ubuntu, per esempio, lanciate:chmod +x sqlitestudio-2.1.5.bin./sqlitestudio- 2.1.5.bin

Questo aprirà il vostro programma. parlando genericamente,

TipÈ possibile convertire un database MySQL in SQLite usando un solo comando: # ./ mysql2sqlite.sh -u username -p password database_sorgente | sqlite3 database_destinazione.sqlite.

Credenziali SmTPperché il mailer SMTp funzioni dovete impostare l’host, porta, username e password della vostra email. L’esempio seguente dovrebbe funzionare per qualsiasi account Gmail abbiate, modificando host, username e password.$from = “Mario “rossi;$host = “ssl://smtp.example.com”;$port = “465”;$username = “[email protected]”;$password = “<password>”;

070_073_LXP_147_LXF188.tut_emailer 72 22/10/14 17:15

Linux pro 147 73

PHP/SQLite Tutorial

entrambi gli strumenti fanno più o meno le stesse cose permettendovi di leggere e aggiornare le tabelle e creare query personalizzate. SQLite Studio sembra un po’ più chic e con qualche caratteristica in più. Diversamente dall’uso di strumenti di gestione integrati quali phpMyAdmin, la modifica di SQLite agirà sempre sulla macchina locale. Dovrete poi caricare il file con FTp dopo qualsiasi modifica. Se usate una iDE come PhpStorm, netbeans o Eclipse potete aprire il progetto e trasferire i file in modo pressoché istantaneo: vi troverete dunque a lavorare con un’applicazione che usa un database SQLite, uno strumento per la gestione del database stesso e una iDE allo stesso tempo. per aprire il vostro file di database dovete spostarvi nella cartella che lo contiene e aprirlo con il comando SQLite3. Le tre righe seguenti vi mostrano come aprire il database e visualizzare le tabelle: ora avete il potere supremo!root@raspberrypi# cd /var/www/email-massroot@raspberrypi# sqlite3 emailmass.sqlitesqlite> .table

Le due righe seguenti mostrano due semplici istruzioni SELECT e dELETEsqlite> SELECT * FroM leads_email_templates WHErE id = 3;sqlite> DELETE FroM leads_email_templates WHErE id = 1;

SQLite Studio è un download gratuito. una volta scaricato e aperto avrete altresì pieno controllo del database. per aprire un database in SQLite Studio scegliete databases dal menu principale, quindi Add database D Find It D OK. Alla prossima apertura verrà caricato automaticamente. per lavorare con una tabella di database fate doppio click su una di queste. A questo punto utilizzerete le schede Structure e data per effettuare personalizzazioni e modificare gli elementi. Cliccando sulla matita potete scrivere query personalizzate, eseguibili poi con il pulsante con il fulmine. Tutta l’applicazione può essere convertita in MySQL. Le uniche differenze che è necessario implementare sono di convertire il database in MySQL e modificare la connessione dal file public_dBO.php. il codice è già in loco, semplicemente decommentate la connessione MySQL e di conseguenza commentate quella SQLite. una volta completata con username e password corretti siete a posto. per come è ora, l’utente è ‘root’ senza password. Questa piccola applicazione può creare e inviare email di massa davvero in pochi minuti. può essere messa in piedi in un qualsiasi server a vostra disposizione, anche un raspberry pi, un pendrive uSB, una macchina virtuale o un semplicissimo account di Web hosting. LXP

Ecco quello che vedete quando lanciate SQLiteman. Potete vedere il contenuto di ogni tabella e lanciare query personalizzate

il tutorial usa le classi mail di pEAr e invia le email tramite SMTp. Tuttavia potete usare la funzione mail() presente in pHp nel file index.php. Se la usate, negli header probabilmente verrà aggiunto x-Source per identificare lo script che l’ha spedita. Gli header sono quelli di seguito. usare mail()

è più semplice ma non necessariamente migliore:x-Source: /usr/bin/phpx-Source-Args: /usr/bin/php /home/username/public_html/contact.phpx-Source-Dir: example.com:/public_html

nell’esempio di codice la linea che invia

effettivamente la mail è:$mail = $smtp->send($mymail, $headers,$body);

Se volete usare la funzione mail(), ecco il codice:mail(‘[email protected]’, ‘oggetto della email’, $body);

SmTP e funzione mail()

TipSe avete la prima colonna autoincrementante in MySQL è normalmente un tipo int e ha una chiave primaria. Con SQLite dovete convertire un tipo int in inTEGEr e renderlo chiave primaria. per default, convertire un database MySQL con tabelle che usano il tipo int lo convertirà al tipo int di SQLite.

070_073_LXP_147_LXF188.tut_emailer 73 22/10/14 17:15

Tutorial Terminale Terminale Tutorial

74 Linux pro 147 Linux pro 147 75

Tutorial xxxxTerminale Creare un utente, impostare una password e gestire al meglio i permessi

Conoscere gli accountnon importa se dovete gestire un solo utente o centinaia, vi spieghiamo come funzionano gli account su Linux e come configurarli a dovere

Anche se siete le uniche persone a utilizzare il vostro computer, Linux rimane un sistema operativo multi-utente. La più semplice delle distro, infatti, ha sempre due

account: il vostro e il super-utente, anche conosciuto con il nome più consono di root. ogni file o directory è di proprietà di un utente e i relativi poteri che gli consentono di leggere e scrivere ciascun documento vengono definiti permessi. in questo modo i file sono protetti dalla sovrascrittura, ed eventualmente dalla lettura, da parte di qualsiasi altra persona. Ci sono però delle eccezioni come la cartella di sistema. in questo caso solo l’utente root può modificare i file in essa contenuti, aggiungendo

o eliminando qualsiasi elemento. Data la capacità di scrivere e leggere nella directory di sistema, l’utente root è il solo che possa installare software di terze parti. per quanto riguarda la gestione degli utenti in Linux è poi opportuno fare una precisazione nel caso siate soliti condividere i dati su più computer o su un disco fisso esterno. Dovete sapere che mentre noi vediamo il nostro nome utente testuale, Linux lo interpreta come un numero chiamato iD. Durante l’installazione di una distro, come abbiamo detto, viene creato un utente root che ha numero 0. insieme a questo verrà generato anche il vostro account che può avere un iD a partire da 500 o 1.000 a seconda dei casi e della distro utilizzata. il punto è che su ogni sistema Linux il nome utente corrisponde a un numero e quindi, se spostiamo un file su un altro computer o un disco esterno, lo stesso account non verrà riconosciuto come proprietario di quel determinato documento.

Creare un utenteogni user ha una directory home che di solito viene posizionata in home/nomeutente, ma in realtà può essere ovunque. Linux, inoltre, gestisce anche i gruppi che sono semplici insiemi di utenti. per esempio, se avete una stampante uSB collegata al computer, per utilizzarla dovrete essere membri del gruppo che ha permessi tali da potersene servire. ora che abbiamo approfondito il concetto di utente, gruppi, iD e directory home, passiamo a creare un account:sudo useradd -m -c “Mario rossi” -g users -G stampante,audio

marioAbbiamo usato il comando sudo perché solo l’utente root può creare altri utenti. L’opzione -m, invece, genera una directory home in home/mario e -c specifica un commento utile a riconoscere l’utente (di solito il nome completo di cognome). -g, invece, imposta il gruppo primario, mentre -G aggiunge i gruppi secondari. infine diamo il nome utente. non tutte queste opzioni sono necessarie. per esempio, se si omette -g verrà impostato semplicemente il gruppo di default. Alcune distribuzioni utilizzano un unico gruppo chiamato “utenti” per tutti gli user non di sistema, mentre viene poi creato un altro

Diventare rootQuasi tutti i comandi di gestione richiedono l’accesso come root. il super-utente, definito appunto come root, può fare qualsiasi cosa in ogni directory, indipendentemente dalle autorizzazioni. La domanda che ci viene quindi spontanea è: come fa un umile utente a eseguire un’azione da root? Ci sono due modi per farlo. Quello più tradizionale è utilizzare il comando su. in questo modo passate da un account a un altro. ovviamente la condizione necessaria è conoscerne la password, altrimenti sarà impossibile. Lanciate su in un terminale (passate a root se volete specificare un user) e vi verrà chiesta

la password di root. una volta inserita, basta spostarsi in qualsiasi directory e fare quello che volete. naturalmente questo approccio è un po’ rischioso, soprattutto se si prevede di permettere a determinati utenti di compiere azioni da admin. in questo caso, infatti, non possiamo fare altro che dargli la password del super-utente. È qui che entra in campo il comando sudo. Questo permette di lanciare individualmente i comandi come root (o un altro user), ma senza conoscere la password del super-utente. inoltre, l’utente root deve avervi prima permesso di eseguire alcuni o tutti i comandi come

super-utente, quindi richiede la password. Durante l’installazione della maggior parte delle distro, il primo utente creato ha diritti sudo su tutto, senza mai accedere come root o diffondere la password di quest’ultimo. in effetti, alcune distribuzioni non hanno neppure una password di root e sudo è l’unico modo per eseguire comandi da admin. sudo può essere usato per dare diritti individuali agli utenti, così che possano eseguire solo comandi specifici. inoltre, sempre sudo registra i comandi e l’utente che li esegue nel registro di sistema, in modo da sapere sempre chi ha fatto cosa.

fACile

074_075_LXP_147_LXF188.tut_terminal 74 21/10/14 22:10

Tutorial Terminale Terminale Tutorial

74 Linux pro 147 Linux pro 147 75

gruppo separato per ogni singolo account. il comando groupadd funziona in modo simile alle controparti userdel e groupdel per eliminare utente e gruppo.

Aggiungere una passwordA questo punto abbiamo creato un utente, ma non potremo ancora accedervi fino a quando non generiamo una password:sudo passwd mario

Dovrete quindi specificare la password due volte. il comando passwd può essere utilizzato anche per modificare la chiave di accesso di un utente già esistente. Se si esegue senza sudo, verremo avvisati con un messaggio di errore. infatti, solo l’utente root ha il potere di cambiare o generare nuove password. Come le buone norme di sicurezza ci insegnano, è sempre consigliato modificare la chiave d’accesso con regolarità. in questo caso usate l’istruzione:sudo passwd --maxdays 60 -warndays 7 mario

La password sarà quindi valida per due mesi e Mario verrà avvertito della necessità di cambiarla sette giorni prima della scadenza. Anche in questo caso, seppure non sarà la prima volta che lo sentite dire, vi diamo un consiglio su come generare una chiave di accesso abbastanza robusta. utilizzate maiuscole, minuscole e caratteri speciali. inoltre cercate di mantenere la lunghezza tra gli otto e i dodici caratteri. usate queste semplici regole per ogni password, ma soprattutto per quella di root. Come abbiamo detto, chi entra con questo accesso ha le chiavi

del vostro computer. Le informazioni relative a un utente vengono memorizzate in /etc/passwd, mentre la password stessa viene cifrata in /etch/shadow. in entrambi i casi, potete modificare la posizione di queste informazioni come preferite. Comunque, prima di apportare qualsiasi modifica, per evitare problemi potete usare vipw. Questo carica una copia di /etc/passwd nel vostro editor di testo (definito in $EDiTor) e controlla la validità del file prima di eseguire il salvataggio e l’eventuale sovrascrittura. il formato di /etc/passwd è spiegato completamente in:man 5 passwd

Trasferire la proprietàSe volete trasferire la proprietà di un file a un utente, usate semplicemente il comando chwom:chown mario nomefilechown mario:utenti nomefilechown mario: nomefilechown -r mario: nomedirectory

il primo fa in modo che Mario divenga il proprietario di un singolo file. La seconda istruzione cambia anche il gruppo. Se non lo si specifica dopo i due punti, come nel terzo esempio, viene impostato quello predefinito dell’utente. Quando viene applicata a una directory, l’opzione -R modifica le proprietà di tutti i file e sottocartelle. in alternativa, è possibile cambiare solo il gruppo con chgrp. Questi comandi, ovviamente, devono essere eseguiti come root. per cambiare i permessi, invece, usate chmod. lXP

Molti desktop hanno delle alternative grafiche per la gestione degli utenti. Questo è Cinnamon su Mint

Con sudo ogni utente può avere tutti, alcuni o nessun diritto amministrativo. in /etc/sudoers potete gestire i relativi permessi

filesystem diversiCiò che genera spesso confusione è il punto di montaggio dei permessi. non fa alcuna differenza che questi ultimi e la proprietà si trovino sullo stesso punto di mount prima che il filesystem sia a sua volta montato. nel caso di Linux, infatti, basta montare il filesystem e usare chown o chwomd per configurarlo come si vuole. Queste impostazioni verranno poi applicate ogni volta. il filesystem di Windows, come il FAT sulle chiavi uSB, viene trattato in modo diverso. FAT non ha il concetto di proprietà dei file, mentre nTFS dispone di un sistema che è incompatibile con le autorizzazioni di Linux. in questi filesystem, di norma, i file e le directory vengono configurate

in modo che sia l’utente che ha montato il dispositivo a possederle. in caso contrario non si potrà eseguire alcuna operazione di scrittura. i permessi dei file, solitamente, usano la rwxr-xr-x (o 755 se preferite) dall’auto-mounter. Se si sta montando un filesystem manualmente, utilizzate l’opzione uid per impostare i diritti di proprietà appropriati e umask per le autorizzazioni predefinite. Ecco un esempiosudo mount /dev/sdb1 /mnt/removable -o

uid=mario,umask=022La umask viene sottratta da 777 per dare i permessi, in questo caso 755. una umask di 0, invece, consentirà tutte le autorizzazioni.

l’esecuzione del comando mount mostra le opzioni del filesystem montato

074_075_LXP_147_LXF188.tut_terminal 75 21/10/14 22:10

76 Linux pro 147

In passato è stata mostrata una build automatizzata del cloud OpenStack utilizzando puppet e Vagrant. utilizzando questi strumenti per gestire le varie opzioni di configurazione che

una cloud openStack necessita, siete riusciti a creare un’istanza di nova e avete visto una configurazione di rete neutron creando un router virtuale. in questo tutorial approfondirete quel lavoro per vedere un paio di altri elementi nella piattaforma openStack, nella fattispecie Swift (il modulo per lo storage) e Heat (utilizzato per la coordinazione). Costruirete un piccolo cluster Swift e vi registrerete alcuni oggetti, utilizzerete poi i file di testo per impostare un’infrastruttura nella vostra cloud. Del paio di oggetti che state per vedere, Swift è parte di openStack da maggior tempo. nel 2010 fu messo sul tavolo da rackSpace

durante la loro collaborazione iniziale con nASA, il che portò all’esistenza di openStack. L’idea dietro a Swift è usare cluster di hardware commerciale per archiviare (potenzialmente) petabyte di dati ampiamente non strutturati, ovvero che non risiedono in un database. Questo rende Swift un’alternativa a quello che tradizionalmente sono state soluzioni hardware costose, proprietarie e closed-source per questo genere di operazione. Swift è anche vagamente analogo ad Amazon S3, condividendone diverse caratteristiche (e una Api compatibile) come l’eventual consistency e un’interfaccia HTTp rESTful. Heat ha altresì un’Api compatibile con Amazon ed è stato costruito per dare a openStack il tipo di operatività offerta dal prodotto AWS CloudFormation. Ha la propria Api openStack (la vedrete tra poco). Heat interpreta modelli umanamente leggibili che descrivono un’infrastruttura per un’applicazione cloud. Quindi crea tale infrastruttura chiamando gli altri servizi openStack.

Un’installazione OpenStack condensatautilizzerete i concetti visti nello scorso tutorial come base per questo. invece di riesaminare il setup e la configurazione di Vagrant e puppet in dettaglio, ripasserete i comandi usati per mettere in piedi la struttura. Se volete più informazioni, rileggete il passato tutorial. potrebbe essere un po’ oscuro se non avete usato puppet o Vagrant prima d’ora: riassumendo, usate puppet per configurare il software openStack e Vagrant per gestire le macchine virtuali (Virtualbox) su cui gira. Come immagine base è stata usata ubuntu 14.04 a 64 bit, installata in un sistema abbondante di memoria (16 GB). una volta sistemata, installate il software essenziale con apt-get:sudo apt-get update && sudo apt-get install virtualbox git ruby-

dev build-essential -yA questo punto scaricate Vagrant da http://www.vagrantup.com/downloads.html. Assicuratevi di scegliere il pacchetto 64-bit Linux (Deb) e installatelo (usando dpkg -i) prima di aggiungere la box Vagrant di puppet Labs che userete come punto di partenza per le build:sudo dpkg -i vagrant_1.6.3_x86_64.debvagrant box add puppetlabs/centos-6.5-64-puppet

IntermedIO

Tutorial xxxxOpenStack Memorizzate oggetti e gestite l’infrastruttura virtuale della vostra cloud

Un archivio di oggettiEcco una panoramica completa su Swift, il servizio di archivio di oggetti, e la sua coordinazione con Heat

OpenStack Swift: Internet aveva bisogno di un’altra piattaforma per registrare le foto di gattini

La eventual consistency è quando dati non strutturati vengono archiviati in diversi nodi, garantendo il ritorno di copie coerenti di tali dati in un momento successivo.

tip

076_079_LXP_147_LXF188.tut_openstack 76 22/10/14 18:33

Linux pro 147 77

OpenStack Tutorial

recuperate dal DVD di questo mese il file lxp-icehouse2.tar.gz e assicuratevi che sia nella vostra home directory. Quindi decomprimetelo e spostatevi nella directory creata:tar -zxvf lxp-icehouse2.tar.gzcd lxp-icehouse2

in questa directory si fa riferimento ai range di rete in diversi file, soprattutto in openstack.yaml e Vagrantfile. potete modificarli per adattarli alla vostra situazione ma l’idea è che la cloud sia indipendente. utilizzerete una macchina ubuntu desktop per interagirvi (non connettendosi a sistemi esterni). per rendere più facile la parte di installazione c’è un piccolo script shell, lxpopenstack.sh, che può essere usato per automatizzare buona parte del lavoro necessario. per eseguirlo lanciate semplicemente./lxpopenstack.sh

Quindi rilassatevi mano a mano che vedere passare a video il report sull’installazione dei componenti e la nascita della vostra cloud openStack. un’occhiata più da vicino allo script vi rivelerà che esso consiste in una serie di comandi Vagrant per creare delle istanze di macchina virtuale, registrazione di agenti puppet con i loro master, firma di certificati puppet e installazione di un software chiamato PuppetdB. Questo viene usato dal processo di provisioning di openStack controllato da puppet per mantenere informazioni sulle risorse Swift. Vengono lanciati tre nodi Swift, quindi il Controller. Quindi lancerete nuovamente l’agente puppet sui nodi Swift per assicurarvi che le risorse esportate siano sincronizzate. Se guardate Vagrantfile vedrete che questi quattro nodi, assieme al master di puppet, sono quelli su cui opererete in questo tutorial (come esercizio vi è lasciato completare questo file con quello dello scorso tutorial, aggiungendo altri nodi Compute per esempio). Al nodo Control è stata assegnata della vCpu extra e altra memoria nel Vagrantfile, dal momento che è qui che lancerete la maggior parte dei servizi openStack, incluso il proxy Swift. Gli altri nodi gestiscono il resto di Swift (servizi di storage, account e container). Decidete quali nodi debbano lanciare i servizi assegnando loro dei ruoli nel file site.pp e utilizzando quindi swiftcontroller e swiftstorage. puppet usa quindi tali impostazioni per confrontare i ruoli impostati nel modulo puppetlabs-openstack installato nello script puppet-bootstrap.sh. il ruolo swiftcontroller è stato leggermente modificato per gli scopi del tutorial. Durante l’installazione possono verificarsi alcune pause. in particolare, puppetDB ci metterà un po’ ad avviarsi, ma siate pazienti e tutto andrà bene.

Allo stesso modo potreste vedere degli errori che indicano che un agente puppet è già attivo. non vi preoccupate, il nodo è stato avviato automaticamente e per sicurezza lo si sta cercando di avviare manualmente. potete controllare lo stato di un agente puppet entrando in un nodo (usando il comando vagrant ssh <nomenodo>) e controllando il file /var/log/messages cercando la stringa ‘finished catalog run’, così:vagrant ssh controlsudo tail -f /var/log/messages

premete Ctrl + C per uscire dal comando tail. una volta che lo script ritorna al prompt, l’installazione openStack è pronta all’uso. Lanciate il comando seguentevagrant status

e dovrebbe ritornarviCurrent machine states:puppet running (virtualbox)control running (virtualbox)swiftstore1 running (virtualbox)swiftstore2 running (virtualbox)swiftstore3 running (virtualbox)

L’interfaccia utente di openStack è pronta su http://192.168.11.4. usate lo username test e password abc123 (impostata nel file openstack.yml). potete velocemente vedere le funzionalità di base di Swift dopo aver fatto login nel browser. Cliccate sul menu Project sul lato sinistro dello schermo, quindi scegliete Object Store D Containers. Create Container fa esattamente quello che vi aspettate: definite un nome per il contenitore e impostatene l’accesso pubblico

Swift in due paroleL’idea dietro a Swift è di usare cluster di hardware commerciale per registrare petabyte di dati statici ampiamente non strutturati (ovvero che non stanno nel database). Questo lo rende una reale alternativa alle tradizionali soluzioni hardware costose, proprietarie e closed-source per questo genere di operazione. Swift è anche vagamente analogo ad Amazon S3, condividendone diverse caratteristiche (e una Api compatibile) come l’eventual consistency e un’interfaccia http rESTful. Swift è, come già spiegato nel tutorial, un sistema di storage elastico e ampiamente scalabile per i dati non strutturati acceduti via

una Api rESTful. È composto da diversi componenti: server proxy, che gestisce le chiamate Api; server account, che gestisce gli account; server per i contenitori; e server per gli oggetti, che gestisce gli oggetti stessi. i server proxy solitamente staranno su sistemi separati dagli altri processi, che risiederanno sui nodi storage stessi. Altre operazioni in background includono la replicazione, gestione di account, ecc. un concetto importante di Swift sono i ring. rappresentano la mappatura di entità con la loro posizione fisica sul disco. Account, contenitori e oggetti hanno ognuno il proprio ring individuale con cui gli altri

componenti interagiranno per determinare la posizione nel cluster. All’interno dei ring i dati possono essere isolati in zone (che possono essere rappresentate da un disco singolo, un gruppo di dischi o anche un data center). per default, Swift registrerà tutto tre volte. Tenterà di usare zone multiple per la ridondanza e se una zona va offline, replicherà automaticamente i dati in una nuova. Date un’occhiata alla openStack Admin Guide http://bit.ly/OpenStackAdminGuide per ulteriori dettagli. Visitate quindi la guida all’architettura Swift http://bit.ly/SwiftArch per una visione più approfondita.

Il vostro povero e maltrattato sistema di test emula tutti questi servizi OpenStack senza lamentarsi troppo

tipDopo che un’istanza viene rilevata come attiva in openStack nell’ambiente di test, può servire qualche momento perché sia completamente funzionale. Date un’occhiata ai log dell’istanza cliccando nel nome e quindi sulla scheda Logs.

076_079_LXP_147_LXF188.tut_openstack 77 22/10/14 18:33

78 Linux pro 147

o privato. nell’esempio è stato chiamato lxpcontainer e impostato a pubblico per permettere a chiunque conosca l’urL di un oggetto particolare di scaricarlo. potete quindi cominciare a caricarvi oggetti utilizzando l’opzione sul lato destro. Date un nome all’oggetto, quindi sfogliate il filesystem locale per scegliere il file da caricare.

Filesystem su cloudAl momento siete perdonati se vi sentite un po’ sopraffatti: alla fine si parla solo di memorizzare file in un filesystem, no? Bene, l’object Storage quando si parla di scalare e ridondanza vince a mani basse sui filesystem tradizionali: una volta garantito sufficiente spazio in un archivio tradizionale, diventa più facile ed economico semplicemente infilare oggetti nell’archivio che i costi di gestione di Lun e volumi. in effetti solamente il nastro magnetico è più economico, sulla scala gestita da object Storage, ma non ha tutti i vantaggi dell’avere dati online e disponibili all’istante, oppure dell’averli registrati in molteplici luoghi fisici. potete facilmente scaricare il vostro oggetto con un browser, oppure da riga di comando usando curl. Vicino al contenitore, il comando View detail vi mostra l’urL pubblico che dovete usare: sarà qualcosa del tipo http://192.168.11.4:8080/v1/AUtH_... seguita da una lunga stringa di numeri con /lxpcontainer alla fine. potete usare questo urL con il nome del file (per esempio /billy.jpg) per recuperare i vostri oggetti. Dal momento che avete impostato il contenitore pubblico, non c’è bisogno di autenticarvi per scaricare. Dando un’occhiata sotto il cofano potete vedere come effettivamente agisce Swift. Da riga di comando (internamente alla directory lxp-icehouse2 directory) potete lanciare questi comandi:vagrant ssh swiftstore1df -h

Vedrete che il server ha un filesystem in loopback montato, che usa per archiviare le copie degli oggetti. Gli oggetti sono copiati tra i server Swift usando l’utility rsync, che garantisce la eventual consistency. il classico rsync potrà essere in futuro sostituito da ssync, che promette maggior velocità di replicazione. Da qui potete usare alcuni degli strumenti da riga di comando che arrivano con Swift:swift --os-auth-utl http://192.168.11.4:5000/v2.0/

--os-username=test --os-password=abc123 --os-tenant-name=test listil comando di cui sopra elenca i container in uso dall’utente

(il solo lxpcontainer nel vostro caso). Se lanciate il comando:swift --os-auth-utl http://192.168.11.4:5000/v2.0/

--os-username=test --os-password=abc123 --os-tenant-name=test stat -s lxpcontainerAvrete ulteriori informazioni riguardo il contenitore, per esempio il numero di oggetti che contiene e la sua dimensione. potete vedere rapidamente quali processi Swift sono in esecuzione con swift-initsudo swift-init all status

Questo vi mostrerà i diversi servizi per i container, gli account e gli object. il processo mancante proxy-server sta girando sul nodo control. Aprendo un’altra scheda nel terminale (assicurandovi di essere nella directory lxp-icehouse2) potete accedere al nodo control e diventare root convagrant ssh controlsudo su -

Dando un’occhiata alla directory /etc/swift in questo nodo, vedrete i file .builder usati per creare i ring (trovate il box nella pagina precedente con una spiegazione completa). Questo comandoswift-ring-builder container.builder search r1

vi mostrerà varie informazioni riguardo i tre nodi Swift, complete di indirizzo ip, informazioni sulla porta, la regione o zona nella quale sono e quante partizioni hanno. potete consolidare il lavoro di Swift usando l’utility swift-dispersion-populate. Quest’ultima scrive su una percentuale del cluster Swift e i risultati possono essere visti con il relativo comando swift-dispersion-report. perché funzioni dovete creare il file /etc/swift/dispersion.conf, cosa che è già inclusa in lxp-icehouse2. potete copiarlo entrando nel controller e prendendone una copia dalla directory /vagrant:vagrant ssh controlsudo su -cp /vagrant/dispersion.conf /etc/swift

Dando un’occhiata a questo file vedrete che l’impostazione dispersion_coverage è impostata a 0.01: questa è la percentuale del cluster Swift che il comando userà. provate a modificare quest’impostazione prima di lanciare il comando populate, ma attenzione, potreste mettere a dura prova i vostri server. naturalmente qui il vantaggio è che potete facilmente cancellare tutto il sistema con vagrant destroy -f e ricominciare da zero usando lo script suddetto. Se volete approfondire la conoscenza di Swift, andate su http://docs.openstack.org.

Scaldare le nuvoleAndando oltre, potete ora vedere Heat, il modulo di coordinamento di openStack. La voce di menu sta nella dashboard esattamente sotto a quella dell’Object Store. Cliccando il sottomenu Stacks vi troverete un elenco miseramente vuoto. per rimediare lanciate subito uno stack usando l’opzione sul lato destro. nella schermata successiva potete scegliere un modello. Scegliete File dal primo menu a tendina, quindi navigate alla directory lxp-icehouse2 e scegliete lxp-simple.template. Quindi fate click su next, date un nome allo stack e inserite la password (abc123) nella casella relativa. ora premete Launch e guardate la vostra infrastruttura assemblarsi come una scena dall’ennesimo sequel di Transformers. Almeno finché il lancio non fallirà un secondo dopo. Cliccate sul nome dello stack per identificare il problema. Dal momento che la vostra cloud openStack ha un paio di reti disponibili per default, dovete aggiungere l’iD

Tutorial OpenStack

tipCi sono molti modelli per AWS Cloud Formation disponibili in internet che dovrebbero funzionare su openStack con poche o nessuna modifica.

Giocare con i modelli può diventare un lavoro a tempo pieno

076_079_LXP_147_LXF188.tut_openstack 78 22/10/14 18:33

Linux pro 147 79

Tutorial OpenStack

Heat in due paroleHeat offre un servizio di coordinazione basato su modelli, originariamente basato su (e compatibile con) AWS CloudFormation. Heat si è tuttavia sviluppato in un binario a sé con il proprio formato Heat Orchestration Template (HoT). Date un’occhiata alla guida a HoT qui: http://bit.ly/HotGuide per ulteriori informazioni. HoT è un modello basato su YAML particolarmente leggibile per gli umani.i modelli di Heat contengono le istruzioni per costruire una applicazione o infrastruttura cloud chiamando altri elementi del sistema openStack e chiedendo loro di creare delle

risorse che possono essere istanze di computer, indirizzi ip, volumi, ecc. Allo stesso modo Heat ha la possibilità di definire istanze ad alta affidabilità e scalabilità automatica, come istanze che si ridimensionano su richiesta. Quest’ultimo servizio si collega a Ceilometer, il modulo di telemetria di openStack per tracciare l’utilizzo all’interno del sistema. Heat può gestire le relazioni tra le risorse per permettere all’infrastruttura di essere costruita nell’ordine corretto. i modelli possono essere aggiornati e utilizzati per cambiare uno stack esistente. Fatto questo, rimuoverà tutta

l’infrastruttura definita nel file del modello. A livello di sistema operativo, ci sono diversi componenti che costituiscono Heat: un client a riga di comando, il servizio di Api rEST, un’Api compatibile con AWS e il motore di Heat stesso. Heat è in continua evoluzione, ma ci sono diverse risorse da guardare per scoprire di più a riguardo: http://docs.openstack.org offre documentazione, ci sono diversi esempi di modelli su GitHub (http://github.com/openstack/heat-templates) e un tutorial approfondito di rackSpace all’indirizzo http://github.com/rackerlabs/heat-tutorial.

corretto al template perché questo funzioni. Fate click sul menu network nell’angolo in alto a destra, quindi scegliete networks per vedere l’elenco delle opzioni pubbliche e private. Cliccate su Private per avere più informazioni, incluso l’iD (una lunga serie di numeri e lettere) che openStack usa per identificarla. Evidenziatelo e copiatelo negli appunti. Con il vostro editor preferito aprite il file lxp-simple.templat nella directory lxp-icehouse2, sostituendo <inserire network id> con il contenuto degli appunti. Salvate il file, tornate al menu Orchestration/Stacks e cancellate lo stack creato prima di lanciarne uno nuovo. Con le stesse impostazioni di prima stavolta, dopo qualche momento, il vostro stack dovrebbe lanciarsi con successo. naturalmente è un template molto semplice che consiste in una semplice istanza Cirros connessa a una rete. prima di potervi connettere dovete assegnargli un ip pubblico. potete farlo con il menu Compute/Instances. Dovete anche permettere degli accessi ulteriori, tramite Compute/Access e Security/Security Groups. Gestite le regole del gruppo predefinito e usate il menu Add rule per aggiungere SSH, ALL iCMp e HTTp. Dal vostro desktop ora potete usare SSH come utente Cirros con password cubswin:) per accedere. Tutto bene. È il momento di essere un po’ più ambiziosi. Lanciate un nuovo stack e stavolta scegliete il file lxp-wordpress.template. Dopo aver cliccato next, sarà chiaro che le opzioni per questo stack sono un po’ più complesse. i template Heat possono essere parametrizzati all’infinito. Qui avete l’opzione per l’image_id che, andandoci sopra con il cursore, rivela un pratico tooltip (dal file template). Vi viene raccomandato di usare un’immagine di Fedora, quindi accontentatelo: cliccate nella barra di menu Admin sulla sinistra, scegliete Images e create un’immagine. Chiamatela fedora-20.x86_64, scegliete Image Location nella casella Image Source e inserite l’urL http://download.fedoraproject.org/pub/ fedora/linux/updates/20/Images/x86_64/Fedora- x86_64-20-20140407-sda.qcow2 nella casella Image Location. il vostro formato è QCoW2. rendete l’immagine pubblica cliccando su quell’opzione, se volete. infine, cliccate Create Image. Quest’immagine ha una discreta dimensione quindi resterà in stato Queued and Saving per un po’, a seconda della banda disponibile al sistema su cui sta girando. Mentre succede tutto questo in background, avete l’opportunità di creare una coppia di chiavi SSH da usare nelle istanze che create. Tornate al menu Project e sotto a Compute scegliete Access & Security, quindi la scheda Key Pairs. Create una Key Pair, dategli un nome (per esempio

Lxp). Salvate il file .pem quando richiestovi. infine, dovete modificare il file lxf-wordpress.template per aggiungere il network iD. usate lo stesso metodo per lxp-simple.template per aggiungere l’iD di rete privato ai vostri sistemi (cercate <inserire il network id qui>).

Blog basato su cloudCon tutta probabilità ora la vostra immagine Fedora è stata scaricata e viene visualizzata come status attivo nel menu Images. Se così è, tornate a orchestration/Stacks, lanciate un nuovo stack e scegliete lxp-wordpress.template ancora una volta. Aggiungete un nome per lo stack, la password dell’utente test (abc123) e Lxp nella casella delle chiavi. Ci vorrà un po’ a completarsi, a seconda della dimensione del sistema sul quale sta girando. Alla fine verrete ricompensati con uno status completato e due istanze create: un server Web e un database. Assegnate un indirizzo ip pubblico al server Web e navigateci per vedere i risultati. Ecco in breve un assaggio di quello che può fare Heat: per esempi più complicati fate una ricerca in rete e provate a giocare con la vostra nuova cloud openStack. LXP

Successo! ecco il vostro sistema a due nodi finalmente in vita

OpenStack Tutorial

076_079_LXP_147_LXF188.tut_openstack 79 22/10/14 18:33

80 Linux pro 147

E sistono moltissimi servizi online che potete usare per condividere le vostre foto gratuitamente. Ma questi siti sono progettati principalmente per condividere le foto

con i vostri social network. Anche se alcuni offrono delle

opzioni per la privacy, non sono il posto ideale per condividere foto molto personali con la famiglia o con amici intimi. il modo perfetto per salvare e condividere foto senza perdere il controllo su di esse è quello di ospitarle voi stessi. Questo richiede un pochino di lavoro extra, ma permette di gestire tutte le proprie foto e una volta configurato adeguatamente il tutto avrete la stessa comodità dei migliori hosting di foto e servizi di condivisione. per creare un software di gestione degli album sul Web avrete bisogno di un Web server e possibilmente di una raspberry pi su cui installarlo. Anche se potremmo utilizzare Apache come Web server, abbiamo deciso di utilizzare il più leggero Nginx per sfruttare al meglio le poche risorse disponibili nei sistemi pi. utilizzeremo poi l’applicazione Web Lychee per gestire e condividere le nostre foto digitali. Confrontato con altri software che offrono funzionalità simili, Lychee è molto leggero, semplice da configurare e possiede un’interfaccia grafica molto intuitiva e gradevole. Cominciamo accendendo la nostra raspberry pi e aggiornandola con sudo apt-get update. possiamo configurare e installare Lychee da un altro computer effettuando l’accesso alla pi tramite SSH. per questo progetto assumiamo che l’indirizzo ip della raspberry pi sia 192.168.2.100, possiamo accederci in questo modo:sudo ssh [email protected]

inserendo questo comando ci verrà chiesta la password dell’utente pi per poter effettuare l’accesso.una volta aggiornato l’elenco dei pacchetti, installiamo il linguaggio di scripting pHp e le librerie richieste con:sudo apt-get install php5-fpm php5-gd libgd2-xpm-dev

libpcrecpp0 libxpm4

Tutorial xxxxHosting fotografico Condividere le foto con il proprio sito in stile Flickr

Il tuo server fotograficoCostruire una versione personale di Flickr e condividere le proprie fotonon è un’impresa impossibile con i nostri consigli...

facILE

Estendere LycheeLychee può essere esteso per sincronizzarsi in automatico con Google Drive o Dropbox. Anche se entrambi questi servizi non offrono un client ufficiale per raspberry pi, esistono diversi script custom. nel sito http://robotic-controls.com/learn/raspberry-pi/syncing-files-raspberry-pi sono disponibili diversi metodi per sincronizzare una directory presente sul proprio raspberry pi con moltissimi servizi online. per sincronizzare le foto a un account Google Drive è necessario utilizzare uno script Grive. La pagina possiede istruzioni molto dettagliate su come compilare questo script dai sorgenti dato che non è disponibile su raspbian. una volta installato lo script, basta lanciarlo dall’interno della cartella che ospita le immagini, e ritornerà un urL con un codice di autenticazione che è necessario per sincronizzare i file. Allo stesso modo lo script dropfuse permette di condividere le immagini con una cartella Dropbox. Lo script non accede all’intero account Dropbox ma trasferisce i file soltanto in una cartella specifica.

Lychee ha poche opzioni di configurazioni ma esistono estensioni da riga di comando che prendono il contenuto di una cartella e lo caricano come album

080_083_LXP_147_LXF188.tut_lychee 80 22/10/14 17:22

Linux pro 147 81

Lychee Tutorial

E quindi il server Web con:sudo apt-get install nginx

per finire, installiamo il database server MySQL e agganciamolo a pHp con: sudo apt-get install mysql-server php5-mysql

Durante l’installazione, viene chiesta la password per l’utente root di MySQL. Quest’ultima servirà più tardi per creare un database per Lychee. ora modifichiamo i file di configurazione di pHp per cambiare il valore di alcuni parametri in modo da poter utilizzare Lychee senza restrizioni. Apriamo il file di configurazione utilizzando l’editor nano: sudo nano /etc/php5/fpm/php.ini

Con ctrl+W possiamo cercare le seguenti variabili e modificare il loro valore in questo modomax_execution_time = 200post_max_size = 200Mupload_max_size = 200Mupload_max_filesize = 20Mmax_file_uploads = 100

aggiungendo una riga per ogni variabile mancante. una volta cambiati questi valori, andiamo in fondo al file e aggiungiamo queste righe per attivare le estensioni necessarie:extension = php_mbstring.dllextension = php_exif.dllextension = php_gd2.dll

Salviamo il file con ctrl+X e riavviamo il servizio pHp:sudo service php5-fpm restart

una volta configurati i componenti che formano l’infrastruttura, creiamo una directory per ospitare i file di Lychee con sudo mkdir /var/www. ora ci spostiamo in questa directory e installiamo il software Git con il comando sudo apt-get install git. utilizziamo questo software per ottenere l’ultima versione di Lychee:sudo git clone http://github.com/electerious/Lychee.git ./Lychee

Questo scaricherà i file all’interno della directory /var/www/Lychee. Concluso il download, modifichiamo i permessi sulla directory per permettere all’utente Web di accederci:sudo chown -r www-data:www-data /var/www/Lychee

rendiamo anche le cartelle uploads e php e i file al loro interno accessibili e scrivibili da tutti con sudo chmod -R

777 uploads/ php/. Con il software al suo posto è il momento di informare nginx della sua esistenza. per farlo, modifichiamo il file di configurazione sudo nano /etc/nginx/sites-available/default

e inseriamo quanto segue al posto del contenuto di default per far funzionare la nostra installazione di Lychee:server {root /var/www/Lychee;index index.php index.html index.htm;location ~ \.php$ { fastcgi_pass unix:/var/run/php5-fpm.sock; fastcgi_index index.php; include fastcgi_params;}}

riavviamo il server Web con sudo service nginx restart per far sì che le modifiche alla configurazione abbiano effetto. ora lanciamo un browser Web e vediamo se la nostra installazione di Lychee è corretta, se tutto è andato a buon fine all’indirizzo del nostro raspberry pi (http://192.168.2.100) comparirà la schermata di Lychee. La prima cosa che notiamo è che la sua installazione non è completa e ci chiede alcuni dati. nella prima schermata sono richieste le informazioni relative al nostro database MySql. impostiamo localhost come host e root come username. nel campo password inseriamo la password che abbiamo scelto quando abbiamo installato il server MySQL. in questa fase è possibile anche decidere di installare Lychee in un database esistente, ma è sempre meglio lasciare che ne crei uno nuovo. Cliccando su connect passiamo alla schermata successiva. ora dobbiamo creare un utente amministratore per Lychee. impostiamo nome e password e clicchiamo su create Login per completare il processo. Questo è tutto ciò che c’è da fare. Lychee si connette a MySQL e crea il database da solo, crea anche le informazioni relative all’utente in uso, che può essere utilizzato per caricare le foto. Conclusa questa operazione ci troviamo davanti all’interfaccia principale. Da qui possiamo utilizzare il software per creare album, caricare e condividere foto, e ovviamente amministrare l’installazione di Lychee stesso.

1 creare un albumper caricare le foto è sufficiente fare click sull’icona con il simbolo + nell’angolo in alto a destra dell’interfaccia di Lychee. Le foto possono essere caricate anche se non sono ancora state create nuove categorie e organizzarle in album in un secondo momento. Tutte le foto che non vengono caricate in un album specifico finiscono nell’album Unsorted. per creare un nuovo album basta utilizzare il menu New album.

3 Importareoltre a caricare le foto dal disco, Lychee permette di importare anche da altre fonti. L’icona + offre le opzioni per importare le foto da un urL così come da Dropbox. È possibile anche utilizzare un qualunque client FTp per trasferire le immagini nella directory uploads/import di Lychee e utilizzare Import from Server per prendere tutte le immagini in quella cartella.

2 caricare foto dal proprio disco fissoL’opzione Upload Photo apre il file manager che è fondamentale per trovare le foto che si desidera caricare. È possibile caricare una singola foto o addirittura più foto contemporaneamente utilizzando ctrl e Shift. Lychee si occuperà di caricarle sul server e processarle.

Passo passo Trasferire foto su Lychee

080_083_LXP_147_LXF188.tut_lychee 81 22/10/14 17:22

82 Linux pro 147

Toolbox di Octave

5 album pubblici Quando si condividono delle foto, Lychee aggiunge un’icona sull’anteprima per specificare che la foto è disponibile al pubblico. in più, per semplificare l’accesso, il software raggruppa tutti gli album e le foto condivise all’interno dell’album Public. Gli album pubblici sono visibili nella pagina iniziale di Lychee da tutti gli utenti all’interno della rete locale.

6 Interrompere la condivisione L’opzione Make Private permette di togliere i permessi di condivisione dall’album o dalla foto. Quando si interrompe una condivisione, Lychee la rimuove automaticamente dall’album Public e ovviamente toglie l’icona dall’anteprima. Da notare che non è possibile nascondere foto singole all’interno di un album condiviso, è necessario nascondere tutto l’album.

1 condividere gli albumMentre si guarda il contenuto di un album, è possibile condividere l’album cliccando sull’icona Make Public in alto a destra nell’interfaccia. Questo comando aprirà una finestra in cui è possibile decidere se i file possono essere visti, scaricati e se proteggere l’accesso con una password. Cliccando su Share album si otterrà un link: ovviamente questo link è accessibile soltanto all’interno della rete privata.

Passo passo condividere foto con amici e parenti

2 condivisione facile per facilitare il processo di condivisione, Lychee permette di condividere il link ai propri album direttamente su Twitter e su Facebook. Dispone anche di un’opzione Mail che apre il client di posta del proprio computer e prepara un nuovo messaggio con l’urL dell’album condiviso.

3 condividere una fotoCosì come gli album, è possibile condividere anche una singola foto selezionando la stessa icona mentre si sta visualizzando un’immagine. Esattamente come per gli album è possibile condividere l’urL in Twitter, Facebook o via email. in aggiunta, permette anche di scaricare l’immagine in Dropbox e di aprire il link diretto in un nuovo tab.

4 Impostare una passwordCome misura di sicurezza aggiuntiva, quando si condivide un album, Lychee permette di limitare l’accesso proteggendolo con una password. ovviamente è opzionale e può tranquillamente essere ignorato. Comunque, se si decide di limitare l’accesso e impostare una password, basta spuntare la casella e inserire la password desiderata. È importante tenere presente che è possibile proteggere soltanto gli album e non le eventuali foto condivise singolarmente.

Tutorial Lychee

080_083_LXP_147_LXF188.tut_lychee 82 22/10/14 17:22

Linux pro 147 83

Tutorial Lychee Lychee Tutorial

1 album intelligentiper semplificare la gestione, Lychee offre diverse directory virtuali chiamate smart album che ospitano delle foto in base a certi criteri. una di queste cartelle è chiamata Unsorted e ospita tutte le immagini che non sono state inserite in nessun album. L’album Starred ospita le foto che sono state segnalate con l’apposita icona, la directory Public contiene le immagini condivise, infine la directory Recent ospita le ultime foto caricate.

Passo passo Ordinare e modificare i propri album

2 Organizzare le foto una volta caricata una foto in Lychee, si rendono disponibili diverse opzioni cliccando su di essa. potete assegnargli una stella, rinominarla, farne una copia, cambiargli album, cancellarla e perfino assegnargli un tag. in alto a destra nell’interfaccia è posizionata una casella di testo grazie alla quale è possibile effettuare una ricerca nelle foto.

3 Visualizzare e modificare gli EXIfMolte immagini possiedono dei metadati associati, conosciuti come dati ExiF. insieme all’immagine Lychee importa anche questi metadati. per visualizzare i dati ExiF di un’immagine basta aprire l’immagine e cliccare sull’icona i nell’angolo in alto a destra. oltre a visualizzare i dati ExiF è possibile anche modificare alcune informazioni come nome e descrizione cliccando sull’icona a forma di matita.

4 Trasferire le fotoutilizzare il pulsante con l’icona di una freccia che punta verso il basso permette di scaricare una foto alla sua risoluzione originale oppure un intero album sotto forma di archivio Zip. in questo modo come abbiamo detto prima le foto possono essere rapidamente caricate tramite FTp e altrettanto rapidamente esportate in Zip. LXP

Utilizzare Raspberry Pi come cornice digitaleDopo aver installato raspbian e aggiornato i repository con sudo apt-get update, possiamo installare Quick Image Viewer con il comando sudo apt-get install qiv. ora creiamo una directory immagini/ dentro alla home (/home/pi) e copiamoci dentro tutte le nostre immagini. infine apriamo un editor di testo e creiamo un file cornicedigitale con al suo interno: qiv --fullscreen --slide --random --delay=10

/home/pi/immagini/*Questo fa sì che vengano visualizzate tutte le immagine in ordine casuale ognuna a schermo intero e per 10 secondi. Salviamo il file, usciamo dall’editor e rendiamo lo script eseguibile con chmod +x cornicedigitale. ora cerchiamo il file .xinitrc dentro alla directory home (/home/pi), se non dovesse

esistere, basta crearlo, e aggiungiamo al suo interno questa riga: /home/pi/cornicedigitale

Avviamo il server x con il comando startx e partirà la presentazione. Se ci sono molte immagini, si può utilizzare un disco uSB, assicurandosi ovviamente che sia montato in modo adeguato affinché lo script possa accedere alle foto. Aggiungiamo il disco e troviamo la sua posizione controllando le ultime righe di dmesg. Troviamo l’uuiD del drive con ls -l /dev/disk/by-uuid/ e creiamo un mount point per il disco con sudo mkdir /media/usb-immagini. per finire aggiungiamo al file /etc/fstab quanto segue per far sì che venga montato automaticamente: UUID=E352-47Dc /media/usb-immagini vfat default 0 2.

Raspberry Pi è l’ideale per visualizzare una presentazione di fotografie

080_083_LXP_147_LXF188.tut_lychee 83 22/10/14 17:22

84 Linux pro 147

PythonPython

Creare un cluster multi-PiLo staff di Linux pro connetterà tra loro diversi pi in un cluster (affettuosamente chiamato Bramble, o rovo) e sfrutterà la loro potenza per scoprire le password

Una volta succedeva frequentemente di collegare tra loro computer (non necessariamente potenti) per concentrare le loro capacità nello svolgimento di

un’unica attività comune, o di un gruppo di attività. Gli esempi includono le farm per il rendering e la simulazione, nelle quali il lavoro può venire facilmente distribuito tra i vari nodi. Questo tipo di cluster è diventato, in un certo senso, meno affascinante, gli hardware specializzati o di livello più alto offrono un rapporto prestazioni/consumo più vantaggioso e i processori multicore condividono i dati in modo molto più veloce di una rete. Ma non dobbiamo permettere che la moda si interponga tra noi e del buon fai-da-te vecchio stile.

Una questione spinosaLe reti che abbiamo descritto prima vengono comunemente chiamate cluster Beowulf. il nome deriva da un poema epico il cui eroe aveva la forza di trenta uomini. Quando l’hardware è costituito unicamente da raspberry pi (raspberry è il lampone) spesso il cluster viene chiamato: Bramble (rovo). Anche se la maggior parte dei computer desktop sono enormemente più performanti della pi, è un esercizio divertente e non molto costoso per scoprirne la potenza e imparare qualcosa sul calcolo distribuito in python. per la dimostrazione abbiamo utilizzato due pi alimentati dall’hub pimoroni (che offre un’alimentazione indipendente a ogni porta) e connessi tramite uno switch 100 MB con cinque porte (dal costo di 5 euro). L’hub può alimentare fino a un massimo di cinque raspberry pi, quindi in futuro possiamo

ampliare il nostro Bramble. per questo tutorial, metteremo il nostro cluster a eseguire un attacco brute force a due algoritmi molto conosciuti: MD5 e SHA-1. nello specifico cercheremo una preimage per un valore hash che calcoleremo da una passphrase. Entrambi gli algoritmi sono vulnerabili agli attacchi basati sulle collisioni (nei quali l’obiettivo è trovare una coppia di input che ritornano la stessa hash), gli attacchi preimage sono più complessi. Questo tipo di attacchi è possibile in MD5 ma richiede una quantità di tempo non ragionevole. Al momento della stesura di questo articolo, non esiste alcun attacco pre-image conosciuto per SHA-1. il malware Flame nel 2012 ha sfruttato una debolezza di MD5 sulle collisioni per creare certificati di sicurezza Microsoft.

Un po’ di codiceSentiamo spesso parlare di database compromessi dai quali sono trapelate le credenziali hash delle password. Anche se il buon senso aiuta a proteggersi dagli attacchi, le password rimangono vulnerabili ad attacchi basati su elenchi di parole. non tratteremo gli attacchi basati sugli elenchi di parole nel nostro codice python, ci concentreremo invece sulle combinazioni elementari di caratteri. Vi incoraggiamo a implementare un elenco di parole in python, potete scaricare delle liste precotte o generarne una vostra utilizzando un tool come Crunch. Le funzioni crittografiche di hash sono tutte disponibili in python tramite la libreria hashlib. per esempio, potete trovare l’hash MD5 della stringa password1 dal prompt di python in questo modo:>>> import hashlib>>> h = hashlib.md5(‘password1’)>>> h.hexdigest()‘7c6a180b36896a0a8c02787eeafb0e4c’

Sostituendo md5 con sha1 nel codice qui sopra otteniamo l’hash SHA-1 corrispondente:‘e38ad214943daad1d64c102faec29de4afe9da3d’

per il nostro tutorial, cercheremo di trovare una corrispondenza per questa hash MD5:target_hash_md5 = ‘392b2bd9f1571ff02e7dc21adfb2f0b0’

Supponiamo di essere interessati soltanto a password formate da lettere maiuscole, minuscole e dai numeri da 0 a 9. possiamo gestire la cosa senza troppi problemi combinando i vari range di codici ASCii:ascii = range(48,59)+ range(65,91) + range(97,123)caratteri = [chr(j) for j in ascii]

possiamo utilizzare il modulo itertools per generare tutte le possibili combinazioni di caratteri con una determinata lunghezza. Questo ci risparmia un po’ di codice noioso. La classe ipertools.product ritorna un oggetto, quindi invece di soffocare i nostri pi con una lista enorme, ci offre una singola combinazione per ogni iterazione. il parametro repeat rappresenta la lunghezza delle stringhe di output. per finire controlliamo se l’hash risultato in output è uguale a quello che stiamo cercando.for j in itertools.product(caratteri,repeat=lunghezza): tentativo = “.join(j) m = hashlib.md5(tentativo)

Python

084_087_LXP_147_LXF188.code_pi 84 22/10/14 17:22

Linux pro 147 85

PythonPython

hash = m.hexdigest() if hash == target_hash_md5: print “Vittoria!” break return(tentativo)

Le funzioni md5cracker() e shacracker() possono essere chiamate con l’argomento lunghezza visto prima ed è abbastanza semplice modificarle per fare un brute force con un range di password di lunghezze diverse. in un portatile dotato di processore Athlon 2.1Ghz single-core, tentare tutte le password di tre caratteri utilizzando il nostro set ha impiegato 0,7 secondi quattro caratteri 40 secondi e cinque caratteri circa 40 minuti. Dato che stiamo lavorando con 62 caratteri stiamo parlando di circa 380 mila prove al secondo, quindi possiamo aspettarci di rompere una password di sei caratteri in circa due giorni e una di otto caratteri in circa 18 anni. per SHA-1, la stessa macchina ha prodotto circa 314 mila hash al secondo. un hardware meno decrepito offre prestazioni migliori ma un singolo pi fa molto peggio, gestendo circa 6 mila hash al secondo in MD5 e un poco migliore 8 mila per SHA-1. Tutto questo senza alcun server x o altri demoni in esecuzione. Evidentemente qualcosa non funziona molto bene nell’architettura ArM, ulteriori indagini sono aldilà della portata di questo articolo, dato che qualsiasi cosa possiamo fare, John the ripper la fa meglio (ne parleremo meglio tra poco). per correttezza diciamo che il nostro file python contiene alla fine questo blocco di codice:if __name__ == ‘__main__’: import timeit print(timeit.timeit(stmt = “shacracker(4)”, setup=”from __main__ import shacracker”, number=1)) Questo significa che se il file viene eseguito da prompt, il tempo impiegato verrà gestito attraverso il modulo timeit. Si potrebbe tentare di velocizzare questo codice utilizzando Cython per generare codice C, ma il miglioramento potrebbe non essere così significativo. Le funzioni di hashlib e di itertools sono interamente implementate in C, quindi non otterrebbero alcun vantaggio. inoltre, la manipolazione delle stringhe in C ha i suoi inconvenienti, quindi a meno che non siate abbastanza pratici di malloc() e free() sarà molto difficile velocizzare queste funzioni. Comunque, potete sempre provare.

Aggiungere cervelliGli attacchi brute-force sugli hash sono un esempio di computazione “imbarazzantemente parallela”: è così semplice dividere il carico di lavoro che sarebbe imbarazzante non farlo. per questo ci si può tranquillamente aspettare di moltiplicare il

numero di tentativi in base al numero di pi in uso, dato che il lavoro può essere facilmente distribuito dalla funzione principale. nello specifico, assegnando a ogni unità un range fisso da considerare come primo carattere. per esempio, con due pi possiamo decidere di farne lavorare uno sulle password che iniziano con i primi 31 caratteri del nostro range (0-u) e il secondo con il rimanente (v-Z). in questo modo non è necessario condividere altri dati tra i due pi: sono liberi di svolgere i loro compiti senza perdere tempo in chiacchiere. utilizzeremo il modulo dispy per gestire tutto il parallelismo, il che richiede che tutti i nodi eseguano il programma dispynode. in questo modo possono essere chiamati all’azione con estrema con celerità. Dividiamo il lavoro in 62 parti così i lavoratori possono richiedere nuovo lavoro in base alle necessità. Questo significa che macchine più veloci (o più lente) possono essere aggiunte al cluster senza problemi, altrimenti avremmo dovuto distribuire il carico manualmente per evitare problemi di concorrenza. Facciamo un nostro ciclo esterno per il primo carattere, con al suo interno il ciclo itertools per i rimanenti.def md5cracker(inizio_parte, fine_parte,caratteri,lunghezza,thash): for j in range(inizio_parte, fine_parte): for k in itertools.product(caratteri,repeat = lunghezza - 1): tentativo = caratteri[j] + “.join(k) ghash = hashlib.md5.new(tentativo).hexdigest() if ghash == thash: return tentativo return False

Anche se potete spostarvi manualmente da un pi all’altro per chiamare questa funzione con i parametri appropriati, il lavoro di distribuzione può essere fatto in modo molto più comodo utilizzando il modulo dispy. installiamolo con:$ tar -xvzf dispy-3.15.tar.gz$ sudo pip install -e dispy-3.15

Abbiamo dato ai nostri due pi gli indirizzi 10.0.1.1 e 10.0.1.2, obiettivo facilmente raggiungibile giocando un po’ con i file di configurazione della rete o semplicemente con:$ ifconfig eth0 10.0.1.1/24

Attaccarsi a tutti i pi per configurare l’indirizzo potrebbe effettivamente portare a un sovraffollamento di monitor, tastiere e cavi, se i pi da configurare sono molti. Fortunatamente gli indirizzi non sono importanti, fintanto che tutti si trovano nella stessa sottorete dispy si occuperà di trovare da solo tutti i suoi nodi. possiamo creare un semplice lavoro clusterizzato per la nostra funzione md5cracker() utilizzando dispy in questo modo:

Python

Le architetture di calcolo possono essere suddivise in quattro classi: Single Instruction Single Data (SiSD) (istruzione singola dato singolo), Single Instruction Multiple Data (SiMD) (istruzione singola dati multipli), Multiple Instruction Single Data (MiSD) (istruzioni multiple dato singolo), Multiple Instruction Multiple Data (MiMD) (istruzioni multiple dati multipli). Questa categorizzazione nata nel 1960 è conosciuta come tassonomia di Flynn, dal suo inventore Michael J. Flynn. i sistemi multiprocessore come li conosciamo noi non esistevano all’epoca, ma le macchine erano comunque in grado di compiere operazioni parallele, in modo

molto simile all’intel SSE (Streaming SIMD Extensions) che apparve per la prima volta nei processori pentium iii. Alcune applicazioni oggi si trovano a cavallo tra più classi, ma queste ultime offrono ancora una rappresentazione abbastanza accurata della situazione. Gli attacchi di cui abbiamo parlato in questo tutorial cadono nella categoria SiMD, eseguiamo la stessa istruzione su diversi set di dati. La categoria più comunemente utilizzata al giorno d’oggi comunque è la MiMD. A un’estremità dello spettro del calcolo distribuito abbiamo un modello di memoria distribuita nel quale ogni processore ha la sua memoria

individuale. Se i dati devono essere condivisi tra i processori, deve essere invocata un’interfaccia di messaggistica. All’altra estremità troviamo il calcolo parallelo nel quale abbiamo una memoria condivisa a cui possono accedere tutti i processori. può essere basato su bus, se tutti i processori sono connessi alla stessa scheda, oppure su software, nel quale la consistenza viene mantenuta creando spazi di memoria virtuali. in entrambi i casi, contendersi il bus penalizza il tempo di accesso, in altre parole bisogna prestare attenzione alle operazioni basate sulla memoria quando si lavora in parallelo.

Tassonomia di Flynn

084_087_LXP_147_LXF188.code_pi 85 22/10/14 17:22

86 Linux pro 147

PythonPython

cluster = dispy.JobCluster(md5cracker,callback=callback)il parametro callback dice al nostro cluster di chiamare una funzione di nome callback() ogni volta che un nodo trova la password o conclude il suo lavoro. in scenari più complessi, una funzione di callback può essere utilizzata anche per mettere insieme risultati intermedi o approssimativi, ma nel nostro caso non dobbiamo preoccuparci di questo. La nostra funzione di callback deve solo controllare il risultato e se non è False terminare tutti gli altri lavori:def callback(job): if job.result: print “ottimo lavoro!”, job.result for j in jobs: if j.status in [dispy.DispyJob.Created, dispy.DispyJob.running]: cluster.cancel(j)

Dato che la funzione md5cracker() necessita dei moduli itertools e hashlib, entrambi devono essere importati all’interno della funzione. per ragioni di sincronizzazione, dispy non vi permetterà di condividere variabili interne con i lavoratori, per questo la funzione md5cracker() richiede questi parametri: caratteri (lista di caratteri), lunghezza (lunghezza della password) e thash (hash da confrontare). per finire aggiungiamo questo pezzo di codice per lanciare il tutto e mostrare alcune statistiche quando l’esecuzione di multipi.py è conclusa:if __name__ == ‘__main__’: cluster = dispy.JobCluster(md5cracker, callback=callback) jobs = [] start = 0 for j in range (npezzi):

fine = inizio + inizio_pezzo job = cluster.submit(inizio,fine,caratteri,lunghezza,target_hash_md5) job.id = j inizio = fine jobs.append(job) cluster.wait() cluster.stats()

Niente pauraEsistono moltissime alternative al modulo dispy (https://wiki.python.org/moin/ParallelProcessing), ma abbiamo scelto questo perché è molto adatto a del semplice parallelismo come nel nostro esempio. Se volete studiare la parallelizzazione dei processi utilizzando una macchina multicore, doveste guardare le librerie di multiprocessing di python, le quali permettono di gestire la condivisione di variabili con maggior semplicità e coerenza dei processi non eseguiti sulla stessa macchina. Se volete approfondire maggiormente il parallelismo, date un’occhiata a Message Parsing Interface (Mpi). John the ripper è un software open source molto popolare dedicato al cracking delle password. È disponibile anche una versione modificata dalla comunità che supporta il cracking Gpu-based, oltre che alcuni tipi aggiuntivi di hashing e di crittazione. i sorgenti per questa versione (nome in codice Jumbo) sono disponibili nel sito del progetto, http://www.openwall.com/john/. possiamo compilarli dal sorgente in pi. raspbian include di default gcc, ma avremo bisogno anche degli header libcrypto e libssl. i seguenti comandi fanno esattamente questo in raspbian, ovviamente ammesso di avere accesso alla rete internet:$ apt-get update

Altri progetti BrambleCrackare documenti Office (10 Raspberry Pi) http://www.softwareontheside.info/2013/01/my-raspberry-pi-cluster.html Questo progetto di Shane utilizza una versione patchata di John the ripper per aprire documenti protetti, siano essi Ms office, Libreoffice o pDF. Almeno fino a MS office 2007 che ha introdotto la crittografia AES con chiavi a 128-bit.

Torre di Pi (10 Raspberry Pi) http://terminus.attitude.net/raspberry-pi in questo progetto sono stati utilizzati 9 nodi pi e una scheda Cubie come controller principale per l’elaborazione Mpi. possiede un display rGB 16x2 per visualizzare le informazioni di stato. ora il progetto è stato dirottato sul Cubical Monolith a 32 nodi.

084_087_LXP_147_LXF188.code_pi 86 22/10/14 17:22

Linux pro 147 87

PythonPython

$ apt-get install libssl-devScarichiamo i sorgenti dal sito Web, scompattiamoli e iniziamo il processo di compilazione:$ tar -xvzf john-$VEr-jumbo-$rEL.tar.gz$ cd john/src$ make generic

Questo processo impiega circa mezz’ora in un normale pi. una volta concluso, possiamo utilizzare questi comandi per testare la nostra installazione:$ cd ../run$ ./john --test

Vediamo le performance dei nostri nuovi binari appena compilati. RawMD5 totalizza un punteggio di 330 mila hash al secondo sul nostro dispositivo, un risultato 50 volte migliore della nostra implementazione python. per SHA-1 (--mode=raw-sha1), John ha ottenuto un rispettabilissimo 190 mila hash al secondo. ora creiamo un file di testo bersaglio.md5 costituito da una singola riga con la nostra hash MD5 di prima, quella che inizia con 392b2. possiamo implementare il nostro set di caratteri composto soltanto da lettere e numeri utilizzando alnum.$ ./john --incremental=alnum --length=6 --format=raw-md5

bersaglio.md5Questo processo impiegherà probabilmente due giorni per completarsi su raspberry pi. ridurre questo tempo sta a voi. Comunque, la sfida è semplificata da John the ripper grazie all’opzione --node, che vi permette di implementare una sorta di parallelismo. per esempio, se vogliamo saturare il nostro switch con cinque pi possiamo aggiungere l’opzione --node n/5 al codice di prima, sostituendo a n il numero del raspberry pi su cui stiamo lanciando l’esecuzione. Questo farà sì che John

lavori soltanto sul quinto desiderato di tutti gli input, così possiamo aspettarci in modo realistico di tentare tutti le possibili combinazioni di 6 caratteri alfanumerici in circa 10 ore. possiamo generare hash MD5 con il comando md5sum. per esempio:$ echo -n “test”|md5sum098f6bcd4621d373cade4e832627b4f6 -

incollate questo risultato, senza gli spazi e il trattino alla fine (md5sum viene utilizzato solitamente per fare l’hash di file e il nome del file di solito va dopo questi caratteri, potete aggiungere |cut -d -f1 se vi dà noia) in un file test.md5. ora eseguite quanto segue per convincervi che John è realmente in grado di processare questi hash in modo corretto.$ ./John --incremental=alnum --length=4 --format=raw-md5

test.md5

Un lavoro di paroleSarebbe una grave omissione non parlare dell’intelligente lista di parole di cui è dotato John the ripper. Moltissime liste sono disponibili sul sito, e possono essere definite anche delle regole per combinarle tra loro. È possibile anche utilizzare un metodo ibrido con alcuni caratteri incrementali, per massimizzare le chance di successo. Al momento della scrittura di questo articolo il benchmark su MD5 più impressionante è di 2 miliardi di hash al secondo (con l’aiuto di 16 radeon 7550). Con tali performance, una password di otto caratteri (utilizzando soltanto i 62 caratteri con cui abbiamo lavorato fin qui) può essere scoperta in circa una settimana. Tecnologie più veloci sono sempre dietro l’angolo, e così la vecchia credenza che una password di otto caratteri sia sicura non regge più. in sostanza: regalatevi un password manager e rilassatevi! LXP

Altri progetti BrambleCluster a 40 Pi di David Guill http://likemagicappears.com/projects/raspberry-pi-cluster/L’intento di David era di creare un modello di supercomputer che funzionasse esattamente come nella realtà. Questa bestia ha 12 drive da 1 TB e 6 porte Ethernet. per fare il case è stata utilizzata una macchina a taglio laser.

Lego Supercomputer Iridis-Pi (64 Pi) dell’università del Southampton http://www.southampton.ac.uk/~sjc/raspberrypi/ il tutto è costato poco più di 3.000 euro per raggiungere i 1.14 gigaflop al secondo eseguendo il benchmark HpL. utilizza dei vecchi modelli a 256 MB quindi non ha molta memoria.

084_087_LXP_147_LXF188.code_pi 87 22/10/14 17:22

88 Linux pro 147

GimpGimp

Un plug-in per GimpEcco come usare python per aggiungere alcune caratteristiche extra al vostro programma di editing grafico preferito

Tra le caratteristiche che vi fanno gridare al miracolo, Gimp vi permette di estendere le sue funzionalità scrivendo i vostri plug-in. Se voleste essere hardcore scrivereste i plug-in in C

usando le librerie libgimp, ma potrebbe voler dire sparare alle mosche con i cannoni. Grazie al cielo esistono delle Api softcore che potete usare per scrivere il plug-in dei vostri sogni in linguaggio Script-Fu (proprio di Gimp e basato su Scheme), Tcl, perl o python. Quest’ultimo sarà usato per questo tutorial, dal momento che è probabilmente il più accessibile tra i quattro, e anche se non avete esperienza pregressa dovreste riuscire a cavarci fuori qualcosa.

Cominciarein Linux la maggior parte dei pacchetti si assicurerà che assieme a Gimp sia installato tutto quello che serve riguardo a python; i vostri amici utenti di Windows e Mac avranno i requisiti inclusi dalla versione 2.8. potete controllare che tutto sia a posto lanciando Gimp e controllando la voce Python-Fu nel menu Filtri. Se non c’è, dovete ricontrollare la vostra installazione, altrimenti continuate selezionandolo: dovrebbe aprire una simpatica console con un prompt (>>>) ansioso di ricevere i vostri comandi. Tutto quello che può fare Gimp è registrato dentro al Procedure Database (pDB). il pulsante Browse... nella finestra vi permetterà di vedere tutte le procedure, quello su cui operano e cosa restituiscono. potete accedere a ognuna di queste in python attraverso l’oggetto pdb. Come introduzione cominciate con il disegnare una semplice immagine bianca con il colore di sfondo attualmente selezionato. Ciò significa impostare un’immagine, aggiungere un livello e quindi visualizzarla:image = pdb.gimp_image_new(320,200,rGB)layer = pdb.gimp_layer_new(image,320,200,rGB,’Layer0’,100

,rGB_iMAGE)

pdb.gimp_image_insert_layer(image,layer,none,0)pdb.gimp_display_new(image)

Avete usato quattro procedure: gimp_image_new() i cui parametri specificano la larghezza, l’altezza e il tipo di immagine (rGB, GrAY o inDExED); gimp_layer_new()che lavora su un’immagine precedentemente definita e richiede larghezza, altezza e tipo oltre a un nome, all’opacità e alla modalità di combinazione; gimp_image_insert_layer() per aggiungere il livello all’immagine e gimp_display_new() per visualizzare l’immagine. Dovete aggiungere i livelli alla vostra immagine prima di fare qualcosa di notevole, dal momento che un’immagine senza livelli è un oggetto solamente concettuale. potete ottenere più informazioni nel Procedure Browser: provate a scrivere gimp-layer-new nella casella di ricerca e troverete tutti le possibili modalità di combinazione. notate che in python i trattini delle procedure sono rimpiazzati da underscore, dal momento che i trattini sono riservati per la sottrazione. La casella di ricerca si occuperà di sostituirli per voi, se doveste usarli.

Tirare una lineaCominciate con una semplice linea. per prima cosa selezionate un pennello e un colore in primo piano che risulti visibile sul vostro sfondo; quindi lanciate da console:pdb.gimp_pencil(layer,4,[80,100,240,100])

ottimo, una linea perfettamente centrata, come potreste disegnarla con lo strumento Matita. il primo parametro di gimp_pencil() specifica il livello su cui volete disegnare. La sintassi per specificare i punti è un po’ strana: per prima cosa specificate il numero di coordinate che è il doppio del numero di punti perché ogni punto ha una componente x e y; quindi specificate una lista nella forma [x1,y1,...,xn,yn]. L’esempio quindi disegna una linea da (80,100) a (240,100). Le procedure per selezionare e sistemare i colori, i pennelli e altro sono altresì nel pDB:pdb.gimp_context_set_brush(‘Cell 01’)pdb.gimp_context_set_foreground(‘#00a000’)pdb.gimp_context_set_brush_size(128)pdb.gimp_paintbrush_default(layer,2,[160,100])

Se il pennello chiamato ‘Cell 01’ è disponibile, il codice soprastante disegnerà una macchia verde nel mezzo della vostra immagine; in caso contrario verrà visualizzato un messaggio d’errore. potete avere una lista di tutti i pennelli a disposizione chiamando pdb.gimp_brushes_get_list(‘’). Lo strumento areografo è più indicato della matita per questi pennelli artistici e se date un’occhiata nel procedure browser alla funzione gimp_paintbrush vedrete che potete configurare gradienti e sfumature. per semplicità qui sono state usate le impostazioni standard. per il resto del tutorial verrà presentato un plug-in leggermente più avanzato per creare effetti bokeh nelle vostre fotografie. ‘Bokeh’ deriva da una parola giapponese che significa ‘annebbiamento’ o ‘confusione’ e in fotografia si riferisce all’effetto sfocato causato da sorgenti luminose al di fuori della profondità di campo. Spesso risulta in artefatti discoidali colorati uniformemente e sfuocati nelle alteluci dell’immagine, somiglianti ai flare delle lenti. L’effetto che ottenete in ogni caso è una caratteristica della lente e dell’apertura: a seconda

Gimp

Potete personalizzare linee e macchie a vostro gusto, anche se francamente è difficile che finisca in qualcosa di realmente utile.

088_091_LXP_147_LXF188.code_gimp 88 21/10/14 22:12

Linux pro 147 89

GimpGimp

del design potreste ottenere anche effetti poligonali o a ciambella. Questo esercizio sarà limitato all’effetto classico. il vostro plug-in permetterà all’utente di indicare le sorgenti di luce utilizzando un percorso nell’immagine, che assumerete a livello singolo. Verrà specificato il diametro del disco, il raggio di sfocatura e le correzioni di tonalità e saturazione. il risultato saranno due nuovi livelli: il superiore trasparente conterrà i ‘dischi bokeh’ e quello inferiore conterrà una copia sfocata dell’immagine. il livello originale rimarrà com’è tra questi due. Modificando le opacità di questi due nuovi livelli uscirà un piacevole effetto. per effetti bokeh più realistici, una parte dell’immagine dovrebbe rimanere a fuoco e libera da dischi, quindi potrebbe essere buono cancellare delle parti dal livello sfuocato. Ammesso che l’utente non rinomini i livelli, ulteriori attivazioni del plug-in non ne creeranno di nuovi. Ciò significa che potete applicare la funzione diverse volte con parametri diversi e avere i dischi dell’effetto nello stesso livello. Dopo la prima iterazione è consigliabile mettere il parametro sfocatura a zero, altrimenti continuereste a sfocare ulteriormente il livello già sfocato. Dopo aver inizializzato alcune variabili, cominciate a creare i due nuovi livelli. per quello sfocato, copiate l’immagine originale e aggiungete un canale di trasparenza.

il layer per il bokeh è creato come visto prima: blur_layer = pdb.gimp_layer_copy(timg.layers[0],1)pdb.gimp_image_insert_layer(timg, blur_layer, none, 0)bokeh_layer = pdb.gimp_layer_new(timg, width, height, rGBA_

iMAGE, “bokeh”, 100, norMAL_MoDE)pdb.gimp_image_insert_layer(timg, bokeh_layer, none, 0)

il prossimo passo che deve compiere lo script è di estrarre una lista di punti dal percorso scelto dall’utente. Questo non è esattamente triviale dal momento che un generico percorso può essere un oggetto complicato, con curve e cambi repentini di direzione. i dettagli sono nel box della pagina seguente ma non preoccupatevi: dovete solo capire che il ciclo for principale procederà lungo il percorso nell’ordine disegnato, estraendo le coordinate di ogni componente come variabili x e y. Estratte tutte le informazioni riguardo i punti, la vostra prossima sfida è recuperare il colore locale dell’immagine in quel punto. La funzione per farlo è gimp_image_pick_color(). Ha molte opzioni che replicano il controllo del Color Picker. in particolare quella del plug-in fa sì che il programma recuperi il colore in un raggio di 10 pixel dal punto x, y e selezioni il mediano: tale approccio è preferibile in quanto il colore di un singolo pixel potrebbe non essere indicativo di quelli che lo circondano.

Gimp

Applicare il plug-in per il bokeh ha creato un piacevole effetto bokeh nelle alte luci

088_091_LXP_147_LXF188.code_gimp 89 21/10/14 22:12

90 Linux pro 147

GimpGimp

Portatevi un secchielloper disegnare dei dischi di colore appropriato nel livello bokeh dovete cominciare, piuttosto illogicamente, con dei dischi neri. invece di usare lo strumento areografo che obbligherebbe gli utenti ad avere un determinato set di pennelli, lo disegnerete riempiendo con il secchiello una selezione circolare. ottenete la selezione con:pdb.gimp_image_select_ellipse(timg, CHAnnEL_op_rEpLACE, x -

raggio, y - raggio, diametro, diametro)Ci sono diverse costanti che fanno riferimento a varie modalità di Gimp: sono facilmente identificabili essendo in maiuscolo. il secondo argomento qui indica il numero 2, ma anche il fatto che la selezione attuale dev’essere sostituita con quella specificata. Le dimensioni sono specificate tramite l’angolo in alto a sinistra del rettangolo che racchiude l’ellisse e la sua larghezza. Ampliate tale selezione di due pixel, giusto per ammortizzare il bordo, e quindi impostate il colore a nero. Quindi la riempite con il secchiello in modalità Behind così da non interferire con altri dischi dello stesso livello:pdb.gimp_selection_feather(timg, 2)pdb.gimp_context_set_foreground(‘#000000’)

pdb.gimp_edit_bucket_fill_full(bokeh_layer, 0,BEHinD_MoDE,100,0,False,True,0,0,0) ora la ragione per l’uso del nero: disegnerete i dischi in modalità colore additiva. Ciò significa che le regioni dove i dischi si sovrappongono diventeranno più chiare, in maniera vagamente analoga a quanto succede in fotografia. il problema è che la modalità additiva non fa nulla sulla trasparenza, quindi per prima cosa la annerite, poi il nero viene tolto dal nuovo disco additivo:pdb.gimp_context_set_foreground(colore)pdb.gimp_edit_bucket_fill_full(bokeh_layer, 0,ADDiTion_

MoDE,100,0,False,True,0,0,0)una volta disegnati tutti i dischi in questo modo, applicate una sfocatura gaussiana (se impostata) nel livello copiato. parte dell’immagine deve restare a fuoco: potete lavorare su questo livello in seguito per renderlo meno opaco nelle regioni più di interesse. prima di effettuare il riempimento dovete togliere la selezione, altrimenti sfocherete solamente l’ultimo disco disegnato:if blur > 0: pdb.plug_in_gauss_iir2(timg, blur_layer, blur, blur)

i percorsi (path) sono registrati in oggetti chiamati vector. più specificamente, l’oggetto contiene una serie di stroke che descrivono ognuno una sezione del percorso. Assumendo un percorso semplice senza curve otterrete un singolo stroke da cui estrapolare i punti desiderati. nel codice si fa riferimento a questo stroke come gpoints, che è in realtà una tupla con una lista di punti come terzo elemento. Dal momento che le liste in python partono da 0, la lista dei punti è in gpoints__[2]. Tale lista prende la forma di [x0,y0,x0,y0,x1,y1,x1,y1x,...].

ogni punto viene contato due volte perché in altre impostazioni la lista deve registrare le informazioni di curvatura. per evitare ripetizioni, utilizzate il parametro “step” della funzione range() per incrementare di 4 ogni iterazione, in modo da ottenere le x in posizione 0, 4, 8 e le y in posizione 1, 5, 9. La lunghezza della lista di punti vi viene notificata dal secondo elemento di gpoints:for j in range(0, gpoints[1],4):

Vedrete alcuni riferimenti alle variabili timg e tdraw: rappresentano l’immagine e il layer

attivi (più correttamente l’immagine e il drawable) al momento della chiamata di funzione. Come potete immaginare sono particolarmente comodi perché la maggioranza degli strumenti richiedono almeno un’immagine e un layer per operare. Comodi al punto tale che quando registrate lo script in Gimp non dovete nemmeno menzionarli, perché viene dato per scontato che vogliate passarli alla vostra funzione. i layer e i canali costituiscono la classe chiamata drawable: viene garantita l’astrazione dal momento che quasi tutto può essere applicato in egual maniera a entrambi.

Percorsi, vettori, stroke, punti, immagini e drawables

Tipper molti, molti altri plug-in fatti in casa, date un occhio al Gimp Plugin Registry all’indirizzo http://registry.gimp.org.

Ecco i vostri dischi. Se vi sentite

audaci potete aggiungere

fusioni e gradienti,

sebbene le tinte unite funzionino altrettanto bene

088_091_LXP_147_LXF188.code_gimp 90 21/10/14 22:12

Linux pro 147 91

GimpGimp

Bello e sfocatoVi manca da correggere tonalità e saturazione e impostare il livello bokeh in modalità Soft-Light, così da illuminare i livelli inferiori attraverso i dischi. E giusto nel caso sia rimasto qualche nero, userete il plugin Color-To-Alpha per toglierlo definitivamente:pdb.gimp_hue_saturation(bokeh_layer, 0, 0, lightness, saturation)pdb.gimp_layer_set_mode(bokeh_layer, SoFTLiGHT_ MoDE)pdb.plug_in_colortoalpha(timg, bokeh_layer, ‘#000000’)

Ecco un veloce riassunto dello script. Vedrete dal codice sul disco che ci sono altre azioni da fare, per esempio raggruppare tutta la serie di operazioni in una singola azione annullabile, assieme a ripristinare qualsiasi impostazione modificata per gli strumenti utilizzati dallo script. È sempre buona norma pulire tutto e lasciare le cose

come si sono trovate. nella funzione register() impostate il percorso di menu a <Images>/Filters/My Filters/PyBokeh... così che se viene correttamente registrato avrete un menu My Filters nel menu Filtri. potete aggiungere qui altri script così da evitare di popolare ulteriormente il menu già affollato. Le immagini di esempio vi mostrano alcuni risultati dall’applicazione di pyBokeh. i critici potrebbero sollevare noiose obiezioni sull’utilità di questo script, ed effettivamente tutto quello che fa è replicabile manualmente, anche in modo migliore. Questo è (almeno fino a un certo livello) vero per ogni script di Gimp. Le operazioni manuali sono laboriose e sensibili a errori: dovete annotarvi le coordinate e il colore del centro di ogni disco ed essere molto abili nella sovraimpressione dei dischi se volete mantenere l’additività del colore. LXP

per far sì che il vostro plug-in appaia nei menu di Gimp è necessario definirlo come funzione python e usare la funzione register(). La maniera più pulita per farlo è salvare tutto il codice in uno script python scritto a hoc. La forma generale di una cosa simile è:#! /usr/bin/env pythonfrom gimpfu import *def myplugin(params): # il codice va quiregister( proc_name, # e.g. “python_fu_linesplodge” blurb, #.“Disegna una linea e una macchia help, author, copyright, date, menupath, imagetypes,

params, results, function) # “myplugin”main()

il parametro proc_name specifica come il vostro plug-in verrà chiamato nel pDB; python_fu è il prefisso comune in modo che tutti i plugin python abbiano il proprio ramo nella tassonomia. il parametro menupath specifica quale tipo di plug-in state registrando e dove apparirà nel menu di Gimp: nel vostro caso <Image>/Filters/Artistic/LineSplodge... dovrebbe essere sufficiente. imagetypes specifica su quale tipo di immagine lavora il plug-in, come “rGB*,GrAY*” o semplicemente “” se non opera su un tipo definito, come nell’esempio. La lista params definisce

l’input del vostro plug-in; potete usare tipi particolari di python-Fu come PF_COLOR e PF_SPINNER per ottenere interfacce carine con le quali inserirli. La lista results descrive l’output del plug-in, se ce n’è uno. nel vostro caso (PF_IMAGE, image, “LSImage”) dovrebbe essere sufficiente. infine, function è il nome python della funzione come appare nel codice. per assicurarvi che Gimp trovi e registri il vostro plug-in al prossimo lancio, salvate il file come nomedelplugin.py nella cartella dei plug-in: ~/.gimp-2.8/plug-ins in Linux, rendendolo eseguibile con chmod +x nomedelplugin.py) oppure %USERPROFILE%\.gimp-2.8\plug-ins per gli utenti Windows, sostituendo adeguatamente il numero di versione.

Registrare il vostro plug-in

Una volta applicato il filtro, le cose potrebbero diventare un po’ sfuocate. Modificando l’opacità del layer vi riporterà qualche dettaglio in più

088_091_LXP_147_LXF188.code_gimp 91 21/10/14 22:12

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 147

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_147_lug 92 21/10/14 22:12

Linux pro 147 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.itLinox novarawww.linoxnovara.orgSLIP - Pinerolohttp://pinerolo.linux.it/ValSusinux - Val Susa e Val Sangonewww.valsusinux.it

PuGLIabriLuG - brindisiwww.brilug.itCapitanLuG - Capitanatawww.capitanlug.itLaTLuG - Latiano Linux user Groupwww.latlug.orgLuGargano

www.lugargano.itLuGbari - bari e provinciawww.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 disponibile

PLuG - Prato e provinciawww.prato.linux.itPtLug - Pistoia e provinciawww.ptlug.orgSLuG - Siena e provinciawww.siena.linux.it

TrenTIno aLTo adIGeLinuxTrent - Trentohttp://linuxtrent.it Lugbz - bolzanowww.lugbz.org

uMbrIaorvietoLuGwww.orvietolug.itLuG Perugiawww.perugiagnulug.orgTerniLuG www.ternignulug.org

VaLLe d’aoSTaSLaG - aostawww.slag.it

VeneTo0421ug - Provincia di Venezia www.0421ug.orgbLuG - bellunohttp://belluno.linux.itFaber Libertatis - Padovahttp://faberlibertatis.orgGrappaLuG - bassano del Grappahttp://grappalug.homelinux.net/ILC - Informatica Libera Cittadellese - FSuGhttp://ilc.pd.itLegnagoLuGnon disponibileLinux Ludus - Villafranca (Vr)www.linuxludus.itLuganegawww.luganega.orgLuGSF - San Fidenzionon disponibileLuG Vicenzawww.vicenza.linux.itLugVr - Veronawww.verona.linux.itMontelLuG - Montebellunawww.montellug.itFSuG Padovawww.fsugpadova.orgroLuG - rovigohttp://rovigo.linux.itTVLuG - Trevisowww.tvlug.itVeLug - Veneziawww.velug.itaViLuG Schiohttp://www.avilug.it/doku.php

nazIonaLIFSuGitaliawww.fsugitalia.orgGentoo Channel Italiawww.gechi.itMajaGLuGwww.majaglug.netSkyLuGhttp://tech.groups.yahoo.com/group/skylug/

L’eco dei LUG

092_093_LXP_147_lug 93 21/10/14 22:12

94 Linux pro 147

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.

AVLinux 6.0.3Distro Desktop

Nel mondo Linux ci sono molte distribuzioni che rappresentano un punto di riferimento nell’uso multimediale. Tra le tante, questo mese abbiamo deciso di proporvi AVLinux 6.0.3 che, grazie ai

tanti strumenti messi a disposizione, permette di trasformare un pC obsoleto in una workstation dedicata al multimedia. I primi passiAVLinux è una distribuzione basata su Debian che può essere installata sia su disco fisso sia utilizzata in versione Live da CD o chiave uSB (la iSo messa a disposizione sul sito ufficiale è ibrida). La procedura d’installazione è sensibilmente diversa rispetto a quelle a cui ci hanno abituato le debian-based. infatti vengono abbandonati i classici passaggi che portano ad avere la distribuzione già pronta sul disco, richiedendo invece un vostro intervento più mirato. primo tra tutti quello per gestire il partizionamento del disco che, contrariamente a molte distro simili, non avviene in modalità automatica. AVLinux, infatti, si serve di Gparted per gestire in maniera corretta lo spazio sull’hard disk. potete decidere di giocare d’anticipo e attivare lo strumento direttamente dalla versione Live. in alternativa ci arrivate dal processo d’installazione che chiederà di creare una partizione per il sistema e una di swap. una volta completata questa operazione, il resto è immediato. inserite le credenziali di root, quelle di un eventuale altro utente e in pochi minuti avete il sistema pronto per essere utilizzato. Se volete provare AVLinux su una macchina virtuale come VirtualBox, ricordate di abilitare il pAE. Senza di esso il sistema si bloccherà subito dopo il menu di Grub.

Come si presentail desktop ricorda abbastanza da vicino unity di ubuntu. La barra contenente i collegamenti ai programmi più interessanti si trova però sulla destra anziché sulla sinistra. nella parte superiore, invece, è presente la barra degli strumenti che porta ai menu principali e permette di gestire più ambienti desktop, nonché offre i collegamenti rapidi alle impostazioni di rete e a quelle di sistema. AVLinux si concentra sul multimedia a 360 gradi, guardando tanto al video quanto all’audio e alla grafica. per ognuno di questi aspetti, il menu principale mette a disposizione diverse sotto sezioni titolate Video/Utility Video, Audio/Utility Audio e Grafica, all’interno delle quali trovate i collegamenti ai software dedicati.

Audio, video e graficaAVLinux difficilmente vi richiederà di fare una visita al Software Center, in quanto ha una quantità di programmi preinstallati davvero impressionante. partendo dall’audio, solo per citare i più conosciuti, abbiamo Amsynth, Ardour2, Ardour3, Asunder CD ripper, Audacity, Brasero, Clementine, FeSTige, guitarix e molti altri. Come ogni buona distro basata sul multimedia che prenda in considerazione seriamente l’audio, troviamo integrato il supporto per JACK e per GMiDi Monitor. potete così gestire a meraviglia anche strumenti reali come chitarre elettriche o pianole da collegare al computer. proprio a livello di scheda audio, ci sono poi una serie di utility molto interessanti, capaci di farvi prendere pieno controllo delle specifiche sonore del pC. oltre a vari mixer, come Audio Mixer, Echomixer e GnoME ALSA Mixer, trovate anche Mudita24 control. Questo tool permette di controllare diversi parametri hardware della scheda audio, come il mixaggio digitale, il gain dei canali e via dicendo. per quanto riguarda il video, invece, citiamo Blender 2.69 (sebbene sia un programma per la grafica 3D, in questo caso viene considerato come un’applicazione per generare filmati animati), Chees, Cinelerra, DeVeDe, FFMultiplex, HandBrake, VLC Media player e altro. per la grafica, infine, troviamo Darktablet, dispcalGui, GiMp, gThumb, inkscape, Libreoffice 4.2 Draw, Scribus e Synfig Studio.

Cosa c’è nel DVDDISTRIBUZIONI

AVLinux 6.0.3 Chakra 2014. 09 ArchLinux 2014.10.01 GhostBSD 4.0 Karine netrunner 14 Frontier

IL CONFRONTO FreeSpeech r120 palaver 1 Julius 4.3.1 Speech App 0.7 Simon 0.4.1

DA NON PERDERE Midnight Commander 4.8 python 2.4.2rc1 Git 2.1.2 Qtractor 0.6.3 Shellpic 1.6 Stellarium 0.13.0 pioneer 2040930 Assassin oTu 0.5rc1

CODICE Email di massa openStack

094_095_LXP_147_guidadvd 94 21/10/14 22:12

Linux pro 147 95

Guida Software

1 Sentirsi a casa propriaChiaro, leggero e funzionale. AVLinux lavora senza problemi anche su macchine piuttosto obsolete, così da trasformarle in server multimediali in pochi e semplici passaggi. L’interfaccia grafica sembra derivare da unity di ubuntu e offre un approccio immediato fin dall’inizio. Facendo click su Main Menu, avete la panoramica di tutti i programmi integrati.

3 Editing video con KDEper chi ama il montaggio video c’è Kdenelive, un potente programma per l’editing multimediale multi-traccia. Consente di montare i filmati in modo semplice e veloce, ma senza sacrificare le funzionalità. Basta importare i video nella timeline presente sulla parte inferiore dell’interfaccia e gestire le varie funzioni presenti.

5 Tutto per la masterizzazionenaturalmente, in una distro multimediale in piena regola non possono mancare gli strumenti per la masterizzazione. in questo caso troviamo DeVeDe, un programma semplice e veloce da usare per memorizzare qualsiasi video, documento o spezzone musicale su CD e DVD. possiamo anche creare Super VideoCD e dischi per Divx e MpEG-4.

2 Musicisti si diventaper gli amanti della musica dal vivo, vale la pena dare un’occhiata a Rosegarden, un sequencer con tanto di sistema per la notazione musicale. Se non sapete da dove partire per utilizzarlo, date un’occhiata alla documentazione presente su www.rosegardenmusic.com. Con questo software potete creare i vostri brani e annotarli poi su uno spartito.

4 Artisti 3Dper chi ha un minimo di esperienza nella produzione di immagini 3D, il nome Blender suonerà sicuramente famigliare. in AVLinux è presente la versione 2.69. uno degli aspetti più interessanti di questa applicazione è la sua versatilità; infatti, oltre a creare personaggi e ambientazioni altamente realistiche, consente di realizzare splendidi filmati di animazione.

6 Auto recorderAVLinux è una distro perfetta anche per realizzare tutorial video. infatti integra una serie di strumenti per la registrazione delle attività sul desktop. un esempio è recordMyDesktop che trovate nella sezione Video. potete scegliere la qualità video e audio della registrazione e selezionare l’eventuale finestra da cui riprendere la cattura.

Caratteristiche Cosa ci offre AVLinux

094_095_LXP_147_guidadvd 95 21/10/14 22:12

Mensile - Novembre 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.

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]

Foreign rights: Gabriella Re - [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.

Guida LinuxEbbene sì, è arrivata l’era delle macchine con sistema operativo Open Source! Andiamo allora alla scoperta delle automobili su cui girano distro Linux

Messaggi cifratiRipercorriamo la storia della crittazione per capire come funzionano i sistemi più moderni di cifratura delle informazioni: dalle origini, millenni fa, a oggi, ecco come proteggiamo i nostri dati...

Nostalgia da giocoCresciuti a pane e Spectrum? Veri appassionati di Super NES e dintorni? Linux ha un emulatore per il nostalgico che c’è in tutti noi: giochiamo subito ai classici dell’epoca che fu!

E inoltre:

LINUXPro

In edicola il 20 dicembre H a i u n a r g o m e n t o d a

IN FUGA DA WINDOWSAvete ancora un vecchio computer su cui ostinatamente rimane installato Windows? Conoscete amici ancora schiavi del sistema operativo Microsoft? Ecco come scappare

da qualsiasi versione di Windows senza perdere neanche un dato...

Nel prossimo NumeroIn edicola il 12 dicembre

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_147_prossimamente 1 24/10/14 17:40

IN EDICOLA DA OTTOBRESPECIALE MAC MAGAZINE PRENOTA QUI

LA TUA COPIA

www.spreastore.it/iPhone6

min_i-phone6_207X285.indd 1 23/10/14 09.33

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