Si considerano file Shareable (Condivisibili) quelli che anche se condivisi non comportano alcun problema di sicurezza tra questi file rientrano le cartelle /usr e /opt che sono anche statiche, cioè non vengono modificate spesso (principalmente per aggiornamenti e installazione di nuove applicazioni) e la cartella /home e /var/mail che sono considerate variabili per la loro alta frequenza di modifica
Si considerano file Unshareable (non condivisibili) quelli che non dovrebbero essere assolutamente condivisi come la cartella /etc, /boot anch'esse cartelle static e le cartelle /var/run /var/lock
Ora passiamo in rassegna le cartelle più importanti e il loro contenuto
/ Quest è la directory di root, tutto il filesystem ha radice qui, in linux non ci sono le lettere per i vari dischi e partizioni, anche questi vengono montati come cartella /mnt o /media a seconda della distribuzione
/boot Questa directory contiene file e statici e non condivisibili riguardanti il boot iniziale del computer (bootloader). I file più di alto livello e quelli di configurazione si trovano invece nella directory /etc, questo per problemi di spazio perché i vecchi bios imponevano che il bootloader fosse tutto all'interno del 1024simo cilindro dell'hard disk
/bin Questa directory contiene file di vitale importanza per il sistema come ls, cp e mount Questi comandi sono accessibili da tutti gli utenti del sistema. Questa directory contiene file statici.
/sbin E' simile a /bin ma contiene soltanto programmi che vengono utilizzati normalmente da gli amministratori di sistema. Risiedono generalmente qui tools come fdisk e e2fsck
/lib Questa cartella è simile a /bin e /sbin ma invece che gli eseguibili contiene le librerie dei programmi, che sono condivise dai vari programmi. La sottocartella /lib/module contiene i moduli che vengono caricati dinamicamente dal kernel
/usr Qui risiedono la maggior parte dei programmi del computer, è condivisibile e statica. Per questa ragione molti amministratori tengono questa cartella in una partizione separata
/usr/local In questa cartella sono contenuti i file che l'amministratore installa localmente. L'idea è di avere un'area che non venga toccata dagli aggiornamenti automatici. Generalmente i sorgenti delle applicazioni che installate manualmente vanno inseriti nella cartella /usr/local/src mentre gli script e gli eseguibili in /usr/local/bin. Alcuni amministratori tengono questa cartella in una partizione separata
/opt Questa directory è simile a /usr/local ma è per i pacchetti precompilati che non sono forniti con il sistema operativo, come programmi commerciali. Alcuni amministratori tengono questa cartella in una partizione separata o fanno un link simbolico all'interno della cartella /usr/local
/home Questa cartella contiene i dati dell'utente, e condivisibile e variabile. La /home directory spesso è ospitata su una partizione separata
/root Questa è la cartella home dell'utente root
/var Questa directory contiene i dati e le informazioni delle varie applicazioni, come i log le code di stampa le mail e così via. Alcune sottodirectory sono condivisibili, altre non lo sono. Questa cartella tende a crescere molto velocemente specie in macchine che mantengono molti log come i web server, in questi casi sarebbe consigliabile mettere questa directory in una partizione separata
/tmp In questa cartella vengono creati i file temporanei che sono utilizzati dalle vari applicazioni. Questa directory viene sbiancata ad ogni riavvio e alcune distribuzioni la montano nella memoria RAM
/mnt Qui vengono generamene montati i dispositivi rimovibili
/media Come mnt viene utilizzata una o l'altra directory a seconda della distribuzione utilizzata
/dev Qui sono contenuti i file rappresentanti le periferiche di sistema
/proc Questa directory viene creata dinamicamente da Linux e fornisce accesso ad alcuni tipi di informazioni riguardanti la macchina che non sono accessibili attraverso la cartella /dev Per esempio se date il comando cat /proc/cpuinfo, il sistema ti mostrerà tutte le informazioni riguardanti la tua CPU