Guida Linux
Uno dei sistemi operativi più utilizzati al mondo è Linux , trova applicazione negli ambiti più svariati, dai server web al desktop, passando anche per la sfera dei dispositivi mobile.
Questa guida ha come scompo principale approfondire le caratteristiche del sistema operativo Linux.
Cos’è Linux?
Linux non è solo un sistema operativo ma anche un modo per concepire la programmazione e lo sviluppo del software. Tanto si sente parlare in questi periodi di Linux e di software free iniziamo a fare una distinzione.
Software free è sia un software distribuito gratuitamente e utilizzabile da chiunque senza alcuna restrizione.
Sofware open source (software libero) è un software che a differenza del free l’autore ne fornisce i sorgenti quindi abbiamo un codice aperto.
Se volete approfondire gli aspetti legali in questo ambito vi rimando qui.
Le Distribuzioni
Possiamo considerare RedHat la distribuzione commerciale più nota a livello mondiale, mentre Debian la distribuzione che va più verso il mondo open source (Ubuntu è una distribuzione basata su Debian) , possiamo anche mensionare SuSE di suo offre tantissime applicazioni ed è corredata di un tool di setup chiamato YAST (acronimo per “Yet Another Setup Tool”), che permette sia una facile installazione agli utenti poco esperti che una veloce amministrazione agli utenti più smaliziati, altra distribuzione è OpenLinux di Caldera che offre un setup semplificato ed assistito. Mentre CentOS è una distribuzione Linux che fornisce una piattaforma di elaborazione gratuita e open source supportata dalla comunità, funzionalmente compatibile con la sua sorgente upstream, Red Hat Enterprise Linux (RHEL).
Bootloader e Partizioni
Il bootloader è il software che permette il boot del sistema, questo si interfaccia con il bios della macchina carica un loader permettendo poi l’avvio del sistema operativo tramite il caricamento del Kernel. Tra i loader più conosciuti possiamo mensionare LILO – GRUB e LOADLIN. Se volete approfondire l’argomento questo link è utile. Per quanto riguarda le partizioni del sistema operativo lo schema consigliato è il seguente:
- Partizione di SWAP (in funzione della RAM installata)
- Partizione /boot (partizione dove risiede il bootloader)
- Partizione / (directory di root che è l’inizio struttura directory)
- Partizione home (dati utente)
Directory Linux
Iniziamo con una prima distinzione, le cartelle utente sono quelle dove puoi trovare i profili utente creati dal sistema operativo, con relativi file personali (documenti, foto, video) e personalizzazioni dei programmi. Possiamo dividere in due le cartelle per privilegi utente:
– /home: la cartella con tutti gli utenti a permessi standard
– /root: la cartella con l’utente con i massimi permessi amministrativi non accessibile da utente standard
Per quanto riguarda la cartella “programmi”
– /usr: la cartella con tutti i file “eseguibili” e con parte dei file di configurazione dei programmi
In questa cartella puoi trovare varie sottocartelle, tutte molto utili per il funzionamento dei programmi, le più importanti sono sicuramente:
– /usr/share: questa cartella contiene i dati delle applicazioni e i manuali
– /usr/bin: contiene tutti i file eseguibili in ambiente Linux (file binari)
– /usr/src: qui trovi i sorgenti del kernel
– /lib: come suggerisce il nome in questa cartella trovi l’altra parte dei file necessari per eseguire i programmi (le librerie)
– /etc: questa cartella contiene le impostazioni delle app e degli strumenti di sistema (già presente insieme al sistema operativo)-
La sottodirectory principale è /etc/init.d che contiene tutti gli script di inizializzazione per i servizi quali il collegamento in rete, samba, apache, cron, hal, e cosi via.
– /opt: cartella riservata da Linux ai programmi più pesanti, ma poco utilizzata dai moderni sistemi operativi.
Alcuni file di configurazione per i programmi (specifici per ogni utente) puoi trovarli nella cartella /home, così se è presente un programma ma più utenti sul PC ognuno avrà i suoi preferiti, le sue personalizzazioni e le sue configurazioni.
Dimentica i driver di Windows
Su Linux ogni dispositivo o periferica del PC è presente come un file; questi file sono presenti nelle seguenti cartelle:
– /dev: qui sono presenti i file e i driver per far funzionare i dispositivi connessi al sistema.
Su Linux tutte le periferiche e le unità hanno un nome, ad esempio gli Hard disk tendono essere classificati come hda, hdb, hdc.
Speciali dispositivi esterni come ad esempio i dispositivi USB possono essere classificati come sda, sdb, sdc quindi guardando la directory /dev si vedranno diversi file e ognuno di essi è un dispositivo reale o virtuale.
Le periferiche su Linux si differenziano i dispositivi che tengono dati e dispositivi che trasmettono dati come i mouse.
Su Windows non esiste una cartella simile, i dati sulle periferiche installate sono, un po’ nelle chiavi di registro e sono difficili da individuare e un po’ in file compresi nella cartella C:\Windows\system32\drivers ma su windows come anche su Linux, questi file, non vanno toccati.
– /proc: in questa cartella trovi tutti i processi avviati dal processore sotto forma di file
– /mnt: qui puoi trovare (in sottocartelle) i dispositivi di memorizzazione, dai dischi rigidi alle chiavette USB passando alle cartelle di rete.
Se connetti una chiavetta da 8 GB qui comparirà una cartella da 8 GB con tutto il contenuto presente all’interno (se presente), così come se hai montato una qualsiasi partizione del disco fisso.
Su alcuni sistemi operativi potrai trovare anche una cartella /mount, che svolge esattamente lo stesso compito.
Con i contenuti presenti in queste cartelle puoi tenere sotto controllo tutto lo spazio presente sul tuo PC (incluse le periferiche di memorizzazione esterna) e il corretto funzionamento delle periferiche.
Altre cartelle
Ci sono altre cartelle all’interno della radice di Linux, ma normalmente non è richiesto l’intervento dell’utente (salvo rarissimi casi); le cartelle sono:
– /tmp: in questa cartella sono presenti tutti i file temporanei generati dal sistema
– /var: in questa cartella sono contenute le informazioni dei programmi in esecuzione, inclusi i log di sistema
– /boot: qui dentro puoi trovare tutti i file necessari al corretto avvio di Linux.
Principali Comandi Linux paragonati a comandi DOS