MegaLab.it
Stampa Articolo
Aperiodico gratuito di informatica
 
20080829221338

GNU/Linux: Perché No?

a cura di mofo
18/08/2006 - articolo
Linux & Open Source - Alcune ottime ragioni per provare, almeno una volta, Linux sul vostro fedele scatolotto.

Una Lunga Introduzione: Filosofia Spicciola

"Hello everybody out there using minix -

I'm doing a (free) operating system (just a hobby, won't be big and professional like gnu) for 386 (486) AT clones."

Linus Torvalds - post su comp.os.minix - 1991.

La cosa più importante è dire cosa sia Linux.

Linus_torvalds_thumb_zoom.jpg Linux è un sistema operativo nato agli inizi degli anni'90 dal tentativo di Linus Torvalds di ricreare qualcosa di analogo a Minix, una versione "ridotta" di UNIX creata dal guru dell'informatica Andrew Tannenbaum.

Linux è open source, il che vuol dire, come già spiegato da Zane , che il suo codice sorgente (cioè lo strumento che i programmatori usano per parlare con il loro elaboratore) è di pubblico dominio: chiunque, io, voi, migliaia e migliaia di utenti in tutto il mondo... e persino Bill Gates possono accedere a ciò che Linux è. Inoltre, non solo è possibile leggerlo, ma anche modificarlo e a propria volta rilasciarlo nuovamente, purchè lo si faccia nel rispetto di alcune condizioni, dettate dalle apposite licenze con le quali il software open source viene distribuito.

Le licenze sono numerose e hanno nomi spesso impronunciabili. Si distinguono tra di loro per le differenti filosofie: GPL, LGPL (quella di OpenOffice.org), BSD, MIT... ci sono addirittura licenze specifiche per singoli software, alcune delle quali avete probabilmente accettato facendo finta di aver letto (la licenza di mozilla, Mozilla Public License ne è un esempio).

Richard_stallman.jpg Contrariamente a quanto siamo abituati a fare, ci si dovrebbe riferire al sistema operativo col termine GNU/Linux, e non solo con la seconda parte del nome. Ma di cosa si tratta? GNU (gh-nu, con G gutturale http://www.gnu.org/) è l'acronimo di "GNU's Not UNIX" ed è il nome del progetto che, nato nel 1983 a partire da un'idea dell'ex ricercatore dell'MIT Richard Stallman, si propone di sviluppare un sitema UNIX compatibile libero.

Free Software Foundation nasce da questa idea, con lo scopo di raccogliere fondi per la ricerca GNU, e di "preservare, proteggere e promuovere la libertà di usare, studiare, copiare, modificare e ridistribuire i programmi per computer, e di difendere i diritti degli utenti di Software Libero". Tuttavia, è stato solo molti anni dopo la fondazione, quando nel 1992 Linus Torvalds ha rilasciato la prima versione del suo Kernel come Free Software, che GNU e Linux sono diventati una cosa unica, e un Sistema Operativo completo. Ma GNU e FSF non si occupano solo di OS: al link http://directory.fsf.org/ potete trovare la lista completa del software fino ad ora rilasciato, che include fra i molti (quasi 5000) il famosissimo Desktop Environment GNOME (http://www.gnome.org/), il versatilissimo editor Emacs (sviluppato da Stallman in persona) e l'editor grafico Gimp (http://www.gimp.org/).

La licenza che più ci interessa è pertanto GNU GPL (GNU General Public License), rilasciata da Free Software Foundation e la cui corrente versione risale al Giugno 1991, e che esordisce più o meno cosi:

"The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. [... ] When we speak of free software, we are referring to freedom, not price. [... ]"

GNU GPL - http://www.gnu.org/licenses/gpl.html

"Le licenze della maggior parte del software sono progettate in modo di privarti della libertà di condividerlo e cambiarlo. Al contrario, GNU General Public License è diretta a garantire la tua libertà di condividere e cambiare il software libero, e a garantire che il software sia libero per tutti i suoi fruitori. [... ] Quando parliamo di software libero, ci riferiamo alla libertà, non al prezzo. [... ]"

Già, Linux non è necessariamente gratuito. Nulla, nemmeno questa licenza più importante, vieta a nessuno di vendere copie di Linux o di porzioni del suo codice, purchè questo sia ancora una volta concesso con la medesima licenza che invece, come già detto, permette a chiunque di ridistribuirlo gratuitamente, come avviene nella massima parte dei casi.

Quali sono le conseguenze di tutta questa libertà? Un'infinità. La prima, e a mio avviso più importante, è la vasta differenziazione del materiale prodotto: Linux ha circa 300 (trecento) diverse distribuzioni. Alcune sono gratis, alcune sono a pagamento, altre ancora sono gratis ma garantiscono assistenza solo a pagamento. Alcune includono migliaia di pacchetti, come Debian, che ne include più di 15000 (quindicimila), e il cui disco di installazione occupa circa 9 gigabyte, mentre altre sono talmente contenute da poter essere avviate da mini CD, o addirittura da penna USB. Damn Small Linux ne ha fatto la propria bandiera e nonostante si basi su un Kernel Debian (proprio lo stesso...) la sua installazione occupa esattamente 50 (cinquanta) megabyte. Tra questi estremi si colloca una miriade di sfumature, che si distinguono per filosofia oltre che per contenuti, anche perché è inutile nasconderlo, le due tematiche sono strettamente collegate. Vi basterà visitare le varie homepage dei progetti (e come vedrete non sarò parco nel fornirne i link) e questo vi salterà subito all'occhio. Oltre a libertà, le parole d'ordine sono efficienza, stabilità, sicurezza, facilità d'uso, standardizzazione e personalizzazione e dietro ad ogni bandiera, oltre ai veri e propri sviluppatori, ci sono intere comunità di utenti che sembrano rappresentare la vera e propria forza di questo Sistema Operativo.

A suon di "guerre di religione" e continui confronti, il free software va quotidianamente incontro a revisioni e migliorie e sta affrontando a testa alta (e a ragione) il confronto con gli altri sistemi operativi.

Se quando pensate a Linux e al suo utente medio, vedete monitor a fluorescenza e nerds con gli occhiali tenuti assieme da nastro adesivo, vi sbagliate di grosso. Stando all'immaginario collettivo GNU/Linux è qualcosa di incredibilmente difficile da usare ma la realtà (e si nota subito) è un'altra: la verità è che è richiesta una maggiore consapevolezza di quello che state facendo, perché in Linux l'utente comanda, e la macchina esegue. Quante volte vi è capitato di cercare di far fare qualcosa a Windows e vederlo imbizzarrirsi e lanciare sul vostro monitor una tempesta di messaggi di errore? Fra l'altro, nella maggior parte dei casi sono errori ai quali non siete in grado di trovare una soluzione differente dall'ennesimo "domenica formatto". Vi siete mai chiesti cosa succeda quando appare il Fatale Errore FFFFF-FFFFF 2615651203-gasp! -626736? E non vi infastidisce il fatto che nessuno lo risolva?

Per me è cominciato cosi e ho installato su un vecchio PC il mio primo Linux. Lo ammetto, ho dovuto provarci due volte, e ci ho messo una giornata buona a capire come configurare la scheda di rete. Colpa mia, che avevo il cervello vizzo per i troppi anni passati adagiato su un OS, che faceva le cose al posto mio. Ognuno dovrebbe installare Linux almeno una volta nella vita e provare dapprima la sensazione di vergogna di fronte alla propria incapacità, e poi, mano a mano, quella del risveglio post letargo che sopraggiunge, portando grosse soddisfazioni quotidiane. Personalmente son riuscito a far compiere "il grande passo" a una decina di persone, e tutte son rimaste sbalordite, e anche se in alcuni casi non rinunciano a Windows (sembrerà impossibile ma si può fare), ne riducono drasticamente l'utilizzo, e sono felici.

Dal Punto di Vista Tecnico

Tux.gifOk, vi ho fatto una bella predica e ora la smetto, anche perché il modo migliore per convincervi a provare Linux è dire quello che fa, senza parlare troppo di quello che gli altri non fanno.

Linux, in quanto clone di UNIX, è un Sistema Operativo multi-utente, multi-tasking con time sharing, il che vorrebbe dire che su una stessa macchina possono esserci "loggati" contemporaneamente più utenti (sia in rete locale che remota), che possono eseguire contemporaneamente più processi e che tutti gli utenti riceveranno la medesima porzione di risorse hardware.

E quindi io, dalla mia Box, posso aprire un terminale, connettermi al PC di un amico in Australia, avviare un trasferimento criptato via SSH e poi sfruttare la sua macchina per compilare dei sorgenti in C++, mentre agevolmente navigo con uno dei browser sulla mia box sul forum di MegaLab.it e scrivo questo articolo. Nel medesimo tempo un mio amico di Milano potrebbe connettersi alla mia macchina e avere accesso al mio server ftp e a file che io ho deciso di condividere con lui (e con gli altri ai quali ho dato modo di accedere al mio PC).

Magari penserete che per fare cose del genere servano dei super PC, con processori di ultima generazione e chissà quanti giga di RAM. Non è cosi. Sul sito di Slackware il direttore del progetto Patrick Volkerding racconta un aneddoto:

"The Box:

Curious about the machine running this site, eh? Also fairly high on the importance scale (for this site, anyway) is the box itself. The machine is a Pentium III, 600 MHz, with 512 megabytes of RAM. It runs (of course) Slackware Linux, and does an efficient and reliable job even with moderately old hardware. The slackware.com site has been known to run for well over a year without a reboot."

"Scatola:

Curiosi a proposito della macchina che ospita questo sito? Discretamente in alto nella scala di importanza (almeno per questo sito) è Scatola stessa. La macchina è un Pentium III, 600 MHz, con 512 megabyte di RAM. Utilizza (ovviamente) Slackware Linux, e fa un lavoro efficiente e considerevole anche con un hardware discretamente vecchio. Il sito slackware.com è noto per essere rimasto attivo per ben più di un anno senza un riavvio."

Stabile no? Ed è pure bello da vedere, oltre ad essere elegante nelle soluzioni. Personalmente non mi piacciono le interfacce grevi e piene di icone e sbrilluccicamenti, e quindi ho scelto un interfaccia leggera e modificabile al 100% che si chiama FluxBox (http://fluxbox.sourceforge.net/ la "foto" di Linus Torvalds che avete visto è uno screenshot del mio desktop), i cui sorgenti occupano circa due megabyte, ma ce n'è veramente per tutti i gusti, e passando per il più diffuso KDE (http://www.kde.org/) si può arrivare al folle XGL (http://www.novell.com/Linux/xglrelease/), un ambiente grafico completamente 3D con trasparenze reali del quale vi consiglio di guardare il filmato, perché eliminerà una volta per tutte l'idea che i prodotti Microsoft possano essere migliori, almeno esteticamente.

Vi ho parlato di versatilità, di stabilità del sistema e dell'aspetto estetico, manca quindi solo lo scoglio maggiore, la facilità d'uso.

GNU.gifSfatiamo un mito: Linux non è difficile da usare. Tuttavia, richiede che l'utente abbia voglia di leggere la documentazione, l'arma migliore che abbiamo. Non è possibile andare allo sbaraglio e sperare di produrre qualcosa, ed è in questo che le comunità di utenti Linux si distinguono, per la loro capacità di collaborare e per la disponibilità nei confronti di chi chiede aiuto. Oltre ai forum "personali" delle varie distribuzioni esistono i LUG (Linux User Group) e vastissime comunità e gruppi di discussione (http://www.linuxquestions.org/) oltre che siti di informazione costante (http://distrowatch.com/) e documentazione aggiornata (http://howtos.linux.com/).

Il Punto di Partenza

Di carne al fuoco mi pare di averne messa abbastanza. Ora parliamo di distribuzioni.

Come vi ho detto, le distribuzioni (le "versioni" di Linux sviluppate per la diffusione) sono più di 300. Giustamente (se siete riusciti ad arrivare fin qui) vi starete chiedendo quale sia la migliore (in assoluto) o perlomeno quella che più fa al caso vostro. Sarò sincero, due volte: di queste 300 ne conosco a malapena una dozzina. Sono più che sufficenti per indirizzare chiunque sia alle prime armi e voglia provare questa strada.

Personalmente (non si offenda nessuno, quella che segue è la mia modestissima opinione) distinguo le distribuzioni in due grandi categorie. Ci sono quelle facili (lasciando perdere le super facili) e ci sono quelle difficili.

Del primo gruppo fan parte quattro grosse distribuzioni, che ritengo facili per due motivi, e cioè perché sono semplici sia da installare che da configurare e utilizzare, sono in sostanza molto user-friendly:

Fedora.gifhttp://fedora.redhat.com/

Fedora è una distribuzione sponsorizzata da quella che probabilmente è la più famosa Linux Company al mondo, Red-Hat, che circa 3 anni fa ha deciso di dar vita a un nuovo progetto, sviluppando Fedora Core oltre alla già famosa Red Hat Linux. Fedora nasce dalla volontà di lavorare con la propria comunità di utenti e la versione corrente, identificata dal numero 5, è il frutto di un lavoro diretto a costruire un Sistema Operativo completo con solo software open source, richiamandosi a quello che potrebbe essere considerato l'Ideale del software libero, il tutto supportato da lunghissimi periodi di testing che garantiscono una stabilità invidiabile. Decisamente consigliata (non solo a chi è alle prime armi).

Ubuntu.gifhttp://www.ubuntu.com/

Kubuntu.gifhttp://www.kubuntu.org/

Delle varie versioni di *ubuntu le due da me linkate sono senza alcun dubbio le più diffuse. Da un certo punto di vista sono identiche (si basano sul medesimo Kernel Debian Sid, mica pizza e fichi!!!) e differiscono principalmente per la scelta dell'interfaccia grafica di default. Ubuntu usa GNOME, mentre Kubuntu usa KDE: non saprei consigliarvi quale scegliere, sono entrambe ottime e alla fine tutto si riduce a una questione di gusti, ma Linus Torvalds in persona si è sentito in dovere di indirizzare la gente verso KDE. Se proprio non si sa scegliere si possono comunque installare entrambi i Desktop Environment.

Mandriva.gifhttp://www.mandriva.com/

Mandriva è nata poco meno di 10 anni fa con un obbiettivo ben chiaro. Offrire una versione di Linux con un installazione e una configurazione a prova di scimmia. Ci sono riusciti prendendo Red Hat Linux, introducendo KDE come ambiente grafico di default e aggiungendo un installer grafico di chiara lettura, e integrando tutto con un incredibile sistema di formattazione e di riconoscimento delle periferiche e software sempre aggiornatissimo (un pro, e un contro, visto che più aggiornato è il software e più facile è andare incontro ai bug)

Suse.gifhttp://en.opensuse.org/

Suse nasce come versione tedesca di Slackware Linux, ma ha ben presto intrapreso una strada tutta sua fino ad essere acquisita Novell. A questo punto il progetto Suse ha assunto un aspetto che si può definire solo col termine "professionale", garantendo un ineccepibile supporto per i propri utenti e la nomea di "incredibilmente completa".

Del secondo gruppo fan parte tre onorate distribuzioni, da me ritenute difficili perché hanno un'installazione molto più articolata e customizzabile e per la profondità e complessità nell'uso quotidiano. E se da un certo punto di vista debian non è cosi proibitiva, installare gentoo è le prime volte un'impresa che può diventare frustrante:

Gentoo.gifhttp://www.gentoo.org/

Gentoo è assolutamente incredibile, ed è quello che ogni Linuxista sogna di installare con successo almeno una volta nella vita. Il CD di installazione sta in poco meno di 50 mega perché dopo l'installazione del Kernel sarà possibile ottenere tutte le altre applicazioni sfruttando i cosiddetti "ports", derivati dai progetti di BSD. In questa maniera tutto il software viene compilato in maniera da aderire come un guanto alla macchina sul quale viene installato, il che si traduce con due parole: velocità e stabilità. Purtroppo anche a utenti esperti sono necessari alcuni giorni per la sola compilazione del Kernel.

Slackware.gifhttp://www.slackware.com/

Slackware è la più vecchia fra tutte le "distro" in attività. Da affezionato utente ve la sconsiglio con tutto il cuore: mentre tutte le altre distro han cercato di porgere una mano a possibili utenti spaventati dalle difficoltà di un'installazione Slack ha mantenuto una linea dura. Niente fronzoli, nessuna interfaccia grafica per le configurazioni, eliminando tutto quello che potrebbe compromettere l'obiettivo principe: avere un Sistema Operativo a prova di bomba, inattaccabile. Tutto si fa dall'anima di Linux, la shell. Ve lo garantisco io: si impara di più in un mese con questa che in un anno con una qualsiasi altra distro. Provatela, e se saprete domarla non saprete più farne a meno. Ci sono due detti nel mondo di Linux: "se hai bisogno di una mano con il tuo Linux trova un utente Slackware" e "una volta in Slackware è per sempre".

Debian.gifhttp://www.debian.org/

Debian è un universo. In continua espansione fra l'altro. Basti pensare a come è strutturata: l'albero delle directory è costituito da tre rami, "stable", "testing" e "unstable" (o "sid" quello dal quale derivano le varie ubuntu) che rappresentano i vari gradi di sviluppo del software in uso il quale, sottoposto a continuo controllo e utilizzo, risale l'albero. Tutto questo garantisce al contempo software molto stabile (il che va a braccetto con "datato") e software molto recente (il che va a braccetto con instabile). Il tutto ovviamente sviluppato, al pari di Fedora, nel più puro ideale open source.

Al di fuori di questi gruppi esistono altre distribuzioni (anche se il termine in questo caso non è proprio calzante) che meritano di essere menzionate:

Knoppix.gifhttp://www.knoppix.org/

FreeBSD.gifhttp://www.freebsd.org/

La prima, Knoppix, è la più famosa fra le cosidette "Live Distro", quelle che possono essere utilizzate senza essere installate, in questo caso direttamente da CD. FreeBSD invece appartiene a un altro grande gruppo (definito col nome BSD, acronimo di Berkeley Software Distribution), che viene accomunato a Linux per una ragione piuttosto ovvia: Linux è un clone di UNIX, invece BSD ne è un diretto discendente, e seguendo analogamente la filosofia del free software sfrutta le analoghe applicazioni open source utilizzate dal suo "cugino".

Conclusioni

È palese, non sono fatto per scrivere articoli. Ma ho cercato di mettere sotto i vostri occhi, in un discorso di ampio respiro e in maniera comunque sintetica (figuratevi se mi fossi dilungato), tutto ciò che il mondo dell'open source ha da offrire all'utente medio.

Linux è nato da una piccola idea personale (all'esordio di Torvalds sarebbe dovuto essere "solo un hobby, non sarà mai grande e professionale come GNU") e forse non sarò stato convincente, ma spero che questo noiosissimo articolo vi abbia almeno messo una pulce nell'orecchio e vi spinga a curiosare nei vari link che vi ho proposto.

Vi invito, inoltre, a venire a fare domande e a discutere questi temi (o a insultarmi per la mia incompetenza) sul nostro forum, magari anche per proporci temi e problematiche per i prossimi articoli.

MegaLab.it rispetta la tua privacy. Per esercitare i tuoi diritti scrivi a: privacy@megalab.it .

Copyright 2008 MegaLab.it - Tutti i diritti sono riservati