INTRODUZIONE
In un sistema basato su Linux ne possiamo trovare svariate nella nostra directory root “/”, per vederle basta aprire un terminale e scrivere:
ls /
e avremo il seguente output:
In sostanza la directory principale è “/” che come detto poco fa si chiama “root”, essa, come si è potuto notare dall'output, si divide in altre sotto directory.
Ma procediamo con ordine e iniziamo a esaminare dalla prima cartella.
Bin
Questa cartella, come possiamo notare dando il comando:
ls /bin
contiene i programmi binari più comuni. Essa è solo un link alla cartella “/usr/bin”.
Boot
In questa directory troviamo il kernel e il bootloader con tutti i suoi file.
Questa è una delle più importanti, in quanto permette di avviare il sistema operativo.
Noi di Tux Maniacs, durante l'installazione del sistema operativo, consigliamo di mettere questa directory in una partizione a parte di dimensioni di almeno 500MB e di fare un backup utilizzando il comando dd in questo modo:
dd if=/partizione_boot_sdxy of=/file_di_backup
In modo tale che alla prima frittata del bootloader che facciamo, abbiamo un suo backup e quindi basterà solo ricopiarlo nella sua partizione utilizzando sempre l'utility dd, e fidatevi capita più spesso di quanto possiamo immaginare!
Per la cronaca il programma “dd” si trova nella diretory “/bin”.
Vi ricordo che il comando “dd” fa una copia bit a bit del file di input (if) nel file di output (of).
Dev
In questa directory sono presenti tutti i file che fanno da interfaccia all'hardware del nostro computer, ad esempio il nostro hard disk è identificato dal file “sda” e le sue partizioni sono sda1, sda2 e così via, quindi nel caso del backup della partizione di boot, andremo a fare una copia di questo file.
Proviamo a fare un esperimento.
L'output del terminale è preso dal file “/dev/stdout”, chiamato “standard output”. Se avete già programmato in C, questo file vi è famigliare, in quanto la funzione printf, per stampare a video, manda tutto a questo file, che a sua volta le stampa su terminale. Quindi se noi scriviamo:
echo “ciao mondo” > /dev/stdout
la stringa “ciao mondo” verrà stampata su terminale.
Etc
Questa è la cartella dei file di configurazione del sistema operativo, qui possiamo trovare ad esempio il file delle partizioni montante all'avvio “/etc/fstab”, quindi se vogliamo montare un nostro dispositivo all'avvio basta editare questo file.
Possiamo trovare anche il file con tutti gli utenti del sistema in “/etc/passwd” mentre le password (criptate ovviamente) le troviamo nel file “/etc/shadow”.
Se invece vogliamo far partire un programma all'avvio del sistema basta mettere uno script nella cartella “/etc/init.d/”.
Un'altro file interessante è “/etc/hosts”, qui ci sono salvati vari indirizzi ip con un loro alias, infatti aprendolo possiamo notare che all'indirizzo “127.0.0.1” c'è “localhost” ossia il nostro computer. Se da terminale diamo:
ping localhost
vedremo che inizierà a pingare il nostro computer! Quindi se il nome localhost non ci piace possiamo anche cambiarlo, ad esempio come qui sotto
Ora possiamo pingare il nostro computer digitando “ping mio-computer”.
Home
Questa è la directory più conosciuta, in quanto qui risiedono tutte le home directory degli utenti.
Anche per questa directory noi di Tux Maniacs consigliamo di creare una partizione a parte, in quanto più facile poi recuperare eventualmente i dati in caso di inaccessibilità al sistema.
All'interno della nostra home directory possiamo trovare anche dei file di configurazione come “.bashrc”, che viene letto ogni volta che noi apriamo una shell, in questo file ad esempio possiamo inserire degli alias oppure un qualche comando da far eseguire all'avvio della shell, per esempio se vogliamo che ci saluti basta aggiungere “echo ciao!” alla fine di questo file.
Possiamo trovare anche altri file di configurazione come ad esempio “.bash_history” che semplicemente memorizza tutti i comandi da noi eseguiti.
Lib
Qui, come si può intuire dal nome, si possono trovare tutte le librerie condivise del sistema operativo e usate da molti programmi, ad esempio quando installiamo qualche programma, è possibile che ci venga chiesto di installare anche delle librerie da cui esso dipende, e banalmente vengono installate all'interno di questa directory.
Lost+found
Non so voi, ma io mi sono sempre chiesto: ma a che diamine serve questa cartella? Beh, dopo qualche ricerca ho scoperto che quando qualche file si frigge a causa del disco, essi vengono recuperati e inseriti all'interno di questa directory.
Mnt o media
Quando noi colleghiamo qualche supporto esterno con l'usb, esso viene montato all'interno di questa cartella, quindi quando siamo all'interno di una cartella che sta dentro il nostro usb, siamo anche all'interno di questa directory.
Opt
Quando noi installiamo qualche software, ma non dai repository ufficiali, esso viene installato all'interno di questa directory, in modo tale da separarli da programmi installati dai reposirory ufficiali.
Proc
Qui sono presenti delle directory e dei file con informazioni sul sistema operativo, ad esempio se vogliamo vedere tutti i moduli del kernel caricati basta dare questo comando:
cat /proc/modules
Oppure se vogliamo vedere tutti i dispositivi montati sul computer basta dare:
cat /proc/mounts
Qui dentro possiamo trovare informazioni anche sui processi attualmente in esecuzione.
Root
Tra gli utenti abbiamo anche “root”, che è il più importante in quanto amministratore del sistema, e la sua home directory non è insieme alle altre, ma è nella directory “/root”. Non ha nulla di differente rispetto a una directory normale oltre che al nome stesso della cartella.
Sbin
Qui possiamo trovare file binari eseguibili, ma a differenza della cartella “/bin”, questi sono file binari del sistema.
Srv
Qui troviamo file che possono essere al servizio di altri sistemi. Non ci avremo a che fare molto spesso con questa directory.
Sys
In questa directory non troveremo altro che file di sistema con informazioni.
Tmp
Come in ogni sistema operativo non può certo mancare la directory dove inserire i file temporanei.
Usr
Questa è un'altra directory molto importante, dove ci possiamo trovare molti file e directory. Dando il comando
ls /usr
possiamo notare che sono presenti varie directory come ad esempio “bin”, questa è esattamente la cartella che contiene i file eseguibili delle directory “/bin” e “/sbin” illustrate prima. In sostanza se installiamo qualcosa è molto probabile che il file eseguibile finisca qui dentro.
Se programmate in C, allora date anche un'occhiata alla directory “/usr/include”, che contiene molti file header da poter usare nei propri programmi.
Qui troviamo anche un'altra directory che ci è famigliare ossia “/usr/lib”, che contiene esattamente i file che ha la directory “/lib”, infatti “/lib” non è altro che un collegamento a questa directory.
Nella directory “/usr/local” vengono inseriti tutti i programmi che non fanno parte della distribuzione, in sostanza programmi che andremo a installare in seguito.
In poche parole all'interno di “/usr” troveremo file e programmi che sono disponibili a tutti gli utenti.
Var
All'interno di questa directory troviamo ad esempio file di log o altri file variabili. Se avete un server, il vostro sito web lo inserirete nella directory “/var/www”.
Conclusioni
Ora sappiamo in generale a cosa servono e cosa c'è dentro alle principali directory del sistema operativo Linux, così la prossima volta non dobbiamo più impazzire per cercare un semplice file!
Fonti:
- Immagini Joel Garia;
- Cartelle e sistemi dei file;
Nessun commento:
Posta un commento