Full Circle Magazine 23
-
Upload
davide-riboli -
Category
Documents
-
view
220 -
download
0
Transcript of Full Circle Magazine 23
-
8/4/2019 Full Circle Magazine 23
1/38
1
STEVE STALCUP
full circlePROGRAMMARE IN C - PARTE 7SVILUPPO WEB - PARTE 4DIFFONDERE UBUNTU - PARTE 2
RISOLUZIONE DEI PROBLEMI
USANDO LA RIGA DI COMANDO COME DIVENTARE UNA DIVINIT GEEK
LA RIVISTA INDIPENDENTE PER LA COMUN IT UBUNTU
RISOLVERE I PROBLEMI
-
8/4/2019 Full Circle Magazine 23
2/38
2
p.04
Risoluzione dei problemi p.06
Programmare in C - Parte 7 p.08Sviluppo Web - Parte 4 p.15Diffondi Ubuntu - Parte 2 p.19
Diventare un utilizzatore di Ubuntu p.22
Come diventare una divinit geek p.23
Steve Stalcup p.24
p.26
p.28
p.30
p.32
p.33
p.35
p.37
p. 38
PP..3355
P.15P.08
P.30P.19 PP..2288
full circlew w w . f u l l c i r c l e m a g a z i n e . o r g
PP..2244P.23
Tutti i testi e le immagini contenuti in questa rivista sono stati rilasciati sotto la licenza Creative Commons Attribuzione - Noncommerciale - Condividi allo stesso modo 3.0. Significa che siete liberi di adattare, copiare, distribuire ed inviare gli articoli soloalle seguenti condizioni: la paternit dell'opera deve essere attribuita in qualsiasi modo (con almeno un nome, un'email o un
URL) all'autore originale e al nome di questa rivista (full circle) e all'URL www.fullcirclemagazine.org (ma non attribuire il/gli articolo/i in alcun modoche lasci intendere che gli autori e la rivista abbiano esplicitamente autorizzato voi o l'uso che fate dell'opera). Se alterate, trasformate, oaggiungete informazioni all'opera, dovete distribuire il lavoro risultante con la stessa licenza o una simile o compatibile.
http://www.fullcirclemagazine.org/http://creativecommons.org/licenses/by-sa/3.0/http://www.fullcirclemagazine.org/ -
8/4/2019 Full Circle Magazine 23
3/38
3
Benvenuti ad un altro numero di Full Circle Magazine.
vero quando si dice che il tempo vola quando ci si diverte. Ilprossimo mese sar il secondo anniversario di FCM. Full CircleMagazine compir due anni il prossimo aprile e, nella
celebrazione di questo (quasi) monumentale evento, FCM 24 sar unsuper-numero con tantissime sorprese.
Cosa desideriamo per il nostro compleanno? Sono contento che loabbiate chiesto. Saremmo felici di vedere FCM schiaffata nella primapagina di SlashDot e, se possibile, in quella di Digg. Non solo ci farfelice Robert, essere su ShashDot lo scopo della sua vita, ma farconoscere FCM a tanti nuovi lettori. Un numero di 25.000 lettori ognimese eccezionale, ma vogliamo di pi. Lo vogliamo. Sonosicuro che ci sono ancora tante persone che non hanno mai sentitoparlare di Full Circle Magazine e non possiamo permetterlo.
Gustatevi il numero di questo mese, tenetevi pronti per il numero24 di FCM di aprile e buona fortuna per il concorso di questo mese.Ah, e continuate a mandare le vostre email!
Caporedattore, Full Circle [email protected]
EEDDIITTOORRIIAALLEE
Questa rivista stata creata utilizzando:
Ubuntu un sistema operativocompleto, perfetto per i computerportatili, i desktop ed i server. Che siaper la casa, per la scuola o per il lavoro,Ubuntu contiene tutte le applicazioni dicui avrete bisogno, compresil'elaboratore di testi, la posta elettronicae il browser web.
Non dovete pagare alcuna licenzad'uso. Potete scaricare, utilizzare econdividere Ubuntu con i vostri amici, la
famiglia, la scuola o per lavoro del tuttogratuitamente.
Una volta installato, il sistema prontoper l'uso con un insieme completo diapplicazioni per la produttivit, perl'internet, per il disegno, per la grafica eper i giochi.
http://url.fullcirclemagazine.org/7e8944http://creativecommons.org/http://www.openoffice.org/http://www.gimp.org/http://www.scribus.net/mailto:[email protected] -
8/4/2019 Full Circle Magazine 23
4/38
4
NNOOTTIIZZIIEE
Peccato se non avete vinto questomese, ma nel numero prossimorecensiremo eavremo copie da donare!
Sondaggio sullo sviluppo dei
giochi
Il forum degli sviluppatori dei giochiliberi sta discutendo sulle possibilistrade per fondare un progetto digiochi open source e ha posto le
argomentazioni in un sondaggio incui chiede alla gente cosa nepensa. Se volete partecipare alsondaggio, fate clic sul link inbasso: stanno cercando diraccogliere quanti pi partecipantipossibili.
http://tinyurl.com/opensurvey
La Polizia francese: Abbiamo rispar-miato milioni passando a Ubuntu
La Gendarmeria Nazionale di Franciaafferma di aver risparmiato milioniabbandonando Windows nella sua
infrastruttura di software desktop esostituendolo con Ubuntu.
Ha iniziato la sua transizione al softwarea codice aperto nel 2005 quando sostituMicrosoft Office con OpenOffice.org.Gradualmente ha adottato altreapplicazioni software, incluse Firefox eThunderbird. Dopo il lancio di WindowsVista nel 2006, prese la decisione di
eliminare gradualmente Windows e dipassare in varie tappe a Ubuntu.
Al momento attuale della migrazione haadottato Ubuntu su 5.000 stazioni dilavoro. Dietro il successo di questamigrazione, ha in piano il passaggio aUbuntu di 15.000 postazioni entro la finedell'anno. L'obiettivo di portare l'interaorganizzazione, e tutte le sue 90.000
postazioni, ad avere Ubuntu entro il2015.
Un rapporto pubblicato dall'Osservatoriodella Commissione Europea per l'OpenSource fornisce alcuni particolari di unarecente presentazione tenuta dalTenente Colonnello della Gendarmeria
Xavier Guimard e afferma che laGendarmeria stata capace diridurre il suo budget annuale per l'ITdel 70 percento senza ridurne lecapacit operative.
http://arstechnica.com
Rilasciata Ubuntu 9.04 Beta
Sono staterilasciate inversionebeta le dueversioni,server edesktop, di
Ubuntu 9.04 (Jaunty Jackalope). Lenuove funzioni sono molte, alcunedelle quali provenienti da upstream.
Una nuova versione di GNOME, unanuova versione di X.org e un nuovosistema di notifiche: ci sono tutte.
Visto che Ubuntu 9.04 rilasciatocon GNOME 2.26, esso ne rileva lenuove funzioni, come lo strumentodi masterizzazione Brasero, unmiglior supporto per il doppiomonitor con un nuovo pannello di
configurazione, una miglioreintegrazione di PulseAudio e cosvia. Questa beta di Ubuntu 9.04arriva anche con X.org 1.6, mentremolte altre schede video ora usano idriver open.
http://www.osnews.com
http://www.osnews.com/http://arstechnica.com/http://tinyurl.com/opensurvey -
8/4/2019 Full Circle Magazine 23
5/38
5
Rilasciato GNOME 2.26
Il team di GNOME ha rilasciato GNOME2.26, l'ultima versione nel ramo disviluppo 2.x. Come si sa, GNOME unambiente desktop open source multi-
piattaforma. La versione 2.26 continua lapolitica di GNOME degli aggiornamentiincrementali su una base stabile e, cometale, arriva con un carico di nuovefunzioni.
GNOME 2.26 include lo strumento dimasterizzazione CD/DVD Brasero comeapplicazione standard dimasterizzazione. Anche se GNOME gi
aveva funzioni di masterizzazione,Brasero ne introduce di nuove in GNOMEcome l'anteprima audio di una traccia, ladivisione delle tracce, la normalizzazionedel volume, il supporto completo allamultisessione, il controllo dell'integrit,un editor di copertine e il supporto a
molteplici backend dimasterizzazione. Si noti che ilmetodo precedente dimasterizzazione fa ancora parte diGNOME.
Il lavoro sulla suite di posta e
groupware di GNOME, Evolution, si concentrato sulla migrazione degliutenti da Windows. Evolution orasupporta l'importazione dei file .pstdi Outlook, cos come il protocolloMAPI di Microsoft Exchange. Tuttoquesto rende GNOME ancora piadatto al lavoro con i serverExchange.
Ci sono anche alcuni miglioramentisul lato multimediale, come il pluginper lo scaricamento automatico deisottotitoli nel Media Player. C'anche una nuova applet per ilcontrollo del volume che fa pienouso delle funzioni audio avanzate diPulseAudio. Il vecchio mixer diGstreamer ancora disponibile per
coloro che non utilizzano PulseAudio.Ulteriori funzioni, tra le altre,includono la video chat in Empathye un miglior supporto al multimonitor e ai lettori di improntedigitali.
: http://www.osnews.com
Canonical lancia il Corso diFormazione per Ubuntu Server
Con l'espansione della sua serie diformazione su Ubuntu, Canonical stapensando di dare vita a un corso diformazione per Ubuntu Server entrola fine dell'anno. In un articolo delsuo blog Canonical, finanziatrice diLinux Ubuntu, ha scritto che il nuovocorso progettato in risposta allerichieste sia degli studenti che dei
partner.
Scrive Canonical che "UtilizzareUbuntu in ambiente d'impresa" sarun corso di cinque giorni pensato peramministratori di sistema di livellomedio-avanzato che lavorano inorganizzazioni che stanno pensandodi utilizzare, o che gi utilizzano,Ubuntu desktop e server in ufficio.
"I partecipanti acquisiranno lecompetenze necessarie per
installare, configurare e mantenereUbuntu Server Edition all'interno diuna infrastruttura d'impresa".
: http://www.tectonic.co.za
NNOOTTIIZZIIEE
http://www.tectonic.co.za/http://www.osnews.com/ -
8/4/2019 Full Circle Magazine 23
6/38
6
la chiavetta in una nuova portaUSB o controllare l'output di
sudo fdisk -l
lsusb
per vedere se mostrano qualcheindicazione sul riconoscimentodella vostra memoria USB. Se ildispositivo viene riconosciuto dalsistema potete, per un messaggiod'errore pi dettagliato, montare ildispositivo USB manualmente evedere perch fallisce.
I comandi e le soluzioniprecedenti si possono applicare aquasi tutte le problematiche chepotrete affrontare se avete leconoscenze elementari di doveguardare. Il prossimosuggerimento, comunque, per itempi lenti di avvio e per vederecosa accade esattamente quando
avviate il computer, nel caso in cuiqualcosa si stia bloccandocausando una lunga attesa.
Questo viene fatto con unprogramma chiamato boot chartche presente nei repositoryUbuntu. Potete installarlo
oppure, se capite l'errore, utilizzare leinformazioni per trovare cosa necessario fare per risolvere ilproblema.
Un problema pi difficile da risolvere, per esempio, se una chiavetta USBnon viene riconosciuta da Nautilusquando la inserite. Il primo comando dautilizzare :
dmesg|tail
Osservate se l'output del comandocontiene qualcosa che si riferisceall'inserimento della chiavetta USB,oppure qualsiasi cosa correlata alvostro problema. Se non dovesseapparire nell'output, potete provareanche ad estendere la quantit dimessaggi visualizzati aggiungendol'argomento -n in coda al comando ed il
numero di righe che intendetevisualizzare. Quindi, per vedere 14linee di messaggi diventer:
dmesg|tail -n 14
Altrimenti potete togliere e reinserire
CCOOMMAANNDDAA EE CCOONNQQUUIISSTTAAScritto da Lucas Westermann
H
o notato che nelle ultimesettimane sono stati scritti
un bel po' di messaggi neiforum di Ubuntu riguardanti larisoluzione di possibili errori.Pertanto, ho deciso che tratteralcune cose basilari che faccioquando sono alla ricerca di unproblema, cos da poter cercare conGoogle una soluzione (a meno chenon riesca a correggerlo da solo).Per conoscenza generale, i file di log
sono memorizzati in /var/log/ edesistono log di sistema (perqualsiasi cosa) e una collezione dilog per applicazioni e processi.
La prima cosa che deve esserefatta se un'applicazione genera unerrore all'avvio (ad es. Firefox siblocca e genera un errore dopoaverlo lanciato) lanciare
l'applicazione dal terminale, in modoche ogni eventuale errore vengavisualizzato nel terminale. Se questovi restituisce un messaggio dierrore, la migliore soluzione quelladi copiare ed incollare la sintesidell'errore in Google per una ricerca,
-
8/4/2019 Full Circle Magazine 23
7/38
7
scrivendo:
sudo apt-get install bootchart
Una volta installato, non dovretefare altro che riavviare il computer equindi potrete vedere il grafico
risultante in eye of gnome (ilvisualizzatore di immaginipredefinito), navigando nella cartella/var/log/bootchart/ ed aprendol'immagine corretta (sono nominatecon la data).
Ancora, i problemi hardwarepossono essere verificati con ilprogramma lshw che elenca le
informazioni sull'hardware. Il modopi utile per fare ci avviarlo con ilparametro -C e la sezione (display,network, ecc.). Quindi, ad esempio,problematiche connesse alla retesenza fili verranno verificate con:
sudo lshw -C Network
Questo comando mostra i dettaglidelle periferiche di rete (con e senzafili) ed elenca tutte le informazionipossibili, dalle capacit ai driver ecos via. La cosa pi importante probabilmente verificare che non siadisabilitata e che il driver siaelencato (sar indicato nell'ultima
riga della sezione del dispositivo eindicato con "driver=[nomedeldriver]").
Un'ultima nota, se incappate inqualche errore e non siete in grado dirisolverlo o correggerlo, inserite piinformazioni inerenti possibili nelle
vostre richieste. Troppe informazionisono meglio di troppo poche. Adesempio, se state lavorando ad unproblema di connessione senza fili, o aduna interfaccia wireless nonriconosciuta, indicate l'output dicomandi come ifconfig, iwconfig, lshw -C Network; se si tratta di una perifericawireless USB, allora anche l'output di
lsusb, se PCI allora lspci, ecc. Questoaiuta perch chiunque decida diaiutarvi non dovr chiedervi ulterioriinformazioni se voi indicherete tutto ilnecessario nel primo messaggio edogni risposta successiva potrebbeessere in grado di aiutarvi senza uncontinuo ribattere, che a volte pudurare un giorno o due (a seconda delfusorario e dell'ora della vostra
richiesta). Semplicemente tenete amente che pi informazioni vengonofornite, pi informazioni avr adisposizione qualcuno che dovrlavorare per risolvere un problema chenon pu vedere n risolverefisicamente.
ha imparato tuttoquello che sadanneggiando
ripetutamente il suo sistema, nonavendo nessuna alternativa haquindi dovuto imparare comeripararlo. Quando trova deltempo, scrive anche un blog suhttp://lswest-ubuntu.blogspot.com.
Questo articolo stato creatoper essere una guida utile neldare alle persone un punto dipartenza quando tentano dirisolvere autonomamente deiproblemi o per aumentare le
possibilit di ottenere supportoquando necessario chiederne.Non certamente esaustivo, n icomandi indicati sono statispiegati interamente. Ciascuncomando pu essere studiato nellepagine del manuale (utilizzando ilcomando "man" illustrato in unarticolo precedente di C&C) e l'usostesso dei comandi vi aiuter
molto nel loro apprendimento.
http://www.troubleshooters.com/tpromag/200007/200007.htm
http://lswest-ubuntu.blogspot.com/http://www.troubleshooters.com/tpromag/200007/200007.htm -
8/4/2019 Full Circle Magazine 23
8/388
HHOOWW--TTOOScritto da Elie De Brauwer PPRROOGGRRAAMMMMAARREE IINN CC -- PPAARRTTEE 77
Nella sesta parte di questaserie, abbiamo mostratoalcuni metodi non-intrusivi peresaminare le applicazioni. In questoarticolo presenteremo alcuni
strumenti che ci permetteranno discavare pi a fondo, di effettuareanalisi post-mortem e di esaminare ilfunzionamento interno diun'applicazione. Per quantostrace/ltrace/valgrind siano deglistrumenti molto utili, mostranosoltanto in parte ci che realmente
succede; strace, ad esempio, mostra solole chiamate di sistema mentre valgrindmostra solo cosa succede quando viene
(de)allocata la memoria. Lo strumento dicui parleremo in questo articolo sichiama gdb (Il debugger GNU), unostrumento per il quale non esistono limiti:se c' qualcosa relativo ad unaapplicazione che volete esaminare, GDB lo strumento per farlo. In una normalesistema Ubuntu, gdb pu essereinstallato con il comando:
sudo apt-get install gdb
Tutti gli IDE dei sistemi Linux chepermettano il debugging normalmenteutilizzano la modalit testuale di gdbcome backend. Focalizzeremo la nostraattenzione sull'uso di gdb da riga dicomando ma sappiate che, quando ildebugging comincia a diventare
particolarmente complicato, pu essereutile avere una visualizzazione graficadella situazione. Uno dei pi vecchifrontend grafici per gdb (DataDisplay Debugger) e pu essereinstallato con il comando:
sudo apt-get install ddd
Qui sopra c' un'immagine diddd all'opera. composto da trelarghi pannelli. In alto si pu vedereil pannello dei dati dove vengonomostrate le variabili e dove possibile navigare nel lorocontenuto. Nel centro si pu vedereil pannello del sorgente dove
mostrato il codice sorgente: qui possibile inserire i breakpoint. Ilpannello alla base permette divisualizzare le interazioni con gdb.Qui possono essere scritti i comandigdb che possono essere lanciati, inalternativa, facendo clic sui relativipulsanti.
FCM nn. 17-22 - Program. in C - Parti 1-6
Sviluppo
-
8/4/2019 Full Circle Magazine 23
9/389
L'esempio di questo articolo sichiama ifstat. Esiste giun'applicazione ifstat su Ubuntu maquesta, che funziona in modo simile, pi semplice. L'applicazione presentata nel Listato 1 e nel Listato2. L'obiettivo dell'applicazione dimostrare, ogni 2 secondi, gli indici ditraffico di una data interfaccia di rete., fondamentalmente, un loop while(righe 29-49) che legge /proc/dev/nete stampa la velocit in ingresso e inuscita di una determinata interfacciadi rete sia in kilobytes al secondo chein pacchetti al secondo. La stessafunzione main (righe 51-60)
piuttosto semplice. Controlla che cisia un parametro passato dalla riga dicomando. Questo parametro sar ilnome dell'interfaccia che l'utentevuole controllare. Se nessunparametro, o troppi parametri,vengono passati, viene mostrato unmessaggio che spiega all'utentecome utilizzare l'applicazione. Finoraabbiamo visto alcuna novit tuttecontenute nella funzioneparseDevFile() (righe 5-28) che ciaccingiamo ad analizzare qui diseguito. Questa funzione apre/proc/dev/net e ne analizza ilcontenuto: i contatori ai quali siamointeressati, saranno memorizzati
01. #include 02. #include 03. #include 04. #include 05. typedef unsigned long long ull
06. int parseDevFile(const char * iface, ull *bRx, ull *pRx,07. ull *bTx, ull *pTx)08. {09. FILE * fp = NULL;10. char * line = NULL;11. unsigned int len = 0;12. fp = fopen("/proc/net/dev", "r");13. if(fp==NULL)14. {15. return -1;
16. }17. while(getline(&line,&len,fp)!= -1)18. {19. if(strstr(line,iface)!=NULL)20. {21.
sscanf(strstr(line,":")+1,"%llu%llu%*u%*u%*u%*u%*u%*u%llu%llu",22. bRx, pRx, bTx, pTx);23. }24. }25. fclose(fp);
26. free(line);27. return 0;28. }
Listato 1: ifstat.c (parte 1)
-
8/4/2019 Full Circle Magazine 23
10/3810
tramite i puntatori bRx, pRx, bTx epTx che vengono passati alla funzionechiamata. Passando i puntatori,saremo in grado di cambiarne i valoridall'interno della funzione stessa. Lafunzione restituir 0 in caso disuccesso oppure -1 nel caso non siriesca ad aprire il file.
In questo esempio apriremo, per laprima volta, un file: alla riga 9 vienedichiarato un puntatore al file. La riga12 contiene la chiamata a fopen() (perulteriori dettagli man fopen). Il primoargomento il file che vogliamo aprire,il secondo argomento dice comevogliamo aprire questo file. In questocaso "r" significa che vogliamo aprire ilfile in sola lettura. Una volta cheabbiamo terminato la lettura del file, lochiudiamo utilizzando fclose() alla riga25.
Discutiamo la modalit di I/O in stileC: le chiamate fopen(), fclose(),
fread() e fwrite() sono parte dellostandard C e dovrebbero esseredisponibili in qualsiasi piattaforma.open(), close(), read() e write(),invece, sono parte dello standardPOSIX e sono, in effetti, dellechiamate interne di sistema.
29. void dumpInterfaceUsage(const char * iface)30. {31. ull ifaceBRxOld=0, ifaceBTxOld=0, ifacePRxOld=0, ifacePTxOld=0;32. ull ifaceBRxNew=0, ifaceBTxNew=0, ifacePRxNew=0, ifacePTxNew=0;33. const int SLEEP_TIME = 2;34.35.
if(parseDevFile(iface,&ifaceBRxOld,&ifacePRxOld,&ifaceBTxOld,&ifacePTxOld)==-1) return;36. sleep(SLEEP_TIME);37. while(1)38. {39.
if(parseDevFile(iface,&ifaceBRxNew,&ifacePRxNew,&ifaceBTxNew,&ifacePTxNew)==-1) return;40. printf("%s In: %8.2f kbyte/s %5llu P/s Out: %8.2f kbyte/s%5llu P/s\n", iface,41. (ifaceBRxNew-ifaceBRxOld)/(SLEEP_TIME * 1024.0),42. (ifacePRxNew-ifacePRxOld)/SLEEP_TIME,
43. (ifaceBTxNew-ifaceBTxOld)/(SLEEP_TIME * 1024.0),44. (ifacePTxNew-ifacePTxOld)/SLEEP_TIME);45. ifaceBRxOld=ifaceBRxNew; ifaceBTxOld=ifaceBTxNew;46. ifacePRxOld=ifacePRxNew; ifacePTxOld=ifacePTxNew;47. sleep(SLEEP_TIME);48. }49. }50.51. int main(int argc, char **argv)52. {53. if(argc != 2)
54. {55. printf("Usage: %s interfacename\n", argv[0]);56. exit(1);57. }58. dumpInterfaceUsage(argv[1]);59. return 0;60. }
Listato 2: ifstat.c (parte 2)
-
8/4/2019 Full Circle Magazine 23
11/3811
Solitamente viene utilizzato fread()quando si vuole leggere un file. Ma,dando uno sguardo alla pagina delmanuale, si pu vedere come, perusare questa funzione, sia necessariospecificare un buffer, la dimensione diun elemento e il numero di elementida leggere: nel nostra caso nonsarebbe per niente conveniente. Eccoperch utilizzeremo getline(); questafunzione richiede un puntatore apuntatore come primo argomento eun puntatore ad un intero comesecondo argomento. Internamente,questa funzione, legger comunqueun'intera riga e ne copier il
contenuto nel buffer passato comeargomento o, nel caso in cui il buffernon abbia abbastanza spazio, in unnuovo buffer appositamente allocato(vedere man getline per i dettagli).Tutto quello che dovremo fare ricordarci di liberare i puntatori chegetline ha allocato per noi (Riga 26).
Le righe 19-24 effettuano l'analisi
delle righe lette dal file. La riga 19
controlla che il nome dell'interfaccia siacontenuta all'interno della riga cheabbiamo letto (segnalando quindi cheabbiamo letto un numero sufficiente dirighe). Se la riga risulta essere quellacorretta, verr utilizzata la funzionesscanf() per convertire i valori della riganelle variabili unsigned long longutilizzate dall'applicazione. Notate che ilsimbolo "*" all'interno della stringa diformattazione significa che non siamointeressati a quei particolari valori.
A questo punto, compilata e mandatain esecuzione, l'applicazione restituir ilseguente output relativo, nel mio caso,all'analisi dell'attivit del miocollegamento wireless.
Sfortunatamente l'argomento diquesto articolo il debugging e,nonostante l'applicazione sembrifunzionare correttamente ben lontanadall'essere perfetta. Notate che abbiamoeffettuato la compilazione passando il
flag -ggdb al compilatore: questo fa si
che i simboli di debug sianocontenuti all'interno del file binariopermettendo al debugger diottenere informazioni pi precise.
Se proviamo a far partirel'applicazione e passiamo per
sbaglio la lettera "b" come nomedell'interfaccia, ecco quello chesucceder:
edb@lapedb:~/fullcircle/c-7$./ifstat bSegmentation fault
Ecco cosa successo:apparentemente l'applicazione ha
cercato di accedere ad alcuniindirizzi della memoria che non leappartenevano. Ci non piaciuto alkernel che ci ha restituito il segnaleSIGSEGV. Come risultato,l'applicazione viene terminata. Duesono le possibilit che possonoessere adottate in questa situazione.Potremmo far partire l'applicazioneall'interno del nostro debugger ed
effettuare un p di live-debugging.Oppure potremmo ottenere un filecore ed effettuare un p didebugging post-mortem. Sedovesse capitarvi una cosa similecon uno qualsiasi dei pacchetti dellavostra distribuzione e vorrete
edb@lapedb:~/fullcircle/c-7$ gcc -ggdb -o ifstat ifstat.cedb@lapedb:~/fullcircle/c-7$ ./ifstat wlan0
wlan0 In: 1.36 kbyte/s 16 P/s Out: 1.50 kbyte/s 16 P/s wlan0 In: 103.25 kbyte/s 84 P/s Out: 4.61 kbyte/s 54 P/s wlan0 In: 1.29 kbyte/s 15 P/s Out: 1.50 kbyte/s 16 P/s
-
8/4/2019 Full Circle Magazine 23
12/3812
compilare un bug report, sappiate chela gente vi richieder il core file. utile sapere come creare questi corefile, ecco perch sar la prima cosache faremo.
edb@lapedb:~/fullcircle/c-7$
ulimit -c unlimitededb@lapedb:~/fullcircle/c-7$./ifstat -bSegmentation fault (core dumped)edb@lapedb:~/fullcircle/c-7$ ls -hal core-rw------- 1 edb edb 280K 2009-03-07 13:33 core
Con ulimit si possono inserire deilimiti a determinate risorse: la
dimensione del file core una diqueste risorse e, normalmente, talelimite settato a 0. Nel momento incui settiamo questo limite a unlimitedle applicazioni possono scaricare su diun file core (in un file core vienescaricato lo stato della memoriautilizzata da un'applicazione).Potremo quindi analizzarlo utilizzando
gdb (ebbene s).Cosa abbiamo fatto? Abbiamo
lanciato gdb e gli abbiamo passatocome argomenti il nostro file binario eil file core. gdb ci ha informato chel'applicazione stata terminata acausa di una violazione nell'accesso al
segmento [di memoria]. Abbiamo dato ilcomando where e gdb ci ha risposto conun backtrace (una lista di tutte le funzioniche sono state invocate). Possiamovedere che l'esecuzione iniziata inmain, quindi passata adumpInterfaceUsage e successivamentein parseDevFile che ha chiamato sscanf.Perci si sarebbe portati a pensare (esolitamente si nel giusto) che ilproblema risieda nel codice che abbiamoappena scritto e non nelle librerie chevengono utilizzate. Partiremo percidall'ipotesi di aver commesso qualcheerrore nella chiamata alla funzionesscanf(). Per accertarcene chiediamo a
gdb di mettere in evidenza la variabile
line: ci accorgiamo che l'applicazionesi blocca alla riga che contiene una"b" (che abbiamo passato comenome dell'interfaccia) e che lafunzione strstr(), che cerca il carattere":", ci restituisce NULL poich non stato trovato alcun ":" nella rigaanalizzata. Per questo motivo sscanfcerca di leggere dall'indirizzo dimemoria 1.
Per avere lo stesso effetto in unasessione live, basta eseguire gdbpassandogli il file binario come primoargomento. Al prompt di gdb basterdare il comando run seguito dal primoargomento. Potrete ottenere le stesse
edb@lapedb:~/fullcircle/c-7$ gdb ifstat coreGNU gdb 6.8-debianCopyright (C) 2008 Free Software Foundation, Inc.License GPLv3+: GNU GPL version 3 or laterThis is free software: you are free to change and redistribute it.There is NO WARRANTY, to the extent permitted by law. Type "showcopying"
and "show warranty" for details.This GDB was configured as "i486-linux-gnu"...
warning: Can't read pathname for load map: Input/output error.Reading symbols from /lib/tls/i686/cmov/libc.so.6...done.Loaded symbols for /lib/tls/i686/cmov/libc.so.6Reading symbols from /lib/ld-linux.so.2...done.
NOTA:e molti altri errori libc.so.6.
-
8/4/2019 Full Circle Magazine 23
13/38
13
informazioni:
edb@lapedb:~/fullcircle/c-7$gdbifstat(gdb) run bStarting program:/home/edb/fullcircle/c-7/ifstat bProgram received signal SIGSEGV,
Segmentation fault.0xb7fd26c7 in rawmemchr () from/lib/tls/i686/cmov/libc.so.6
Ma, questa volta, senza utilizzare ilfile core. Quello che segue (sulladestra) l'output della sessione live.
Facendo partire l'applicazione epassandogli "bla" come parametro
abbiamo visto che tutti i nostri livellirimangono a zero. Decidiamo quindidi approfondire. Se c' un errore,sospettiamo che questo avvengaall'interno di parseDevFile, perci,digitando break parseDevFile,chiediamo a gdb di registrare unbreakpoint non appena questafunzione venga chiamata. Questosignifica che l'applicazione comincera lavorare normalmente ma siinterromper e ci presenter il promptdi gdb ogni qual volta vengaraggiunto il breakpoint. Dopo averregistrato il breakpoint facciamoripartire l'applicazione e otteniamo ilprompt di gdb nel momento in cui
viene raggiunto il breakpoint. Decidiamodi camminare all'interno di questafunziona rilasciando una serie di comandisteps (che equivale ad eseguire unasingola linea di codice). Dopo la chiamataa fopen() controlliamo che il puntatore alfile sia valido: sembrerebbe di si.Decidiamo quindi di mettere un display(ovvero mostrare un'espressione ognivolta) sul puntatore alla variabile line che
contiene la nostra stringa (l'output stato tagliato per favorire laformattazione). Notiamo chepassiamo attraverso il loop whilesenza che la funzione sscanf vengamai chiamata. Possiamo quindiconcludere che l'interfaccia "bla"non esiste.
Quando emettiamo il comandocont per continuare l'esecuzione,
edb@lapedb:~/fullcircle/c-7$ gdb ifstat(gdb) break parseDevFileBreakpoint 1 at 0x80485da: file ifstat.c, line 11.(gdb) run blaStarting program: /home/edb/fullcircle/c-7/ifstat bla
Breakpoint 1, parseDevFile (iface=0xbf96175d "bla", bRx=0xbf961290,pRx=0xbf961280, bTx=0xbf961288, pTx=0xbf961278) at ifstat.c:1111 FILE * fp = NULL;(gdb) step12 char * line = NULL;(gdb) step13 unsigned int len = 0;(gdb) step15 fp = fopen("/proc/net/dev", "r");(gdb) step16 if(fp==NULL)
(gdb) print fp$1 = (FILE *) 0x9e20008(gdb) step21 while(getline(&line,&len,fp)!= -1)(gdb) display line1: line = 0x0(gdb) step23 if(strstr(line,iface)!=NULL)
NOTA: e molti errori "line = 0x9e20170".
-
8/4/2019 Full Circle Magazine 23
14/38
14
un
belga fanatico di Linux,attualmente impiegatocome ingegnere del softwareembedded in una compagnia dicomunicazioni via satellite di famamondiale. Oltre a passare il tempocon la sua famiglia, gli piacegiocare con la tecnologia e passa igiorni aspettando che la Blizzardrilasci finalmente Diablo III.
' ' isreviewed on page 23 of this issue.
noteremo che, la prossima volta che ilprogramma incontra il breakpoint,verremo reindirizzati al prompt di gdb.
In questo articolo abbiamo
introdotto il concetto di I/O in stile C el'utilizzo di getline() ma abbiamoanche avuto una panoramicasull'utilizzo di gdb. A causa dei limiti dispazio abbiamo avuto l'opportunit digrattare solo la superficie di gdb.Speriamo comunque di aver dato
l'opportunit al lettore di capire comegdb permetta di esaminare il modo in cuiun'applicazione venga eseguita: di comefaccia uso del sistema. Faccio inoltre unappello a chiunque lavori conapplicazioni in C affinch cominci adimparare come funziona gdb poich purivelarsi uno strumento estremamenteutile quando sia richiesto di capire cosanon va in un'applicazione. Per quel cheriguarda gli esercizi per questo articolo,aggiustate l'applicazione! Assicurateviche venga stampato un avviso quando
non venga trovata un'interfaccia ecercate di rendere la ricercadell'interfaccia un po' pi intelligente.
http://nostarch.com/ -
8/4/2019 Full Circle Magazine 23
15/38
15
I linguaggi di programmazionesono intesi ad automatizzare leoperazioni e a rendere la vita pisemplice. PHP non fa eccezione.
Tuttavia, PHP, pur essendoottimo, semplice da usare, olargamente diffuso (si stimano 20milioni di installazioni ed usato dasiti web e programmi comeFacebook, Wikipedia (Mediawiki),Digg, Wordpress, Yahoo! e molti
altri), non il linguaggio diprogrammazione fondamentale usatosu Internet. N il migliore.
Sono disponibili diversi linguaggi diprogrammazione per gli sviluppatoriweb, inclusi (ma non solo) Python, Perl,Ruby (e Ruby On Rails), Java (JSP), ASP,ASP.net, ecc... Addirittura, se voleteaddentrarvi in qualcheprogrammazione esoterica, potetepersino usare C, C++ o molti altrilinguaggi di programmazione a bassolivello.
Quello che vi occorre capire, per, che ogni linguaggio diverso e ha isuoi diversi scopi e usi. Alcuni sonoprocedurali, altri sono orientati aglioggetti e altri ancora sono un misto deidue. Se volete provare Python, fatepure! Io ne incoraggio sempre l'uso.Inoltre un ottimo metodo perconoscere altri linguaggi diprogrammazione, vero? Alcuni datoridi lavoro vi assumeranno solamente seavete esperienza con ASP.net, mentrepiacerete ad altri se conoscete soloPython e PHP. Imparate ci che vi picongeniale e ci che detta l'industria
(se siete interessati al denaro!).
Assumendo che voi abbiatecreato il vostro primo sito webdopo la lettura della seconda partedi questa serie sullo sviluppo websu Full Circle numero 21,continueremo a modificare il file"index.html" che abbiamo salvatonella cartella localhost.
La modifica di molte paginediventer presto una seccatura sevorrete aggiungere, ad esempio,una pagina chiamata "birds.html",oppure modificare il pi di paginadi tutto il sito perch siamo ora, adesempio, nel 2010. Con PHP
potete rendere le vostre paginedinamiche dividendole in sezioni erendendole modulari.
Per prima cosa metteremo ilcodice CSS in un file esterno. Non obbligatorio, ma una buonaabitudine e dovreste farlo per
HHOOWW--TTOOScritto da Brett Alton SSVVIILLUUPPPPOO WWEEBB -- PPAARRTTEE 44
FCM nn. 20 - 22 - Svil. Web Parti 1 - 3
Sviluppo Internet
-
8/4/2019 Full Circle Magazine 23
16/38
16
quasi tutti gli aspetti del vostro sitoweb (CSS, Javascript, PHP oqualsiasi cosa che si ripete in tutto ilsito).
Mettete il codice (sotto) in un filechiamato "screen.css" e
posizionatelo in una nuova cartellachiamata "css".
Nella pagina index.htmlcancellate:
e sostituitelo con:
Avete appena separatocorrettamente il vostro CSS dall'HTML.
Ora per rendere il resto del sito pimodulare, prendete il codice che inizia
con e termina con"" e mettetelo in un filechiamato "header.php" posizionatonella cartella "inc".
Fate la stessa cosa per"
Menu:
" e "" e inserite ilcodice nel file "menu.php" nella cartella"inc".Infine create il file "footer.php"sempre nella cartella "inc". Il contenuto
dovrebbe iniziare con"" eterminare con"".
Copiate il resto delcodice da "" fino altag "" proprioprima di "" einseritelo in un filechiamato "index.php",direttamente nellacartella "localhost",vicino a "index.html".
Adesso potete cancellare"index.html" in quanto non vi servepi.
A questo punto la vostra cartellalocalhost dovrebbe contenere iseguenti file e cartelle:
localhost/css/
screen.cssinc/
footer.phpheader.phpmenu.php
index.php
In cima alla pagina "index.php"
inserite il seguente codice:
l'inclusione del file menu.php vamessa dove dovrebbe comparire ilmenu stesso:
e infine il codice seguente nelfondo della pagina:
Il lettore astuto si sar accorto
*{color: #ececec;font-family: 'DejaVu Sans', sans-serif;
}body{
background-color: #212122;}#footer{
border-top: 1px solid #ccc;}#footer p{
font-size: 80%;text-align: center;
}
-
8/4/2019 Full Circle Magazine 23
17/38
17
che tutto ci che abbiamo fatto prendere il codice dell'intestazione,del menu e del piede di pagina,inserirlo in file esterni comeabbiamo fatto per il nostro CSS einfine includerli nel nostro file"index.php".
Avete iniziato, inoltre, a scrivere ilvostro primo codice PHP e la vostraprima funzione PHP (la funzioneinclude()). Ogni volta che scriveretecodice PHP importante che:
(1) il nome del file termini con.php
e
(2) il codice PHP venga
-
8/4/2019 Full Circle Magazine 23
18/38
18
un entusiastadi Ubuntu, tecnico dicomputer e ingegnere
software di Toronto, Canada
racchiuso tra i tag PHP ""
Ci sono eccezioni a questa regola(come con la maggior parte di ciche ho menzionato finora), maqueste abitudini sono le migliori persicurezza, convenienza e
consistenza.Se navigate su
http://localhost/index.php, nonnoterete alcuna differenza tra il file"index.html" che aveteprecedentemente creato e il nuovofile "index.php".
Come ultima cosa, per la nostraintroduzione a PHP, vi presenterl'istruzione switch.
Inserite il codice scritto nellapagina precedente nel file"index.php" cancellando ogni altracosa.
L'istruzione switch cattura la
variabile "page" dalla querystring(qualsiasi cosa dopo l'URL,dietro il punto interrogativo(?)costituisce la query string, n.d.t.stringa di interrogazione).
Il formato corretto della querystring dovrebbe essere:
http://example.com?variable=5
La useremo tra qualche secondo.
Avrete sicuramente notato i casi chel'istruzione switch accetter: "home""dogs" "cats" e "lizards". Il contenutopredefinito sar utilizzato se nessunodei casi menzionati prima sia indicato(esempiohttp://localhost/index.php?page=birds).Questo non il modo pi efficace pertrattare una query string errata, ma comunque un inizio.
Ora, nella pagina /inc/menu.php,modificate il codice in questo modo:
Menu:
HomeDogsCatsLizards
Questo codice vi permette di passareuna variabile chiamata "page" a
"index.php" con il contenuto"home" "dogs" "cats" e "lizards"che dipende dal collegamentoselezionato.
Potrete vedere che riuscirete anavigare su ogni pagina senza
alcun problema e attesterete ilcambiamento delle pagine.
Provate a sperimentare da soli,aggiungete una quinta paginachiamata "birds" e vedete seriuscite a far funzionare il tutto.
Notate, comunque, che questa un'introduzione basilare al PHP.Quando si creano siti web cheutilizzano le inclusioni occorreconsiderare anche il fattoresicurezza (tipo l'accesso diretto aivostri file di inclusione nellacartella "inc"), ma ne parlerun'altra volta.
8/4/2019 Full Circle Magazine 23
19/38
19
HHOOWW--TTOO
Perch dovremmo preoccuparcidi convincere le altre personea provare Ubuntu? Non bastail fatto che sia possibile usarlo se lovogliamo? Perch dovremmo essere
ossessionati dall'attaccare sempreWindows (o Apple OS X)? Questesono le cose che ho sentito dire daiblogger.
In risposta, queste sono le quattroragioni principali per cui dovremmoincoraggiare la crescita di Ubuntu
sul desktop.
L'idea principale quella della massacritica. Quando Firefox raggiunse lamassa critica, si riaccese la guerra deibrowser, per gli sviluppatori Internetdivenne un luogo migliore in cuilavorare e i costi di hosting web
precipitarono una volta che sipotevano usare tecnologie diverseda quelle Microsoft. Anche gli
utenti di Internet Explorerricevettero enormi benefici vistoche Microsoft era costretta arimettersi in gara.
Allo stesso modo, una volta cheil desktop Linux raggiunger uncerto livello di utilizzo, sardifficile, per i produttori dihardware e software, ignorarlo. Cisignificher avere driver migliori epi versioni native per Linux diapplicazioni importanti. Questo sta
FCM n. 22 - DIFFONDI UBUNTU - PARTE 1
Sistema
HardDriveCD/DVD USB Drive
Scritto da Grant Paton-Simpson DDIIFFFFOONNDDII UUBBUUNNTTUU -- PPAARRTTEE 22
8/4/2019 Full Circle Magazine 23
20/38
20
gi cominciando ad accadere.
Il software si ridotto moltissimoin termini di costi. Alla fine deglianni 80, WordPerfect 4.2 per DOS micost 1.500 $ neozelandesi. Con lastessa cifra oggi compro un buon PCdesktop e un piccolo notebook,incluso tutto il software. Il softwareopen source, come Ubuntu, haaccelerato la sua crescita. Le grandiaziende di software non hanno unbisogno naturale di fare grandiprofitti e il software che diventa un
bene di consumo una bella novitper gli utenti.
I monopoli sono uno svantaggioper i consumatori, specie quando lamanomorta di un monopolio inun'area capace di estendersi in
un'altra. Una comunit Linux attivae in crescita pu dare vita acategorie di innovazione totalmentenuove. La stagnazione dellanavigazione web (assenza dellanavigazione a schede, lentezza deljavascript, ecc.) con InternetExplorer 6 mise in luce i pericoli del
dipendere da una sola azienda comefonte d'innovazione. Di conseguenza,ecco perch noi saremmo lieti divedere competizione da altredistribuzioni Linux, visto che mantieneattiva la pressione: per esempio,aumentare la velocit d'avvio delsistema.
Il Digital Rights Management (DRM,la gestione dei diritti digitali) sta per
essere rimosso dalla musica, ma icontenuti visivi sono ancora difficilida ricercare, accedere evisualizzare nel rispetto delle leggi.Dovremmo essere capaci di farecose come trovare le vecchie serietelevisive su Internet e pagare unprezzo ragionevole per scaricarle.Il DRM fa s che i cartelli dei mediaignorino le richieste del pubblico, eci dovrebbe essere combattuto.Diversamente da Vista, Ubuntunon supporta il DRM e questa un'altra ragione per cui dovremmosupportare Ubuntu.
S, un utente disattento ocredulone pu compromettere lasicurezza di qualunque sistemainformatico e Windows tropporischioso per il comune utentedesktop. A parit di condizioni,Ubuntu fornisce loro una sicurezza
molto superiore. Ho visto molti PCcon Windows talmente infestatiche funzionavano come dei 286.
L'uso di un computer stadiventando sempre pi uso diInternet e Ubuntu perfetto per
8/4/2019 Full Circle Magazine 23
21/38
21
questo scopo.
Il prezzo reale di un PC conWindows include l'hardware, ilsistema operativo, le applicazioni,oltre a tutta la protezione chebisogna comprare (per evitare chequalcuno ne prenda il controllo). Poic' il lavoro continuo di mantenereaggiornati i sistemi di sicurezza e diavviarne i vari controlli e test. Ilcosto totale di possesso pi alto diquel che possa sembrare.
Gi, Linux ha un impatto sul costodel software. La scelta di Linux suinetbook ha sostanzialmente limitatola capacit di Microsoft di trarreprofitti dal monopolio di XP sullastessa piattaforma. Sarinteressante vedere che impattoavr ci sul prezzo del sistemaoperativo.
La comunit una delle cosemigliori in Ubuntu: la disponibilit,l'atteggiamento positivo el'impressione che gli altri ti aiutinonon solo per fare soldi.
Ubuntu ha a disposizione tantissimeapplicazioni di alto livello, inclusiFirefox, Thunderbird, OpenOffice, GIMP,VLC, Pidgin, Inkscape, Rhythmbox,Transmission (BitTorrent) e Brasero(masterizzazione CD, ecc.). Ho dettoche sono tutti gratis?
Il desktop Linux non la rispostagiusta per tutti. Non tutte leapplicazioni Windows girano bene conWine e, qualche volta, non esistonoalternative Linux, specialmente sulversante delle applicazioni aziendalispecialistiche. Oggi con la
virtualizzazione, possibile per l'utenteordinario, ci non un problema, anchese continua ad esserlo per alcuni utenti.
Il desktop Linux importante epromuovere Ubuntu al momento lastrada migliore per supportarlo.
unosviluppatore software diAuckland, Nuova Zelanda, con
un dottorato in Sociologia. Sposato conElizabeth, ha 4 bambini vivaci e unlavoro di realizzazione di basi di datipersonalizzati (http://www.p-s.co.nz).
http://www.p-s.co.nz/http://www.ubuntupocketguide.com/
8/4/2019 Full Circle Magazine 23
22/38
22
C
irca 6 anni fa tentai di installareFedora (FC 3) sul mio PCdesktop, perch avevo
bisogno di far girare un server Websemplice per un esperimentoscolastico. Poich era il mio primoapproccio con Linux, sono andato inconfusione e non ho avuto il coraggiodi approfondirne l'installazione. A queltempo pensai che le informazionifossero scarse (probabilmente leinformazioni erano accessibili, ma
non le trovai). Cos decisi di installareWindows e di far girare XAMPP perrisolvere il mio problema.
All'universit uno dei mieiinsegnanti mi consegn un CD conUbuntu 5.04; fu la mia primaesperienza con la distribuzioneUbuntu. Iniziammo (i miei amici ed io)con l'installare Ubuntu su uno dei
desktop della scuola per vedere comefunzionava. Poich non avevamo unagrande esperienza con l'uso delterminale e l'installazione di un serverWeb, utilizzammo la macchina soloper la navigazione. Mi piacqueimmediatamente l'aspetto del
desktop e il fatto che ci fosse una nuovaversione ogni sei mesi. Vidi anche che seavevo bisogno di aiuto c'era una
comunit pronta a rispondere alle miedomande.
Quando ho vistol'installer wubi per laprima volta, hodeciso di provarloassolutamente.All'inizio mi hacausato qualche
crash nella GUI (onell'x-server) e larete wireless haavuto qualchedifficolt aconnettersi erimanere connessa. All'uscita dellarelease successiva tutti questi problemisono stati risolti e wubi gira in modo
scorrevole e stabile. Wubi ora una partefissa della mia macchina desktop.
Ho preso in prestito un portatile allavoro dove installato Intrepid Ibex(installazione pulita sul disco fisso). Finorasono stato soddisfatto dall'installazionesul laptop che utilizzo per il lavoro
d'ufficio, la navigazione, la postaelettronica e per imparare l'uso delterminale. La parte migliore che se
ho bisogno di un programma devosolo prenderloe funzionaimmediatamente.
In futurostudierulteriormente ilmondo Linux e
Ubuntu edincoraggeraltri a provareUbuntu perch di facile
utilizzo. L'unicaragione che mi trattienedall'utilizzare solo Ubuntu la suaincapacit di far girare i miei giochi.
So che esiste Wine per risolverequesto problema, ho provato adinstallarlo e a farci girare dei giochi,ma sfortunatamente senzasuccesso. Non rimprovero Linux perquesto, ma spero che andr meglioin futuro.
LLAA MMIIAA SSTTOORRIIAAScritto da Lars Blomgaard DDIIVVEENNTTAARREE UUNN UUTTEENNTTEE UUBBUUNNTTUU
8/4/2019 Full Circle Magazine 23
23/38
8/4/2019 Full Circle Magazine 23
24/38
24
Per quanto riguarda lapacchettizzazione, ci sono molteottime risorse che ho utilizzato perimpararne i rudimenti. La "vecchia"
guida per la pacchettizzazione diUbuntu, la nuova guida Debian deimanteiner. Mi sarebbe piaciuto chefossero esistiti strumenti come ivideo dei MOTU o i MOTU Recipesquando ho iniziato a imparare apacchettizzare. Queste nuoveguide aiutano realmente asuddividere il processo in compitipi piccoli e maneggevoli.
Il canale #ubuntu-motu sufreenode era (ed ) la strada pirapida per ottenere una rispostaalle mie domande. Tutti nel canaleMOTU sono pronti a darti una manoo al limite a indirizzarti nella giusta
SSTTEEVVEE SSTTAALLCCUUPP
31
Ohio centrale, USA
vorian
Ho usato Linux un po' negli ultimi treanni. La mia prima distribuzione stata Ubuntu (5.04). Per me statoun ottimo corso su comesopravvivere con Linux (al quale
sono stato costretto in seguito a unafallimentare installazione in dual-boot)
Da quando ho mandato all'ariaquell'installazione dello scorso ottobre, allora che ho deciso di provare Kubuntu.
Per un po' di tempo ho avuto in testal'idea di unirmi al gruppo MOTU ma non realmente diventata una cosa seriafino all'inizio del ciclo di sviluppo diHardy. Il proposito per il nuovo anno2008 stato di entrare nel gruppoMOTU. Con questo obiettivo, ho iniziato
a contribuire attraverso semplici attivite affrontando gradualmente compiti pigrandi e pi complessi. In seguito, e nonsembra essere passato neanche ungiorno, mi sono trovato a caricare nuovipacchetti in Ubuntu e in Debian.
IINNTTEERRVVIISSTTAA AAII MMOOTTUUTratto da
"Behind MOTU" un sito che propone interviste a persone conosciute come "Masters of the Universe" (MOTU). Sono una squadra divolontari che hanno lo scopo di gestire i pacchetti all'interno dei repository Universe e Multiverse.
http://behindmotu.wordpress.com/
8/4/2019 Full Circle Magazine 23
25/38
25
direzione.
Mi piace lavorare con questoformidabile gruppo di persone chestanno veramente portando avanti lamissione di Ubuntu, rendendodisponibile il meglio di ci che ha daoffrire il software Open Source.L'atmosfera che si vive nel gruppo formidabile.
Poniti degli obiettivi, e poi dacci
dentro! Per me, darmi un obiettivo stata la chiave per passare da voleressere un MOTU a lavorarerealmente per diventarlo.
A volte sar frustrante ma altre sarmolto eccitante. Mi ricordochiaramente la frustrazione che hoprovato quando tentavo di capirecome far funzionare una cosa e il
brivido quando trovavo la soluzione.Non puoi imparare come svolgerequesto lavoro senza sbagliare(molto) durante il cammino.
Soprattutto, fantastico lavorare conil gruppo MOTU! Tutti sono pronti ad
aiutare rispondendo a una domanda,guidandoti nel trovare le soluzioni edandoti preziose informazioni.
La mia attivit principale sar aiutare adassicurare che Kubuntu sia un rilascio dialto livello. Un'altra attivit in cui mi stoconcentrando l'assistenza alla coda disponsorizzazione. Ho avuto sponsormeravigliosi che hanno dedicato deltempo revisionando i miei contributi einsegnandomi come migliorare. Il migliormodo che conosco per ringraziarli farelo stesso nei confronti degli altri
contribuenti e aspiranti MOTU :). Cosaancora pi importante, la correzionedegli errori produceun rilascio migliore.
Con KDE 4.1 gli utentiabituali di KDEpossono aspettarsi diessere soddisfatti daci che Kubuntu ha daoffrire. Sinceramentepenso che i nuovi
utenti dell'ambiente desktop Ksaranno sbalorditi di ci che si sonopersi ;)
(Ricordo come mi sono sentitoquando ho utilizzato Kubuntu per laprima volta)
"". Maestro Jedi Yoda
Trascorro tutto il mio tempo liberocon i miei 4 figli e una moglie
meravigliosa.
8/4/2019 Full Circle Magazine 23
26/38
8/4/2019 Full Circle Magazine 23
27/38
27
una scheda che supportanominalmente 1024x768 pufunzionare in Windows utilizzandoalcuni accorgimenti nel driver,potrebbe non essere utilizzabile suLinux. Possiedo una ATI Rage II che, hopaura, ricade in questa categoria.
[1]http://www.x.org/wiki/FAQVideoModes
In risposta al pezzo di Edward Hewittcomparso nel numero 22 di FullCircle: innanzitutto, se mai la EAdecidesse di supportare Linux, lacomunit avrebbe bisogno di dareascolto ad alcune delle critiche che laEA ha mosso nei confronti delfunzionamento del sistema. Poteteleggere altre notizie al riguardo nel mioblog:http://andrewfenn.blogspot.com/2009/02/ea-linux-support.html Non solo laEA ad avere, con alcune osservazioni,messo in evidenza certe problematiche
di distribuzioni come Ubuntu: lo hafatto anche Steve Streeting, il creatoredi Ogre3D (potete leggere i suoicommenti, con il nick Sinbad, nellapagina sopra citata). Queste critichedovrebbero essere esaminate conattenzione, poich evidenziano
problematiche nelle quali io stesso mi sonoimbattuto mentre sviluppavo per Ubuntu.Spesso ho dovuto creare i miei personalipacchetti .deb per poter aggirare problemiquali vecchie versioni o pacchettimancanti, etc. Mi sono arreso a staredietro a questo tipo di problematiche su
Launchpad per tenerle aggiornate nelladistribuzione, poich il processo semplicemente troppo lento.
Una ulteriore nota indipendente dalcontesto precedente: nell'articolo vengonocitati Teamspeak e Ventrilo e non invececitato Mumble. Mumble un softwareopen source, cross platform e tanto valido,se non migliore, degli altri due prodotticitati.
Non so se ci sia validoper tutti gli EEE PC, maritengo sia una cosa dasottolineare: sul mio EEE PC1000 l'unica porta USBbootabile quella che si trova
sul lato sinistro. Non assolutamente possibile fare ilboot a partire dalle porte USBche si trovano sul lato destro.Dovreste anche far sapere che,se l'interfaccia di Easy Peasynon fosse gradita, possibile
installare il proprio ambiente graficopreferito senza andare in contro aduna re-installazione completa delsistema. Non essendo una fan deiremix delle interfacce dei netbook,eseguo:
sudo apt-get xubuntu-desktop
Questo permette di mantenere ilkernell dell'EEE PC assieme al nuovodesktop. Potreste, inoltre, spiegare aipossessori del modello 1000 (che hadue slot SDD) come formattare la8GB per montare la "/" e la 32GB permontare la "/home" ?
Tempi moderni
http://andrewfenn.blogspot.com/2009/02/ea-linux-support.htmlhttp://www.x.org/wiki/FAQVideoModes
8/4/2019 Full Circle Magazine 23
28/38
28
DDOONNNNEE UUBBUUNNTTUUScritto da Myriam Schweingruber IInntteerrvviissttaa aa LLyyddiiaa PPiinnttsscchheerr
Lydia Pintscher (sopra): Certo. SonoLydia, dalla Germania, entusiastadel Software Libero, allevatrice digatti, esperta dei social media equalcos'altro ancora. Principalmente
mi occupo della gestione dellacomunit KDE e precisamente diAmarok. Sono anche conosciutacome Nightrose in IRC.
LP: Per la precisione sono un membrodel Consiglio di Kubuntu.
LP: Penso poco dopo aver iniziato ausare Linux. All'incirca quando uscBreezy.
LP: In quei tempi volevo provare Linuxed ero incerta su quale distribuzionescegliere. Siccome in quel momentotutti parlavano di Ubuntu e di quantofosse fantastica, decisi di provarla.Cos, dopo aver giocato per 2 ore conUbuntu, installai Kubuntu, me neinnamorai e la sto usando da allora. Mipiace l'integrazione delle applicazioni eovviamente il blu! Io adoro il blu!
LP: S, vero. Principalmente sono ingiro nel canale per aiutare i principianti
e quelli che hanno avuto unabrutta giornata e hanno bisogno disfogarsi. Avere un luogo dove
poter fare ci veramente utile.
LP: Esatto e ovviamente perincoraggiare le donne ad uscire e
rendere bella Ubuntu con lascrittura di codice, con lavalutazione dei bug, con lapromozione e cos via: c' da fareper tutti. Solo che qualche voltatrovare il compito giusto richiededel tempo.
LP: Studio Informatica, ma,onestamente, c' un sacco digente che scrive codice meglio dime. E progetti come KDE eKubuntu meglio che li servafacendo lavori per la comunit efacendo promozione piuttosto che
8/4/2019 Full Circle Magazine 23
29/38
29
con lo scrivere codice. ;-) unacompetenza di cui molti progettihanno bisogno.
LP: Riflettete su ci che vi piacefare. Non necessario che siateesperte. Tutte noi abbiamocominciato in piccolo e avevamo daimparare. Una volta che sapete
cosa vi piace, presentatevi alresponsabile del gruppo e chiedetein che modo poter dare una mano.Molti di loro saranno lieti di aiutarvia iniziare. Se non identificate cosa vipiace o avete timore di girare per lacomunit da sole, venite nel nostrocanale IRC o nella nostra mailing-list. Cercheremo di aiutarvi. E come
ho detto prima: c' qualcosa perciascuna; non abbiate timore dichiedere.
LP: S abbiamo Donne KDE, ma rimasto praticamente fermo per un belpo' di tempo, che una buona cosa.
LP: Ci dimostra che le donne in KDE sisentono perfettamente a loro agio intutta la comunit KDE e sono ben
integrate. Conto di raggiungere prestolo stesso in Donne Ubuntu. Un passoper quell'obiettivo sarebbe avere pidonne impegnate in tutti gli ambiti diUbuntu.
LP: Secondo me lapacchettizzazione qualcosa chefanno solo poche donne e sarebbebello che questa cosa cambi.
LP: una sfida. Ma in realt c' unmucchio di gente in giro pronta adaiutarti a iniziare ed incredibilmente gratificante saperedi avere il tuo primo pacchettonell'archivio di Ubuntu, installabileda migliaia di persone.
Per saperne di pi sulle nostre
serie di interviste, visitate il nostrosito:http://wiki.ubuntuwomen.org/Interviews
http://wiki.ubuntu-women.org/Interviews
8/4/2019 Full Circle Magazine 23
30/38
30
GGIIOOCCHHII UUBBUUNNTTUUScritto da Edward Hewitt
NOTIZIE SUI GIOCHI
- La comunit diUbuntu era stata moltocontenta di apprendere nellontano Novembre 2007 delsupporto di Eve Online perLinux. Tuttavia stato
annunciato che Eveinterromper il supporto perLinux, a causa dellamancanza di richiesta.
- Il puzzle game
acclamato dalla critica,World Of Goo, statorilasciato per Linux. Questo
gioco stato altamentesupportato da PC Gamer eGameSpot. Lo poteteacquistare o scaricarne lademo da:http://2dboy.com/games.php
Questa settimana l'articolo principale scritto da Joseph Guarino. Ha postatouna indagine sui giochi FOSS (Freeand Open Source Software) sul forum diUbuntu e ha riportato cosa venuto fuorida questa sua indagine.
I miei primi sforzi riguardo all'indagineerano volti a misurare quale fosse lapercezione che la comunit possiederiguardo ai giochi FOSS ed avviare undialogo produttivo sui problemi che locircondano. In molti discorsi con giocatori,
amici e membri delle comunit LUG honotato che serpeggia uniformemente neivari settori un'idea sbagliata relativamenteai giochi FOSS e nel considerare Linux unapiattaforma video-ludica. Tutti i miei sforzisu questa ricerca erano paralleli per aduna discussione su SCALE, quindi sonoandato pi avanti raccogliendol'opinione/saggezza collettiva della
comunit FOSS laddove non esisteva alcundato a riguardo. La pi che desiderabilerisposta positiva di circa 700 utenti stataquasi incoraggiante. I fraintendimenti cheho analizzato riguardavano 3 puntifondamentali:
Sourceforge.net mostra circa 30'000giochi FOSS e progetti relativi ai giochistessi. Molto curioso, il 95% degli
intervistati utilizza attivamente giochiFOSS e l'88% afferma che ci sonotantissimi giochi FOSS. Questo mi haassolutamente commosso rispetto allerisposte che mi erano state date dagliamici della community che lapensavano diversamente. Un fattoincoraggiante, all'interno dellacomunit FOSS, che circa il 56% deipartecipanti al sondaggio hannocontribuito, fatto i volontari o donatoqualcosa per questi progetti. So chefuori dalla comunit questo numero molto molto pi basso, perch lepersone spesso non capisconol'importanza di finanziare certiprogetti. Solo con il supporto a questiprogetti nelle varie modalit previste(divenire un membro del progetto,
donare, patrocinare la causa, ecc...)essi potranno svilupparsi. Come partedi questa ricerca, ho offerto un premioe una donazione di 100$ al progettodel gioco FOSS scelto dai vincitoristessi. I 100$ sono andati al mio giocoFOSS FPS preferito: Nexuis.
FFOOSSSS GGAAMMIINNGG SSUURRVVEEYY
http://2dboy.com/games.php
8/4/2019 Full Circle Magazine 23
31/38
8/4/2019 Full Circle Magazine 23
32/38
32
DRLa miglior alternativa aPhotoshop sicuramenteGIMP (a destra). E' moltopotente e lavora sia sottoWindows che sotto Linux. I numeriprecedenti di Full Circle magazine
sono una buona risorsa perimparare a usare GIMP.
D
RFondamentalmente s. Il modopi semplice per mantenere ituoi settaggi, quando reinstalli
Ubuntu, quello di avere unapartizione home separata. Se haiintenzione di tenere i file esistentinella home, assicurati di copiareanche i file e le cartelle nascoste.
D
RCon cos tanta RAM, efacendo attivitinformatiche normali come
internet e email, in teoria nondovresti aver bisogno di spaziodi swap. Comunque, se undomani dovessi utilizzare tutta latua RAM, il tuo PC probabilmenteandrebbe in crash. Sarebbe
come andare a fareparacadutismo senza ilparacadute ausiliario.
D
RC' un how-to moltoesaustivo sui modem dial-up nella documentazione
della comunit di Ubuntu qui:https://help.ubuntu.com/community/DialupModemHowto
Domande&RisposteScritto da Tommy Alsemgeest
Se avete delle domande su Ubuntu che richiedono una risposta, scrivete a:[email protected], e Tommy vi riponder nelle prossime edizioni.
mailto:[email protected]://help.ubuntu.com/community/DialupModemHowto
8/4/2019 Full Circle Magazine 23
33/38
33
Con mio personale shock, dopo aver aggiornato il computer aKubuntu 8.10, KDE3.5 era andato. Avevo avuto intenzione dipassare a KDE4 da un po' di tempo e dal momento che questa orasembrava essere l'unica soluzione possibile, l'ho fatto. Comepotete vedere ho Avant Window Navigator posizionato in basso edue widget plasma per monitorare ci che fa il mio computer etenere d'occhio il lettore Amarok. Oltre questo ho Swiftfox,Emesene e Konversation rispettivamente per la navigazione sulweb, MSN e IRC.
Utilizzo Linux da oramai due anni e ho provato diverse distribuzioni.La mia preferita Ubuntu 8.04.1 LTS. Mi piace Linux per la grandepossibilit che si ha nel personalizzarlo a proprio piacimento intermini di applicazioni e aspetto. In passato ero piuttosto frustratodall'enorme quantit di spyware e virus che ho preso utilizzando XP.Linux mi permette un'esperienza col computer in tutta sicurezza. Cisono otto computer a casa mia e il costo della licenza Windowssarebbe proibitivo. Ho convertito diversi amici a Linux per gli stessimotivi. Utilizzo ancora alcuni programmi per Windows ma trovo Wineuna utility da possedere assolutamente. Posso condividere tutti i filee la musica attraverso la mia rete domestica, siano essi su Windowso su Linux. E, dal momento che suono anche la chitarra, hocominciato a studiare le applicazioni per la registrazione audiodomestica, come per esempio Rosegarden, Ardour e Hydrogen.
Questa la tua occasione per mostrare al mondo il tuo desktop estroso o il tuo PC. Mandale tue schermate e foto a: [email protected]. Includi una breve descrizione deltuo desktop, le caratteristiche del tuo PC e altre curiosit sulla tua configurazione.
IILL MMIIOO DDEESSKKTTOOPP
mailto:[email protected]
8/4/2019 Full Circle Magazine 23
34/38
34
Ho provato Linux per la prima volta diversi anni fa e nelfrattempo ho avuto modo di provare diversi gestori di finestre edistribuzioni dalla e17 fino a SuSe. Attualmente utilizzo Ubuntusul mio computer portatile e su uno fisso (pentium III) con IP-Fire. Proprio ora sto usando Ubuntu 8.10 sul mio Asus A7J conCompiz, Cairo-Dock, Conky e le Screenlets. Il mio Asus A7J unCoreDuo (2 x 1,8 Ghz) con scheda video ATI X1600.
Questo la mia Ubuntu 8.10 installata su una penna USB da 8GB. Utilizza il tema e le icone Clearlooks OSX e Compiz conl'effetto cilindro attivato. La barra di AWN nella parte bassadello schermo, con dei lanciatori per Pidgin e Thunderbird cheindicano i messaggi non letti. Sono installati alcuni programmiinteressanti, inclusi quelli legati alla valutazione della sicurezzadella rete. Adesso posso semplicemente inserire la chiavetta
dovunque vada ed usare il mio set personale di applicazionipreferite nell'ambiente che ho scelto. L'ho avviato su piattaformedifferenti da quelle su cui l'avevo installato e riconosce il nuovohardware durante l'avvio. L'unico problema che c' un po' diritardo durante il caricamento dei programmi o quando ce nesono molti aperti.
IILL MMIIOO DDEESSKKTTOOPP
8/4/2019 Full Circle Magazine 23
35/38
35
GGEESSTTOORRII DDII AATTTTIIVVIITTAA''Scritto da Andrew Min
http://live.gnome.org/TasqueTasque un gestoredi attivit GTKsemplice ma potente.Possiede lacaratteristica listadelle cose da fare(anche pi liste), maquello che realmente
lo rende speciale sonodue cose:l'integrazione conRemember the Milk el'integrazione conEvolution. Rememberthe Milk senza dubbio il gestore di attivit basatosu web che preferisco ed Evolution uno dei miglioriclient PIM disponibili. Questa magnifica integrazione
quello che rende realmente Tasque uno dei gestoridi attivit pi popolari in ambiente Linux epersonalmente il mio preferito.
Per installare Tasque utilizzate il pacchetto " "nel repository "universe".
http://blog.sarine.nl/
Il premio per il pivecchio e rispettatogestori di attivit va,senza dubbio, a GToDo,l'antica lista delle attivitdi Linux. in giro daanni, ma possiedeancora gli strumenti di
cui necessitate. Includeliste di attivit multiple,una funzione diesportazione in HTML,categorie multiple, priorit, un'icona per l'area dinotifica, avvisi, ordinamento avanzato e molto altro.Potete anche utilizzare una comoda applet per ilpannello Gnome per accedere alla vostra lista diattivit dalla barra delle attivit. Non possiede certo
tutti i fronzoli di, ad esempio, Thinking Rock, ma incredibilmente utile ed essenziale allo stesso tempo.
Per installare GToDo utilizzate il pacchetto " "nel repository "universe". Potete anche procurarvil'applicazione per il pannello utilizzando" ".
http://blog.sarine.nl/http://live.gnome.org/Tasque
8/4/2019 Full Circle Magazine 23
36/38
36
un appassionato diLinux sin dalla sua primainstallazione di openSuSE in
VMWare. Per saperne di pi visitate:http://www.andrewmin.com/
http://makagiga.sourceforge.net/
Makagiga una potente applicazionemini-PIM. Insieme alle liste multiple diattivit sfoggia un lettore RSS integrato,un blocco note, il supporto perarchiviare immagini e collegamenti,
segnalibri, una modalit presentazione,un motore di ricerca integrato, unaconsolle e plugin per qualsiasi altra cosapossiate immaginare. Supporta anchewidget e temi. E nonostante il fatto chesia scritto in Java, non n pesante nfuori posto su una scrivania Linux(utilizza le icone Oxygen, ma sta bene inGnome).
Makagiga non ancora presentenei repository. Tuttavia, poteteinstallarlo con il pacchetto .debche trovate suhttp://url.fullcirclemagazine.org/2dda71
http://www.trgtd.com.au/
ThinkingRock il pi popolare gestoredi attivit in stile GTD disponibile.Basato su uno stile di vita popolarelanciato da David Allen, questa un'applicazione potente (ma davveromassiccia). Non solo un elenco di
attivit; un potente strumento digestione del tempo per semplificare lavostra vita. Ha tutto quello che poteteimmaginare, inclusi criteri, argomenti,contesto e molto altro. Comescherzosamente indicato sul sito, "Senon avete il tempo di scaricare einstallare questo programma, allora neavete davvero bisogno". Quindi, se vipiace GTD e non vi creano problemipesanti applicazioni Java, provate
ThinkingRock.
Per installare ThinkingRock,seguite le istruzioni suhttp://url.fullcirclemagazine.org/848f54
http://quicklist.sourceforge.net/
QuickList un modo per, diciamo, creare listevelocemente. attualmente qualcosa di pi diuna semplice lista di compiti, comportandosicome un programma di base di dati. All'iniziopotete aggiungere colonne per testo, numeri,data, ora, a sinistra, al centro o a destra. Potete
quindi inserire i rispettivi valori all'interno dellecolonne. l'ideale per una lista di attivitessenziale, visto che potete aggiungerequalsiasi caratteristica base (nome, descrizione,data, ora, priorit, completata/in lavorazione ecos via) semplicemente aggiungendo un'altracolonna. Gli utenti che hanno familiarit confogli di calcolo e programmi di gestione di dati sisentiranno a casa.
Per installare QuickList utilizzate ilpacchetto " " nel repository"universe".
http://url.fullcirclemagazine.org/848f54http://url.fullcirclemagazine.org/2dda71http://www.trgtd.com.au/http://quicklist.sourceforge.net/http://makagiga.sourceforge.net/http://www.andrewmin.com/
8/4/2019 Full Circle Magazine 23
37/38
37
CCOOMMEE CCOONNTTRRIIBBUUIIRREE
Siamo sempre in attesa di vostri nuovi articoli da pubblicare nella rivista Full Circle.Per articoli, guide, idee e per le traduzioni della rivista , date un'occhiata al nostro
wiki: http://wiki.ubuntu.com/UbuntuMagazineInviateci i vostri articoli a: [email protected]
Gruppo Full Circle
- Ronnie Tucker
- Rob Kerfia
-
Robert Clipsham
Mike Kennedy
Robert Orsino
David HaasGord Campbell
Il nostro ringraziamento va a
Canonical, al team marketing di
Ubuntu e ai molti gruppi di
traduzione nel mondo.
Se desiderate inviarci delle notizie, scrivete a: [email protected]
Inviate i vostri commenti o esperienze Linux a: [email protected]
Inviate le revisioni Hardware/software a: [email protected]
Le domande sulle interviste future vano inviate a: [email protected]
Le liste e le schermate dei desktop vanno inviate a: [email protected]
Se avete domande, visitate il nostro forum: www.fullcirclemagazine.org
Domenica 5 aprile 2009
Venerd 24 aprile 2009
Una rivista non una rivista senza articoli e Full Circle non fa eccezione. Ci servono levostre opinioni, storie e desktop. Servono anche recensioni (giochi, applicazioni ehardware), how-to e guide (su qualunque soggetto K/X/Ubuntu) e ogni domanda osuggerimento che vorreste rivolgere.
Inviateli a: [email protected]
mailto:[email protected]:[email protected]:[email protected]:[email protected]:[email protected]:[email protected]:[email protected]:[email protected]:[email protected]:[email protected]://ubuntuforums.org/forumdisplay.php?f=270http://wiki.ubuntu.com/UbuntuMagazine
8/4/2019 Full Circle Magazine 23
38/38
IILL GGRRUUPPPPOO DDII TTRRAADDUUZZIIOONNEE IITTAALLIIAANNOO
Questa rivista stata tradotta dal gruppo di traduzione italianodella comunit Ubuntu-it.Per ogni ulteriore informazione visitate il nostro sito web:http://wiki.ubuntu-it.org/Fcm
Aldo Latino
Cristina Franzolini
Fabrizio Giacosa
Lidia Pellizzaro
Marco Letizia
Michele Azzolari
Paolo Garbin
Teo Cocetta
Aldo Latino
Cristina Franzolini
Fabrizio Giacosa
Lidia Pellizzaro
Marco Letizia
Michele Azzolari
Aldo Latino
Hanno collaborato alla stesura di questo numero:
Paolo Garbin
Maurizio Moriconi
Entra anche tu nel gruppo di Full Circle!
La rivista Full Circle nasce da una idea della Comunitdegli utenti di Ubuntu e vive del lavoro di coloro chehanno scelto di dedicare parte del loro tempo libero
alla riuscita di questo progetto.: tutti possono collaborare, in unmodo o nellaltro. C chi scrive gli articoli, chi licorregge, chi li traduce, chi li impagina e cos via.
Anche tu puoi collaborare attivamente alla continuacrescita di questa rivista, il cui unico scopo la
.
Se conosci l'inglese e il Software Libero la tuapassione, puoi collaborare: scrivendo articoli in inglese; traducendo in italiano i testi; revisionando i testi; impaginandoli con Scribus.
Se vuoi saperne di pi,del nostro wiki.
http://wiki.ubuntu-it.org/Fcm/http://wiki.ubuntu-it.org/Fcm/Parteciparehttp://www.ubuntu-it.org/http://wiki.ubuntu-it.org/Fcm