Il corso base linux inizia da questo articolo! Quindi hai deciso di immergerti in questo mondo ed imparare ad utilizzare Linux? Sarà una bella e divertente strada da percorrere!
Sommario
Cominciamo con un’pò di retroscena su Linux.
Per sapere come è nato Linux, torniamo all’inizio del 1969, dove Ken Thompson e Dennis Ritchie dei Bell Laboratories hanno sviluppato il sistema operativo UNIX. Successivamente è stato riscritto in C per renderlo più portatile e alla fine è diventato un sistema operativo ampiamente utilizzato.
Inizialmente chiunque fosse interessato e possedesse l’hardware occorrente, poteva chiedere ad un costo irrisorio un nastro del software ed i relativi manuali stampati. Questo accadeva prima dell’avvento dei personal computer, pertanto si trattava in genere di università e centri di ricerca. I singoli centri modificavano il codice sorgente ampliando e personalizzando il sistema in base alle loro necessità.
Una tappa importante è stata raggiunta alla fine degli anni ’70 con la realizzazione della versione BSD (Berkley System Distribution) ad opera di alcuni esperti di informatica dell’Università della California di Berkley, che apportarono diverse migliorie, la più importante fu l’adozione del protocollo TCP/IP.
Il codice sorgente venne reso pubblicamente disponibile con una licenza che ne consentiva la distribuzione con o senza codice sorgente.
Evoluzione di Unix
La popolarità di Unix aumentò con il trascorrere degli anni. La Berkley cedette ad AT&T i diritti sul software e Unix divenne un prodotto
commerciale, con costo elevato ed il codice sorgente non era incluso. Anche acquistando separatamente una copia dei sorgenti, non era più possibile modificarli e condividere le migliorie apportate con altri programmatori.
Altre società commerciali adottarono la modalità di distribuzione del software senza sorgenti, ponendo le basi di un nuovo modello di sviluppo proprietario. Nel 1984 Richard Stallman, invece di cedere a questa nuova tendenza, decise di dare vita ad un nuovo sistema operativo di tipo Unix il cui codice sorgente potesse essere liberamente copiato e modificato. Nacque il progetto GNU (GNU is Not Unix).
Il nuovo modello di sviluppo prese il nome di Software Libero (free software).
Venne scritta una licenza specifica GNU General Public License (nota come GPL, http://www.gnu.org/copyleft/gpl.txt) che aggirasse i limiti imposti dai diritti d’autore e consentisse a chiunque di copiare e modificare un lavoro, seppur nel rispetto di condizioni e termini rigorosi.
E’ anche nota come licenza copyleft in contrapposizione al più noto copyright.
Corso Base Linux: Software Open Source
Il termine Open Source venne introdotto nel 1998 quale termine commerciale per indicare il “software libero”.
Si voleva enfatizzare il fatto che il software Open Source non vuol dire necessariamente GRATUITO.
E’ stata fondata la OSI (Open Source Initiative) allo scopo di promuovere il software conforme alla Open Source Directive.
Libero indica diverse “libertà” ad esempio:
– Ridistribuzione Libera del software e del codice
– Il Codice Sorgente è Aperto e disponibile per lettura, modifiche, analisi, controllo
– Prodotti derivati da prodotti GPL devono avere licenza GPL
– Copyright dell’autore
Nascita del sistema operativo Linux
Agli inizi degli anni ’90, Linus Torvald, uno studente finlandese in scienze dell’informazione iniziò ad apportare variazioni a Minix, un sistema operativo di tipo Unix per personal computer allora utilizzato nei corsi universitari sui sistemi operativi.
Torvald decise di migliorare il componente principale del software alla base di Minix, chiamato kernel, e di scriverne uno proprio.
Alla fine del 1991, Torvald pubblicò la prima versione di questo kernel su Internet e la battezzò “Linux”, un gioco di parole basato sul suo nome e Minix.
La forza di questo progetto fu l’adozione della licenza GNU GPL, in questo modo Linux risultava un software che poteva essere liberamente utilizzato, copiato e modificato da chiunque, a condizione che le stesse libertà fossero estese a tutte le copie e le varianti.
Nel tempo e da tutto il mondo migliaia di programmatori sparsi sull’intero pianeta contribuirono al suo progetto e Linux è diventato un sistema operativo completo, moderno e che può essere utilizzato sia da programmatori che da non addetti ai lavori.
Corso Base Linux: cos’è il Kernel
Per kernel si intende il cuore di un sistema operativo. Il codice che gestisce le risorse presenti sul sistema e le rende disponibili alle
applicazioni.
Il kernel si occupa principalmente di gestire:
– le comunicazioni con l’hardware del sistema (device driver)
– i file system e la memoria
– l’accesso alle risorse da parte dei processi (le applicazioni eseguite sul sistema)
Le versioni del kernel Linux sono identificate con numeri dal significato ben preciso. Per esempio il kernel 2.6.22 uno degli ultimi rilasciati ha:
2 Major Number
6 Minor Number
22 Revision (patch)
Major Number
Il Major Number identifica il valore più alto della revisione del kernel. Il rilascio di un kernel con un Major Number successivo rappresenta un evoluzione “notevole” in termini di funzionalità e/o di architettura rispetto il precedente.
I kernel della serie 1.x sono ormai piuttosto vecchi e non più usati.
Minor Number
Se Pari il kernel viene considerato stable e pronto per sistemi in produzione, se Dispari si considera in development da usare con cautela o per sperimentazione.
Le release stable sono sempre figlie delle devel precedenti. Per esempio il kernel stable è la versione 2.6.22, mentre quello in sviluppo è la 2.7.x (da cui deriverà la 2.8.x o direttamente la 3.0.x).
Solitamente nei kernel stable si tende a fare maintenance e ad implementare solo le features strettamente necessarie, lasciando a quello in development lo sviluppo di nuove funzionalità.
Revisione (patch)
Indica la revisione (patch) corrente.E’ un numero progressivo che parte da 0.
Tra due revisioni successive possono passare da pochi giorni a varie settimane. Esistono inoltre varie patch temporanee, anche non di Torwalds stesso (comuni sono le -ac patch, di Alan Cox) che rappresentano stadi intermedi STABILI prima della
release di una revisione definitiva. Ha senso utilizzarle subito solo in caso di utilizzo di kernel con gravi problemi di sicurezza o stabilità.
Corso Base Linux: distribuzioni
Una Distribuzione (distro) è un confezionamento (packaging) di Linux, con procedure che rendono comoda e semplice l’installazione del Sistema Operativo e degli applicativi.
Le distribuzioni differiscono per:
● Numero e versioni dei programmi installabili;
● Versione del kernel utilizzata e modalità di pre-installazione (il kernel solitamente non viene compilato durante una normale installazione);
● Procedura di installazione (interfaccia utente e possibilità di definire opzioni e scegliere quale software installare);
● Organizzazione di file di configurazione, programmi, log nel file system;
● Configurazioni predefinite del software installato.
Alcune distribuzioni sono disponibili in forma gratuita sotto licenza GPL. Altre sono a pagamento. Il costo è giustificato da:
● maggiore stabilità (viene eseguito un debug più spinto prima di rilasciare una versione)
● presenza di programmi con licenza NON GPL
● supporto tecnico
Tuttavia, molte distribuzioni usano il kernel Linux, quindi sono comunemente conosciute come sistemi operativi Linux.
Un sistema Linux è diviso in tre parti principali:
Hardware: include tutto l’hardware su cui è in esecuzione il sistema, nonché memoria, CPU, dischi, ecc.
Kernel Linux: Come abbiamo discusso in precedenza, il kernel è il nucleo del sistema operativo. Gestisce l’hardware e gli dice come interagire con il sistema.
Spazio utente: è qui che gli utenti come te interagiranno direttamente con il sistema.
Quindi il primo passo che dovremo fare è installare Linux sul tuo computer. Hai molte opzioni tra cui scegliere e questo corso base Linux ti aiuterà a informarti e a iniziare a scegliere una distribuzione Linux.
Ci sono molte distribuzioni Linux tra cui scegliere, ecco le più popolari:
Debian, Red Hat Enterprise Linux, Ubuntu, Fedora, Linux Mint, Gentoo, Arch Linux e OpenSUSE.
Ho citato solo le più conosciute ma posso garantirti che c’è ne sono tante altre!
Conclusione
Questo è solo l’inizio del Corso base Linux! E’ giusto conoscere un’pò di storia del sistema operativo Linux.
Non perderti il prossimo post sulla Command Line ma se vuoi iniziare a prendere confidenza con Ubuntu esegui l’installazione! Clicca QUI!
Potrebbero interessarti altri argomenti: