Linux

Da Wikipedia, l'enciclopedia libera.
Versione del 22 gen 2016 alle 10:54 di Dega180 (discussione | contributi) (Annullate le modifiche di 31.198.0.9 (discussione), riportata alla versione precedente di Botcrux)
Vai alla navigazione Vai alla ricerca
Tux, la mascotte del kernel Linux, nata mediante uno scambio di e-mail in una mailing list pubblica.

Linux (/ˈlinuks/[1], pronuncia inglese [ˈlɪnʊks][2]) è una famiglia di sistemi operativi di tipo Unix-like, rilasciati sotto varie possibili distribuzioni, aventi la caratteristica comune di utilizzare come nucleo il kernel Linux.

Oggi molte società importanti nel campo dell'informatica come IBM, Sun Microsystems, Hewlett-Packard, Red Hat, Canonical e Novell hanno infatti sviluppato e pubblicato, e continuano a farlo, sistemi Linux.

Storia

La nascita

Linus Torvalds

Il kernel Linux vede la luce nell'agosto 1991 grazie al giovane studente finlandese Linus Torvalds che, appassionato di programmazione, era insoddisfatto del sistema operativo Minix (sistema operativo unix-like destinato alla didattica, scritto da Andrew Tanenbaum, professore ordinario di Sistemi di rete all'università di Amsterdam), poiché supportava male la nuova architettura i386 a 32 bit, all'epoca tanto economica e popolare. Così Torvalds decise di creare un kernel unix con lo scopo di divertirsi e studiare il funzionamento del suo nuovo computer, che era appunto uno 80386.

Inizialmente, Linux (il sistema operativo basato sul kernel programmato da Torvalds) per girare utilizzava, oltre al kernel di Torvalds, l'userspace di Minix. Successivamente, Linus decise di rendere il sistema indipendente da Minix, anche perché non ne gradiva la licenza che lo rendeva liberamente utilizzabile solo a fini didattici, e decise, quindi, di sostituire quella parte del sistema operativo col software del progetto GNU. Per fare ciò, Torvalds cambiò la licenza e adottò la GPL, che tra l'altro considerava buona per il suo sistema operativo a prescindere dal software GNU stesso.

Linux, all'inizio, era un semplice emulatore di terminale scritto in C e assembly, e non aveva bisogno di appoggiarsi a un sistema operativo. L'emulatore di terminale avviava e gestiva due thread: uno per mandare segnali alla porta seriale, uno per riceverli; quando poi Linus ebbe bisogno di leggere e scrivere file su disco, questo emulatore fu esteso in modo che potesse gestire un file system. Lentamente, questo programma si trasformò in un intero kernel in grado di gestire un sistema operativo e Linus iniziò a documentarsi sulle specifiche POSIX, chiedendo assistenza sul newsgroup[3]. La prima versione del kernel Linux, la 0.01, fu pubblicata su Internet il 17 settembre 1991 e la seconda nell'ottobre dello stesso anno.

Torvalds preferiva chiamare Freax il kernel a cui stava lavorando ma Ari Lemmke, assistente alla Helsinki University of Technology che gli aveva offerto lo spazio FTP per il progetto (ftp.funet.fi), preferì assegnare alla subdirectory dedicata il nome alternativo di lavorazione Linux[4].

Sin dalla versione 0.01 si poteva compilare e far partire la shell GNU Bash. Fino alla versione 0.10 era richiesto un computer con Minix per configurare, compilare e installare Linux perché quest'ultimo usava il filesystem del sistema sul quale si appoggiava; dalla versione 0.11 poteva essere compilato da Linux stesso. Presto i sistemi Linux superarono Minix in termini di funzionalità: Torvalds ed altri sviluppatori della prima ora di Linux adattarono il loro kernel perché funzionasse con i componenti GNU ed i programmi in user-space per creare un sistema operativo completo, pienamente funzionante e libero.

Il rapporto con la rete

File:Richard Matthew Stallman.jpeg
Richard Stallman

Nella primavera del 1992 l'hacker Orest Zborowski riuscì a rendere eseguibile il server X sulla versione 0.12 di Linux. Per far ciò, Orest dovette implementare tutta la struttura degli Unix Domain Socket indispensabili a X Window e quindi un primo livello socket sul quale venne poi costruita tutta l'infrastruttura di rete di Linux.

In realtà, il tutto era imbastito in maniera un po' caotica e non era ben integrato all'interno del kernel, ma Linus accettò comunque la patch perché con essa era possibile sia utilizzare X, sia utilizzare tale infrastruttura per dotare Linux di uno stack di rete.

Entusiasta della novità, Linus rilasciò, dopo la versione 0.13, la versione 0.95, senza pensare a tutti i problemi di sicurezza che la rete avrebbe comportato. Per rimediare alla leggerezza, nei due anni che trascorsero dalla 0.95 alla 1.0, Linus dovette utilizzare sia un ulteriore numero per indicare il livello di patch sia le lettere dell'alfabeto (sino alla versione 0.99.15Z, 0.99 15º livello di patch, revisione Z).

La versione 1.0

Il 12 marzo 1994 il 16º livello di patch del kernel 0.99 divenne Linux 1.0. Fu lo stesso Linus Torvalds a presentare la prima versione stabile all'Università di Helsinki.

Gli ambienti desktop e gli anni 2000

Desktop KDE SC 4.10

Nel 1996 fu scelto come logo ufficiale di Linux un pinguino disegnato da Larry Ewing, chiamato Tux come abbreviazione di Torvalds Unix.

Il compito di fornire un sistema integrato, che combini tutte le componenti di base con le interfacce grafiche (come per esempio GNOME o KDE, basate a loro volta sulla presenza dell'X Window System) e con il software applicativo, è svolto dalle distribuzioni GNU/Linux.

Per quanto riguarda il kernel vero e proprio, Torvalds già nel settembre 2009 dichiarò che esso è diventato "gonfio e grosso", non così veloce e scattante come quando l'aveva progettato[5]. Riconosce, però, che questo "ingrassamento" non va visto solo come una cosa negativa, perché significa che Linux ha molta più compatibilità rispetto al passato[6].

Nel luglio del 2011, per festeggiare il 20º anniversario della nascita di Linux, Torvalds decise di rilasciare il kernel Linux, passando ad un sistema di numerazione a 2 cifre, pubblicando la versione 3.0 del kernel. L'ultima release della serie 2.6 è stata la 2.6.39. Il 12 aprile 2015 è stata pubblicata la versione 4.0 che oltre a risoluzioni di bug aggiunge supporto a nuovo hardware (come intel quark) e le live patching, ovvero la possibilità di aggiornare il kernel e aggiornare punti critici del sistema senza riavviare, questa feature è dovuta anche alla collaborazione di RedHat e SUSE.

L'ultima versione stabile del kernel Linux è la 4.3.3 ed è stata resa disponibile al pubblico il 12 dicembre 2015. L'ultima versione attualmente in sviluppo del kernel Linux è la 4.4; il suo sviluppo è sostenuto dalla Linux Foundation, un'associazione senza fini di lucro nata nel 2007 dalla fusione di Free Standards Group e Open Source Development Labs.[7]

Caratteristiche

Grazie alla portabilità del kernel Linux sono stati sviluppati sistemi operativi Linux per un'ampia gamma di dispositivi:

Esistono inoltre sistemi Linux installabili anche come server, router e sistemi embedded.[8][9][10][11][12]

Attualmente Linux è molto usato, soprattutto come sistema operativo su server, in ambienti di produzione o in dispositivi embedded (PVR, telefoni ecc.), e ha una discreta diffusione in ambiente desktop (circa il 3% dei PC). Anche l'iniziale ampia diffusione sui netbook ha lasciato il passo a Windows, pur mantenendo una quota di penetrazione significativamente superiore a quella dei pc desktop/notebook.

Il kernel

Lo stesso argomento in dettaglio: Kernel e Linux (kernel).
Caricamento del kernel Linux 2.6.24.4 su Knoppix 5.3.1

Il kernel Linux, uno dei più riusciti esempi di software open source,[13] costituisce il nucleo dei sistemi operativi della famiglia di Linux.[14].

Il kernel Linux è stato rilasciato sotto la licenza libera GNU GPL,[15](insieme ad alcuni firmware con varie licenze) ed è sviluppato da collaboratori di tutto il mondo. Ogni giorno lo sviluppo avviene sfruttando la mailing list di Linux.

Il kernel Linux fu inizialmente creato nel 1991 da alcuni studenti di informatica finlandesi[16] tra cui Linus Torvalds, il capogruppo. Linux aumentò in modo repentino i suoi sviluppatori ed utilizzatori che aderivano al progetto del software libero e contribuivano allo sviluppo del nuovo sistema operativo.[17]

Il ramo di sviluppo principale del kernel Linux prevede che esso contenga anche alcune parti non-libere, offuscate od oscurate come ad esempio alcuni driver. Il progetto Linux-libre si propone come variante completamente libera di Linux, da cui sono nate diverse distribuzioni completamente libere.[18]

File system

Il file system utilizzato dai sistemi Linux fa riferimento al Filesystem Hierarchy Standard, uno standard per file system per sistemi Unix e Unix-like di tipo ad albero gerarchizzato.

Installazione

Un sistema Linux può essere installato stand-alone su disco rigido oppure su partizione primaria e logica per un hard-disk precedentemente partizionato. Alternativamente può essere installato su chiavetta USB o CD ed avviato opportunamente in fase di boot del computer. Tipicamente distribuzioni Live CD e Live USB una volta avviate dal loro supporto di memorizzazione forniscono supporto all'utente per l'installazione permanente su disco fisso nelle modalità di cui sopra. Opzionalmente, i sistemi Linux utilizzano anche di una partizione di swap per la memoria virtuale utile per situazioni dove la memoria RAM non è sufficiente o anche per l'ibernazione. Altra modalità tipica di installazione comune anche agli altri sistemi operativi è il ricorso alla virtualizzazione.

Utilizzo ed applicazioni pratiche

Il kernel Linux gira su svariate architetture[19]: dai cellulari ai PC, ai supercomputer[20]. Speciali distribuzioni esistono per piccole architetture per mainstream. Il fork del kernel ELKS può girare su un Intel 8086 o su un Intel 80286 con microprocessore a 16-bit, mentre il fork del kernel µClinux può girare su sistemi senza MMU. Il kernel gira anche su architetture che erano state progettate per utilizzare il proprio sistema operativo, come i computer Macintosh della Apple (con architetture PowerPC e Intel), PDA, console, lettori MP3 e telefoni cellulari.

Amministrazione

L'amministrazione, da parte di un utente o un sistemista, di un sistema Linux può avvenire per via grafica attraverso un pannello di controllo dell'interfaccia grafica del distribuzioni lato desktop oppure direttamente da riga di comando o terminale virtuale tramite ricorso ad un serie di comandi. Quest'ultima modalità è tipica delle distribuzioni server che per motivi di semplicità e di carico non presentano interfaccia grafica (per l'elenco e descrizione dei comandi vedi fondo voce).

Vantaggi e svantaggi

Numerose distribuzioni sono completamente gratuite, per l'utente privato e per le aziende. Esistono società (Red Hat, Canonical, e altre) che, dietro compenso, forniscono supporto tecnico per le proprie distribuzioni.

A questo si aggiunge la possibilità di modificare il sistema migliorando in proprio il codice sorgente, fornito con la licenza GPL, e di distribuirlo gratuitamente e legalmente, sotto forma di nuove versioni.

Il dibattito sui vantaggi e svantaggi di Linux è spesso ricompreso all'interno della comparazione tra Microsoft Windows e Linux, molto nota agli addetti ai lavori.

Le distribuzioni

Lo stesso argomento in dettaglio: Distribuzione GNU/Linux.

Non esiste un'unica versione di Linux ma esistono diverse distribuzioni (chiamate anche distro), solitamente create da comunità di sviluppatori o società, che scelgono, preparano e compilano i pacchetti da includere. Tutte le distribuzioni condividono il kernel Linux (sia pur in versioni diverse e spesso personalizzate), mentre si differenziano tra loro per il cosiddetto "parco software", cioè i pacchetti preparati e selezionati dagli sviluppatori per la distribuzione stessa, per il sistema di gestione del software e per i servizi di assistenza e manutenzione offerti.

Esistono distribuzioni eseguibili direttamente da CD o pennetta USB: sono chiamate distribuzioni live o desktop CD. Una distribuzione live su CD o USB consente di provare la distribuzione ed eventualmente procedere all'installazione del sistema sul proprio computer.

Distribuzioni più diffuse

Linea temporale che mostra lo sviluppo delle varie distribuzioni Linux.

In ordine alfabetico, segue la lista delle distribuzioni più diffuse e conosciute:

  • Android - È una distribuzione per dispositivi mobili (principalmente touch screen) inizialmente sviluppata dalla Startup Android Inc. e poi nel 2005 acquistata dalla Google Inc. che la supporta tuttora.
  • Arch Linux - È leggera, veloce, estremamente scalabile e adattabile alle proprie esigenze. Ottimizzata per i686 e X86-64.
  • Backtrack - Offre tools per fare test di penetrazione. Fino alla versione 3.0 derivava dalla distro WHAX, dalla versione 4.0 è invece basata su Ubuntu. Dopo l'ultima versione, pubblicata nell'agosto 2012, il progetto viene fermato a causa della sua architettura ormai datata e il progetto continua nella nuova distribuzione Kali Linux, più performante, più intuitiva e inoltre basata su Debian.
  • CentOS - È una distribuzione basata sui sorgenti di Red Hat Enterprise Linux, quindi uguale ad essa in tutto e per tutto se non per i loghi e il nome che vengono cambiati in quanto marchi registrati. È usata per lo più in ambito server.
  • Debian - Offre un ottimo sistema di gestione dei pacchetti software (in formato deb), compilati per 11 architetture differenti: Alpha, AMD64, ARM, HP PA-RISC, Intel x86, Intel IA-64, MIPS (big endian), MIPS (little endian), PowerPC, IBM S/390, SPARC. Viene definita per questo "il sistema operativo universale". Ha un'installazione disponibile sia in modalità testuale che grafica. I repository di Debian generalmente contengono solo software libero, ma è possibile attivare repository per installare software proprietario.
  • Fedora - Distribuzione non commerciale sponsorizzata da Red Hat. Piuttosto curata nell'aspetto, viene aggiornata frequentemente con le ultime novità. Il sistema di pacchettizzazione è basato su RPM Package Manager e l'installazione è disponibile sia in modalità testuale che grafica.
  • Gentoo Linux - Distribuzione non commerciale basata sui sorgenti che permette di ottimizzare e rendere estremamente flessibile il sistema. Implementa un sistema di porting derivato da *BSD. L'installazione avviene manualmente, seguendo l'apposito manuale. Ulteriori punti di forza della distribuzione sono l'ottima documentazione e la comunità molto disponibile.
  • Knoppix - La distribuzione live CD più famosa. Nata per uso forense, deriva da Debian. Molto indicata per i principianti, permette di avere un sistema completo avviabile direttamente da CD-ROM o DVD che permette, tra i vari usi, l'utilizzo dimostrativo, come tool di diagnostica, come test di compatibilità hardware, ecc. Presenta alcune varianti come Eduknoppix.
  • Linspire - Era una distribuzione commerciale derivata da Debian che puntava alla facilità d'installazione e d'utilizzo anche da parte di principianti.
  • Mandriva - Conosciuta come Mandrake fino al 2005, anno in cui la Mandrakesoft ha acquisito Conectiva. È una tra le distribuzioni più diffuse e maggiormente orientate all'utente desktop. È distribuita sia in forma gratuita che come prodotto commerciale (in questo caso include alcuni pacchetti proprietari), con nuove release a cadenza approssimativamente annuale. Ha un sistema di pacchettizzazione basato su RPM.
  • Mint - Derivata da Ubuntu, comprende alcuni software personalizzati per installazione e gestione, un menù principale che richiama quello di Windows Vista, e comprende codec multimediali preinstallati per DVD, MP3 ecc.
  • OpenSUSE - È una distribuzione non commerciale nata dall'apertura allo sviluppo comunitario di SUSE.
  • Puppy - Distribuzione molto leggera, è disponibile in versione Live CD. Occupa poche risorse e spazio su disco ed è adatta a PC poco potenti o datati. Se la quantità di RAM è sufficiente (256 MB o più), può girare integralmente in memoria.
  • Red Hat Linux Enterprise - È la distribuzione commerciale più diffusa. Leggera, non viene aggiornata alle ultime novità ma predilige versioni di kernel e componenti stabili e collaudate. Gli sviluppatori di Red Hat hanno realizzato il diffuso sistema di pacchetti RPM.
  • Sabayon - Sabayon è una distro basata su Gentoo che si caratterizza per la compresenza di due package manager (binario e sorgente). È disponibile in diverse versioni con KDE, GNOME, XFCE, LXDE, Enlightenment, Fluxbox.
  • Slackware - Creata nel 1993, viene spesso considerata la distribuzione più vicina a Unix e agli standard Linux. È molto stabile, versatile e mira alla semplicità: gli interventi sul codice sono minimi, nel rispetto delle intenzioni degli autori originali. Il sistema di gestione dei pacchetti affida all'utente la risoluzione delle dipendenze, mentre il software non incluso va compilato dai sorgenti.
  • SLAX - Deriva direttamente da Slackware e ne conserva le caratteristiche di velocità, stabilità, leggerezza e ampia configurabilità in base alle varie esigenze del singolo utente. Adotta un approccio modulare avanzato.
  • SUSE - Celebre distribuzione europea, molto usata a livello aziendale ma rivolta anche all'utente Desktop. Anch'essa basata su RPM, è un prodotto commerciale. È basata sul lavoro del progetto OpenSUSE.
  • Ubuntu - Distribuzione derivata da Debian, è salita alla ribalta per la facilità d'installazione e d'utilizzo e per la disponibilità di frequenti aggiornamenti della versione stabile. Utilizza il gestore pacchetti APT, come Debian, e i desktop Unity e GNOME. Ne esistono numerose varianti ufficiali, tra cui Kubuntu, Xubuntu, Lubuntu, Edubuntu e la variante non ufficiale Ubuntu-Mate (mate è un fork di Gnome 2 il quale ne riprende quasi fedelmente le impostazioni di Desktop Enviroment)

Distribuzioni completamente libere

La maggioranza delle distribuzioni Linux non contiene esclusivamente software libero ma anche, in misura ridotta, software proprietario (ad esempio driver, codec, tool e applicazioni), spesso per mancanza di software libero ugualmente funzionale. Tuttavia alcune distribuzioni hanno scelto di non includere software proprietario e di utilizzare Linux-libre, una versione del kernel Linux completamente libera. Infatti Linux contiene parti di codice oscurate e sotto licenze non libere.

La Free Software Foundation (FSF), sulla base delle Guidelines for Free System Distributions[21], ha stilato una lista di distribuzioni Linux che contengono esclusivamente software libero[22][23].

Lista in ordine alfabetico:

  • gNewSense - Distribuzione basata su Debian e Ubuntu e supportata dalla FSF.
  • BLAG[24] (le Brixton Linux Action Group) - Distribuzione Linux basata su Fedora.
  • Dragora[25] - Distribuzione indipendente basata sul concetto di semplicità.
  • Dynebolic - Distribuzione specializzata nell'editing di audio e video.
  • Kongoni[26] - Distribuzione africana.
  • Musix[27] - Distribuzione basata su Knoppix, rivolta alla produzione audio.
  • Parabola GNU/Linux-libre[28] - Distribuzione basata su Arch che cura particolarmente la semplicità della gestione dei pacchetti e del sistema.
  • Trisquel[29] - Distribuzione orientata alle piccole imprese, agli usi domestici e ai centri educativi. Basata sui rilasci LTS di Ubuntu, è facile da usare, installare e configurare.
  • Ututo[30] - Distribuzione basata su Gentoo, è stato il primo sistema Linux completamente libero riconosciuto dal Progetto GNU.
  • Venenux[31] - Distribuzione rivolta principalmente ad utenti latinoamericani.

Distribuzioni per bambini

La scrivania della versione 4.00 della distribuzione Trisquel, completamente libera.

Si tratta di distribuzioni che forniscono raccolte preinstallate di giochi educativi in ambienti adatti a bambini a partire dall'età prescolare (in alcuni casi a partire dai due anni) fino agli inizi dell'adolescenza. Tutte le distribuzioni di questo tipo adattano l'ambiente da un punto di vista grafico, ed alcune semplificano anche in maniera consistente le modalità di utilizzo dell'ambiente. Normalmente vengono fornite anche delle raccolte di giochi di esclusivo divertimento, ma a volte vengono preinstallati anche dei programmi per sviluppare la creatività.

Non di rado vengono integrati dei filtri famiglia per proteggere i bambini dall'ottenimento di pagine inappropriate durante la navigazione in Internet. I giochi educativi inclusi non differiscono molto tra una distribuzione e l'altra, e comprendono giochi per l'apprendimento dell'uso del mouse e della tastiera, dell'alfabeto e delle sillabe, dei numeri e delle operazioni, di abilità di memorizzazione e ragionamento, fino ad attività più complesse come lo studio della geografia e delle scienze.

Ecco alcune delle distribuzioni per bambini attualmente esistenti:

  • DoudouLinux - Distribuzione basata su Debian e multilingue, fa della semplicità d'uso e della adattabilità all'età del bambino i suoi punti di forza. Le attività più semplici sono utilizzabili a partire dai due anni, mentre i bambini più grandi troveranno tra le altre cose semplici programmi per lo sviluppo della creatività e navigheranno in internet protetti da un filtro famiglia. In arrivo anche uno strumento per la limitazione da parte dei genitori del tempo di uso del PC. Non richiede l'installazione, potendo essere usata da CD o da chiave USB.
  • Edubuntu - Distribuzione basata su Ubuntu e supportata da Canonical.
  • Edupup - Distribuzione basata su Puppy Linux.
  • Foresight kids - Distribuzione basata su Foresight Linux.
  • Linux KidX - Distribuzione basata su Slackware, disponibile in portoghese ed inglese.
  • PaiX - Distribuzione basata su Mandriva, è in fase sperimentale.
  • Qiko Junior - Distribuzione basata su QiLinux (trasformatasi in Tuga). La casa madre che la rilasciava (non scaricabile gratuitamente e provvista anche di un manuale d'uso cartaceo) è fallita.
  • Qimo 4 kids - Distribuzione basata su Ubuntu e multilingue, è una distribuzione completa ed in avanzato stadio di sviluppo, che può essere anche installata come desktop environment aggiuntivo su una distribuzione Ubuntu preesistente. Non avendo sviluppato consistenti semplificazioni dell'interfaccia e delle modalità d'uso potrebbe però risultare un po' ostica per i bambini più piccoli.
  • Trisquel EDU[32] - Versione di Trisquel GNU/Linux progettata per essere usata in qualsiasi scuola.
  • Trisquel TOAST - TOAST, o "Trisquel On A Sugar Toast", è un'edizione del sistema operativo completamente libero Trisquel GNU/Linux che usa l'ambiente didattico Sugar. Sugar è l'interfaccia utente sviluppata da SugarLabs per i laptop di "One Laptop per Child XO" e progettata sui concetti di apprendimento interattivo attraverso l'esplorazione. È stata impiegata con successo in molti paesi e contiene al suo interno un vasto catalogo di attività didattiche.
  • UKnowforkids - Distribuzione basata su Arch Linux, disponibile solo in inglese ma con requisiti minimi hardware bassi.

Anche pensate per i bambini sono le distribuzioni appositamente concepite per le scuole, ma esse non sono espressamente concepite per l'uso sul singolo calcolatore domestico, ma piuttosto su reti scolastiche di calcolatori ed inoltre si rivolgono a bambini in età scolare. A tal proposito si veda la pagina Edutainment, dove si troverà anche una lista delle distribuzioni ad uso scolastico.

Distribuzioni per PC datati

Gestori di pacchetti

La finestra del sistema di gestione dei pacchetti di Ubuntu e Trisquel

Le distribuzioni Linux sono normalmente composte da pacchetti (packages), ed ognuno di essi contiene una specifica applicazione o componente: ad esempio, ci possono essere pacchetti contenenti una libreria per la gestione di un formato di immagini, oppure una serie di font, oppure un browser web così come un qualsiasi altro programma. Un pacchetto è fornito normalmente come codice compilato, e la sua installazione o rimozione è gestita in maniera più sofisticata rispetto ad un semplice programma di archiviazione come tar.

Il programma preposto a queste funzioni è detto il sistema di gestione dei pacchetti (package management system o PMS) della distribuzione. Ogni pacchetto dedicato ad un PMS contiene delle meta-informazioni come descrizione, versione, dipendenze, ecc. Il sistema di gestione dei pacchetti tiene in considerazione queste meta-informazioni per permettere ricerche, aggiornamenti automatici a versioni più aggiornate, per controllare che tutte le dipendenze di un pacchetto siano soddisfatte e/o soddisfarle automaticamente.

Distribuzioni diverse hanno gestori di pacchetti diversi, ed i principali sono:

  • rpm, adesso RPM Package Manager ma in origine Red Hat Package Manager, originariamente introdotto da Red Hat ma adesso usato in molte distribuzioni.
  • deb, Debian package, originariamente introdotto da Debian, usato anche dalle sue distribuzioni derivate.
  • .txz (sostituisce il precedente .tgz o tar.gz), standard tar + xz, a volte con ulteriori file di controllo, usato da Slackware ed altri, o a volte per la distribuzione di pacchetti molto semplici "fatti in casa".
  • ebuild, file contenente informazioni su come ottenere, compilare ed installare un pacchetto nel sistema Portage di Gentoo Linux attraverso il comando emerge. Tipicamente queste sono installazioni basate sulla compilazione di sorgenti, nonostante anche alcuni pacchetti binari possano essere installati in questo modo.
  • recipe, file contenente informazioni su come ottenere, decomprimere, compilare ed installare un pacchetto nella distribuzione Gobo Linux. Questo sistema è simile a quello di Gentoo.
  • Autopackage, un gestore per creare un sistema di installazione indipendente ed uguale per tutte le distribuzioni Linux.

È presente inoltre la possibilità di compilare in proprio le applicazioni direttamente dai sorgenti disponibili, qualora non siano disponibili i binari precompilati. Sebbene la compilazione possa comportare alcune difficoltà, l'applicazione sarà sicuramente ottimizzata per il sistema sulla quale viene eseguita. Seguendo questa logica alcune distribuzioni (es. Gentoo) offrono la possibilità di compilare l'intero sistema operativo.

Versioni embedded

La classica schermata iniziale di un sistema operativo Android
Lo stesso argomento in dettaglio: Embedded Linux.

La possibilità di intervenire sul kernel Linux e la comparsa di molti appassionati ne hanno suggerito l'utilizzo nell'elettronica dei dispositivi integrati. Infatti a partire dal 2009, è possibile reperire apparecchiature commerciali (quali router, smartphone o tablet) dotate di sistemi Linux fortemente ridotti. Esistono anche distribuzioni Linux pensate per essere utilizzate su tali sistemi embedded, ad esempio OpenWRT, FreeWRT, Android (sviluppato da Google), MeeGo o Ångström.

Sviluppo e promozione

La Linux Foundation e il Linux Standard Base

Lo stesso argomento in dettaglio: Linux Foundation e Linux Standard Base.

La Linux Foundation è un'organizzazione formata dai maggiori produttori di software ed hardware il cui obiettivo è di migliorare l'interoperabilità tra le diverse distribuzioni.

Allo scopo, essa ha proposto una standard aperto e gratuito, chiamato Linux Standard Base (ufficializzato con lo standard ISO/IEC 23360) che definisce una comune ABI (Interfaccia Binaria per le Applicazioni), un unico sistema di pacchettizzazione ed una struttura per il file system che preveda le stesse convenzioni sui nomi e le stesse directory basilari in ogni sistema Linux.

Esso al momento costituisce lo standard con maggiore appeal, al quale tutte le maggiori distribuzioni si stanno adeguando.

Le distribuzioni possono essere specializzate per differenti utilizzi: supporto a particolari architetture, sistemi embedded, stabilità, sicurezza, localizzazione per una particolare regione o lingua o il supporto per le applicazioni in real-time. In più, alcune distribuzioni includono solamente software libero. Attualmente, oltre trecento distribuzioni sono sviluppate attivamente, con circa una dozzina di esse che sono più famose per l'utilizzo giornaliero[33].

I LUG

Lo stesso argomento in dettaglio: Linux User Group.

Un Linux User Group (LUG), o anche "Linux Users Group" e "Linux Users' Group" è un gruppo formato da sostenitori e promotori del sistema operativo Linux.

I LUG sono spesso organizzati come associazioni senza scopo di lucro e la loro principale missione è contribuire alla diffusione del software libero e in particolare dei sistemi operativi basati sul kernel Linux.

Il Linux Day

Logo ufficiale del Linux Day.
Lo stesso argomento in dettaglio: Linux Day.

I LUG italiani ogni anno promuovono ed organizzano il Linux Day, una manifestazione che ha lo scopo di promuovere il sistema operativo Linux e il software libero, ed avvicinare ed aiutare i nuovi utenti, con un insieme di eventi contemporanei organizzati in diverse città d'Italia.

La Italian Linux Society (ILS) stabilisce la data del Linux Day e, a volte, fornisce proprio materiale pubblicitario. La responsabilità dei singoli eventi locali è lasciata ai rispettivi gruppi organizzatori, che hanno libertà di scelta per quanto riguarda i dettagli delle iniziative locali, nel rispetto delle linee guida generali definite da ILS.

Giornate tematiche sul software libero e l'open source erano già state sperimentate in Italia sin dal 1999, grazie alle iniziative del gruppo ErLug (Emilia-Romagna Linux User Group). Fu grazie a queste esperienze, e i dibattiti che ne seguirono, che vennero definite le linee guida dei LinuxDay, successivamente gestite da ILS sul territorio nazionale. Le prime manifestazioni in questa nuova veste vennero proposte a partire dal 2001, per iniziativa di Davide Cerri di ILS[34], con lo scopo di valorizzare la rete dei LUG italiani organizzando una manifestazione di portata nazionale ma allo stesso tempo delocalizzata sul territorio. Il ruolo di ILS, tuttavia, è stato sempre secondario rispetto allo sforzo profuso dai LUG, veri artefici della manifestazione.

La prima edizione del Linux Day si è tenuta il 1º dicembre 2001 in circa quaranta città sparse su tutto il territorio nazionale[35]. Il Linux Day è divenuto il principale evento italiano no profit dedicato a Linux ed al software libero.

Controversie

La definizione GNU/Linux

Lo stesso argomento in dettaglio: Controversia sul nome GNU/Linux.
GNOME 2.20 desktop.

Linux è il nome del kernel, sviluppato da Linus Torvalds a partire dal 1991, che è stato utilizzato come base per la realizzazione di vari sistemi operativi. In particolare molti progetti open source hanno scelto di sviluppare sistemi operativi con kernel Linux e software sviluppato dal progetto GNU. Tutti questi sistemi sono però comunemente chiamati col nome del loro kernel (Linux), senza specificare di che tipo è il resto del software utilizzato.

L'utilizzo della parola Linux è da attribuire a Ari Lemmke, l'amministratore che rese per primo disponibile Linux su Internet via FTP il 17 settembre 1991[36]. In particolare, Linux era il nome della directory, la pub/OS/Linux, in cui risiedevano i file del nuovo sistema operativo.[37] Il nome scelto da Torvalds e che durò per sei mesi era Freax, ovvero Freaks con la x d'ordinanza.[38]

Secondo Richard Stallman, fondatore del progetto GNU, e secondo la Free Software Foundation, la dicitura "Linux" (senza prefisso "GNU/") per i sistemi operativi che utilizzano software GNU sarebbe erronea, in quanto il nome Linux è attribuibile al solo kernel e il sistema, strutturato a partire dai componenti dell'originale progetto GNU, dovrebbe più propriamente chiamarsi GNU/Linux[39][40]. Secondo l'uso della maggior parte degli utenti, degli sviluppatori e delle società coinvolti nello sviluppo del sistema operativo e del software ad esso collegato, il nome Linux è ormai divenuto sinonimo di sistema "Linux based", cioè di sistema basato sul kernel Linux.

Sebbene non sia insostituibile per questo scopo, Linux è anche il sistema operativo più comunemente usato per eseguire Apache, MySQL e PHP, i software alla base della maggior parte dei server web di tutto il mondo. Le iniziali di questi tre progetti, insieme all'iniziale della parola Linux, hanno dato origine all'acronimo LAMP.

Con l'evoluzione di ambienti desktop come KDE e GNOME, sono state sviluppate distribuzioni che offrono interfacce grafiche simili a quelle di Microsoft Windows o di Mac OS X, più vicine alle esigenze degli utenti meno esperti, rendendo il passaggio da un sistema all'altro meno traumatico.

Gli scontri legali SCO-Linux

Lo stesso argomento in dettaglio: Causa legale tra SCO e IBM.

Con il termine causa legale tra SCO e IBM si fa riferimento ad una serie di cause legali e pubbliche tra la società produttrice di software e sistemi operativi SCO Group ed alcuni utenti Linux.

SCO sostenne che gli accordi di licenza con IBM, che donarono alcuni codici sorgente per essere incorporati in Linux, violassero i diritti contrattuali. Molti membri della comunità Linux non furono d'accordo con SCO e IBM, Novell e Red Hat vinsero il processo contro SCO Group.

Riviste dedicate

Note

  1. ^ Luciano Canepari, Dizionario di pronuncia italiana (PDF), su venus.unive.it, agosto 2008, p. 167. URL consultato il 25 dicembre 2012.
  2. ^ Linus Torvalds usò /ˈlɪnʊks/ in inglese.
    (EN) Re: How to pronounce "Linux"?, su comp.os.linux, 23 aprile 1992. URL consultato il 9 gennaio 2007.
    Torvalds si registrò pronunciando tale nome negli anni novanta. /ˈlɪnʊks/
    (EN) How to pronounce Linux?, su paul.sladen.org. URL consultato il 17 dicembre 2006.) e in svedese (/ˈlɪːnɤks/: (EN) Linus pronouncing Linux in English and Swedish, su kernel.org. URL consultato il 20 gennaio 2007.
  3. ^ (EN) Linus Torvalds, What would you like to see most in minix?, su groups.google.com, comp.os.minix, 25 agosto 1991. URL consultato il 9 gennaio 2011.
  4. ^ Linus Torvalds, David Diamond, Rivoluzionario per caso. Come ho creato Linux (solo per divertirmi), Garzanti, 2011, pp. 101, 105, 109, ISBN 88-11-73896-2.
  5. ^ Alfonso Maruccia, Linus attacca Linux, su punto-informatico.it, Punto Informatico, 22 settembre 2009. URL consultato il 17 febbraio 2011.
  6. ^ (EN) Linus calls Linux "bloated and huge", su theregister.co.uk. URL consultato il 9 gennaio 2011.
  7. ^ (EN) New Linux foundation Launches - Merger of Open Source Development Labs and Free Standard Group, Linux Foundation, 21 gennaio 2007. URL consultato il 6 ottobre 2007 (archiviato dall'url originale il 2 luglio 2007).
  8. ^ (EN) Linux Watch, su trl.ibm.com, ottobre 2001. URL consultato il 29 settembre 2009.
  9. ^ (EN) Trolltech rolls "complete" Linux smartphone stack, su linuxfordevices.com, gennaio 2010. URL consultato il 20 settembre 2009.
  10. ^ (EN) Patrick Thibodeau, IBM's newest mainframe is all Linux, su computerworld.com. URL consultato il 22 febbraio 2009.
  11. ^ (EN) Daniel Lyons, Linux rules supercomputers, su forbes.com. URL consultato il 22 febbraio 2007.
  12. ^ OpenWrt
  13. ^ (EN) Linus Torvalds, Re: GPLv3 Position Statement, su lkml.org, 25 settembre 2006.
  14. ^ (EN) File README, su git.kernel.org. URL consultato il 12 novembre 2010.
  15. ^ (EN) File COPYING, su git.kernel.org. URL consultato il 16 febbraio 2011.
  16. ^ (EN) Marjorie Richardso, Intervista: Linus Torvalds, su linuxjournal.com, Linux Journal, 1º novembre 1999. URL consultato il 20 agosto 2009.
  17. ^ (EN) Sam Williams, Chapter 9: The GNU General Public License, su Free as in Freedom, O'Reilly Media. URL consultato il 16 febbraio 2011.
  18. ^ (EN) GNU Linux-libre, Free as in Freedo, su Free Software Foundation Latin America. URL consultato il 21 gennaio 2015.
    «Linux, the kernel developed and distributed by Linus Torvalds et al, contains non-Free Software, i.e., software that does not respect your essential freedoms, and it induces you to install additional non-Free Software that it doesn't contain.»
  19. ^ The linux-kernel mailing list FAQ
  20. ^ (EN) Prakash Advani, If I could re-write Linux, su freeos.com, 8 febbraio 2004. URL consultato il 23 gennaio 2007.
  21. ^ (EN) Guidelines for Free System Distributions, su gnu.org. URL consultato il 9 gennaio 2011.
  22. ^ (EN) List of Free GNU/Linux distributions, su gnu.org. URL consultato il 9 gennaio 2011.
  23. ^ (EN) 9 Free Linux Distributions: A Linux Free For All, su daniweb.com. URL consultato il 9 gennaio 2011.
  24. ^ (EN) BLAG: Sito ufficiale, su blagblagblag.org. URL consultato il 9 gennaio 2010.
  25. ^ Dragora: sito ufficiale, su dragora.org. URL consultato il 9 gennaio 2010.
  26. ^ (EN) Kongoni: Sito ufficiale, su kongoni.co.za. URL consultato il 9 gennaio 2010.
  27. ^ Musix: sito ufficiale, su musix.org.ar. URL consultato il 9 gennaio 2010.
  28. ^ Parabola GNU/Linux: sito ufficiale, su parabolagnulinux.org. URL consultato il 4 gennaio 2012.
  29. ^ (es en) Trisquel: Sito ufficiale, su trisquel.info. URL consultato il 9 gennaio 2011. Lingua sconosciuta: es en (aiuto)
  30. ^ (ES) Ututo: sito ufficiale, su ututo.org. URL consultato il 9 gennaio 2011.
  31. ^ Venenux: sito ufficiale, su venenux.org. URL consultato il 9 gennaio 2011.
  32. ^ Trisquel EDU sul sito di Trisquel GNU/Linux
  33. ^ (EN) The LWN.net Linux Distribution List, su lwn.net. URL consultato il 19 maggio 2006.
  34. ^ Email di lancio del Linux Day, su lists.linux.it. URL consultato il 9 gennaio 2011.
  35. ^ Si avvicina Linux Day 2005, su punto-informatico.it, Punto Informatico, 20 settembre 2005. URL consultato il 9 gennaio 2011.
  36. ^ Linus Torvalds, David Diamond, Rivoluzionario per caso. Come ho creato Linux (solo per divertirmi), Garzanti, 2011, pp. 108-109, ISBN 88-11-67859-5.
  37. ^ Linus Torvalds, David Diamond, Rivoluzionario per caso. Come ho creato Linux (solo per divertirmi), Garzanti, 2011, p. 109, ISBN 88-11-67859-5.
  38. ^ Linus Torvalds, David Diamond, Rivoluzionario per caso. Come ho creato Linux (solo per divertirmi), Garzanti, 2011, p. 105, ISBN 88-11-67859-5.
  39. ^ (EN) Alex Weeks, 1.1, in Linux System Administrator's Guide, versione 0.9, 2004. URL consultato il 18 gennaio 2007.
  40. ^ (EN) GNU/Linux FAQ by Richard Stallman, su gnu.org. URL consultato il 9 luglio 2014.

Bibliografia

Voci correlate

Altri progetti

Collegamenti esterni

Controllo di autoritàVIAF (EN185985901 · LCCN (ENn94087892 · GND (DE4337730-0 · BNF (FRcb124906479 (data) · J9U (ENHE987007289819405171
  Portale Software libero: accedi alle voci di Wikipedia che trattano di software libero