Struttura del file system di Linux



Nell’inglese ordinario il termine file significa raccoglitore o archiviatore. Nel gergo informatico il termine è solitamente usato per indicare un insieme di dati raccolti una sola unità, registrata su qualche dispositivo periferico di memorizzazione di massa come un disco rigido, una chiavetta USB, o simili.

Nel sistema operativo Linux il termine file ha un significato più ampio di quello comune appena esposto. In Linux, i file sono risorse logiche costituite da una sequenza di bit, a cui viene dato un nome. Il file costituisce un’astrazione molto potente che consente di trattare allo stesso modo entità fisicamente diverse come file di testo, dischi rigidi, stampanti, cartelle, tastiera, video, etc. I file possono essere di diversi tipi:

  • Ordinari: archivi di dati, comandi, programmi sorgente, eseguibili, ecc.

  • Directory: chiamate anche ‘cartelle’, contengono riferimenti ad altri file.

  • Speciali: dispositivi hardware, memoria centrale, hard disk, ecc.

I file in Linux sono organizzati in una struttura ad albero, chiamata file system, la cui radice è la directory root del sistema, rappresentata dal carattere

/

Un esempio di schema livello dell’albero del file system è riportato qui sotto:

Un file è individuato univocamente nel file system attraverso il percorso (o path) necessario per raggiungerlo. (Si osservi che, poiché la struttura del file system è ad albero, ciascun nodo dell’albero è collegato alla radice da uno e un solo ramo.) Il path può essere assoluto, cio`e specificato completamente a partire dalla radice, oppure relativo alla directory in cui ci troviamo. Prima di fare un esempio, ricordiamo che ciascun utente di un sistema Linux ha una sua home directory, che è una cartella del file system all’interno della quale può conservare i propri file. In molte distribuzioni di Linux il percorso della home directory dell’utente di nome nome_utente è:

/home/nome_utente

Vediamo ora la struttura ad albero di una cartella home:

All'interno di questa home personale ciascun utente memorizza i suoi file e le sue cartelle:

Quindi se l'utente si chiama Aldo il documento "testo di prova.txt" avrà la seguente path:

/home/aldo/Documenti/testo di prova.txt

Compreso questo concetto base ora possiamo iniziare ad usare il terminale di Linux.