Corso di Informatica - Glossario - Linux


 

Linux

 

A cura di Luca Montanelli

 

 

Linux e' un OS (operating system, in italiano: sistema operativo), come MS DOS, MS Windows, OS/2, BeOS, etc... disponibile per svariate architetture tra le quali:

Intel e compatibili, Sparc, Apple, PowerPC, PS2 (Playstation 2), X-Box... la sua filosofia e' quella di rendere operativa qualsiasi tipo di macchina.

E' un sistema della famiglia Unix come Solaris, AIX, MAC OS/X, SCO, FreBSD, OpenBSD, NetBSD e Minix.

La rivoluzionarieta' di questo OS sta nel fatto di aver messo integralmente a disposizione delle economicissime macchine IBM compatibili, rispetto ad esempio ai server Sparc, la funzionalita' dei software per Unix.

Il kernel di Linux e' stato ideato da un all'epoca ventiduenne studente finlandese di nome Linus Torvalds presso l'universita' di Helsinki. Il quale propose delle modifiche al sistema operativo MINIX per migliorarne le prestazioni. Questo sistema operativo per macchine Intel a scopi didattici aveva una licenza d'uso che non ne permetteva la modifica. A.S. Tanenbaum, l'autore di MINIX, professore dell'universita' di Amsterdam, rifiuto' le modifiche proposte da Linus. Fu allora che Torvalds decise di iniziare a scrivere da zero un suo sistema operativo.

Il nome Linux fu attribuito a tale progetto in un secondo tempo, da parte dell'amministratore di sistema del server ftp dell'universita' di Helsinki che permise l'upload del file sorgente del kernel di Linus.

Il 5 ottobre del 1991 Linus invio' il seguente 'post' (messaggio) sul newsgroup comp.os.minix:

- ''Do you pine for the nice days of Minix-1.1, when men were men and wrote their own device drivers? Are you without a nice project and just dying to cut your teeth on a OS you can try to modify for your needs? Are you finding it frustrating when everything works on Minix? No more all-nighters to get a nifty program working? Then this post might be just for you.

As I mentioned a month ago, I'm working on a free version of a Minix-lookalike for AT-386 computers. It has finally reached the stage where it's even usable (though may not be depending on what you want), and I am willing to put out the sources for wider distribution. It is just version 0.02...but I've successfully run bash, gcc, gnu-make, gnu-sed, compress, etc. under it.'' -

Attualmente lo sviluppo del kernel di Linux e' portato avanti da migliaia di programmatori sparsi per tutti i continenti, questo impressionante lavoro viene coordinato attraverso Internet.

Esistono due versioni di questo kernel: quella stabile che termina con un numero pari: es. 2.2.x o 2.4.x e quella in via sviluppo che termina con numero dispari: es. 2.3.x o 2.5.x ; l'utilizzo di quest'ultima e' logicamente sconsigliato per applicazioni critiche mentre e' molto apprezzata da chi ha bisogno di driver per il supporto di periferiche piuttosto recenti.

La maggior parte delle applicazioni per Linux vengono sviluppate dalla GNU.

Sia il kernel che il software realizzato dal progetto GNU sono rilasciati sotto la licenza GPL (General Public Licence), questa licenza garantisce allo stesso tempo sia la tutela del software (copyright) che possibilita' di poter modificarne liberamente il codice sorgente da parte di chiunque.

I principali vantaggi che si possono riscontrare nell'utilizzo di Linux rispetto a MS Windows sono:

Gli svantaggi sono:

Naturalmente Linux dispone di un'interfaccia grafica (per la precisione molte piu' di una), ma e' impossibile sfruttarne a pieno le potenzialita' se non si imparano i principali comandi della Bash (la console di Linux). Bisogna rassegnarsi a convivere con un ambiente molto simile a livello di impatto a quello del Dos.

Installazione di Linux

Cosa occorre per installare Linux:

Che macchina usare

Diamo per scontato che si desideri installare Linux su un sistema che utilizzi un processore Intel: Pentium; Pentium MMX; Pentium II, II, IV; Pentium XEON, Celeron... o Intel compatibile: AMD K6, Duron o Athlon; Cyrix, etc...

Queste CPU vengono classificate in questo modo: i386, i486, i586, i686 ed ultimamente sono uscite anche le x86_64 ed hanno caratteristiche diverse non solo per quanto riguarda il clock. Per semplicita' ci limiteremo a dire che un i486 e' un'evoluzione di un i386, un i586 di un i486 e così via.

Per scoprire che CPU abbiamo montato sulla nostra scheda madre basta leggere quello che appare sul monitor appena avviato il PC, subito dopo che ha caricato le RAM; oppure smontare il case, identificare la ventola del processore, smontarla e leggere cosa c'e' scritto sul processore stesso (i Pentium III non utilizzano ventole di raffreddamento, ma sono facilmente identificabili per la loro insolita forma a cartuccia verticale).

Per i computer i386 abbiamo precedentemente detto che in linea teorica la configurazione minima prevederebbe un i386/SX a 16MHz con 4 MB di RAM piu' un eventuale disco rigido. Con questa configurazione e' pero' possibile far girare solo obsolete distribuzioni e senza interfaccia grafica, ottime per uso didattico-amatoriale ma di scarso interesse pratico.

Per un normale uso domestico un 486 a 100Mhz con scheda video da 2MB, 16MB di RAM e un disco da 500 Mb rappresenta gia' una buona macchina. Personalmente sconsiglierei l'utilizzo di una distribuzione recente e anche quella di un'interfaccia grafica "normale" (KDE o Gnome) al massimo ripiegando su una molto leggera (IceWM o altro). Una macchina di questo tipo equipaggiata con una scheda di rete puo' fungere da eccellente proxy, firewall o router.

Per un uso piu' professionale un qualsiasi Pentium con almeno 32MB di RAM puo' gia' essere un buon server web o ftp, possibilmente con qualche veloce disco SCSI.

Con un i686 si puo' installare qualsiasi distribuzione senza troppi problemi: usare interfacce grafiche molto simili a quella di Windows, scrivere su office suite complete (come MS Office per Windows), masterizzare file, ascoltare musica, etc...

Distribuzioni Linux

Linux in sè é solo il "kernel", una "distribuzione" Linux ci permette di effettuare una completa installazione completa del nostro OS con tutto il software commerciale (non GPL) e non (GPL o gratuito, freeware). Le distribuzioni forniscono anche un programma di "setup" per permette di installare e configurare il sistema in maniera abbastanza userfriendly (amichevole).

Le distribuzioni che si possono trovare in edicola o scaricare da Internet mancano quasi sempre di un po' di software rispetto all'equivalente versione completa a pagamento che comunque puo' essere sempre liberamente distribuita.

Esistono diverse distribuzioni ognuna con target di utenza e finalita' piu' o meno diverse dalle altre, analizziamo le più diffuse:

 

Slackware E' stata la prima distribuzione Linux, è sicuramente una tra le più ostiche. Potremo definirla una distribuzione fatta da smanettoni per smanettoni.
Red Hat Da anni uno standard: usata da aziende, da privati, su PC, su server... è diffusa ovunque e sembra destinata a non cedere a breve questa sua posizione di leadership nel settore.
Debian La più GNU di tutte le distribuzioni, può essere scaricata completamente da Internet (ben 7 cd). Meno ostica della slackware, ma non certo considerabile userfriendly.
Mandrake Sicuramente la più semplice da installare, configurare ed usare fra tutte le distribuzioni. Caldamente raccomandata per uso desktop, un po' meno per la gestione di server.
Suse Distribuzione tedesca che mira contemporaneamente alla facilità nell'uso domestico ed alla sicurezza a livello aziendale. Non è scaricabile da Internet, deve essere acquistata presso negozi convenzionati, ordinata sul web o masterizzata da qualcun'altro che l'abbia precedentemente acquistata.
Knoppix Knoppix e' un'altra distribuzione tedesca che ultimamente sta raccogliendo sempre piu' consensi. E' basata sulla Debian, ma e' composta di un solo cd e non puo' essere installata. Utilizzarla e' semplicissimo: basta introdurre il cd nell'apposito lettore� e aspettare che tutto si configuri automaticamente; l'unica cosa di cui ci si dovra' accertare sara' che il nostro BIOS sia configurato per avviare l'unita' contenente il cd prima dell'hard disk, altrimenti verra' avviato normalmente l'OS che utilizziamo solitamente. L'ideale per chi desidera sperimentare Linux senza mettere le mani sulla tebella delle partizioni del suo disco fisso o se non gli e' possibile aggiungerne un altro.
Freshmeat Su Freshmeat potete trovare tutto il software, sorgenti compresi (se disponibili), di cui potreste avere bisogno e che potrebbe non essere presente nei cd della vostra distribuzione preferita. I pacchetti sono presenti in formato .rpm ; .deb e .tar.gz .
Per le ISO dei cd delle distribuzioni esistono siti specializzati come linuxiso, non sono presenti su freshmeat.