Follow Techotopia on Twitter

On-line Guides
All Guides
eBook Store
iOS / Android
Linux for Beginners
Office Productivity
Linux Installation
Linux Security
Linux Utilities
Linux Virtualization
Linux Kernel
System/Network Admin
Programming
Scripting Languages
Development Tools
Web Development
GUI Toolkits/Desktop
Databases
Mail Systems
openSolaris
Eclipse Documentation
Techotopia.com
Virtuatopia.com

How To Guides
Virtualization
General System Admin
Linux Security
Linux Filesystems
Web Servers
Graphics & Desktop
PC Hardware
Windows
Problem Solutions

  




 

 

Linuxtopia - Red Hat Enterprise Linux Reference Guide (Italiano) - Panoramica sull'FHS (Filesystem Hierarchy Standard)

3.2. Panoramica sull'FHS (Filesystem Hierarchy Standard)

Red Hat Enterprise Linux usa la struttura del file system Filesystem Hierarchy Standard (FHS), che definisce i nomi, la posizione e i permessi per molti file e directory.

L'FHS corrente � il documento di riferimento per qualsiasi filesystem conforme all'FHS, ma lo standard lascia molte zone indefinite ed estensibili. In questa sezione viene fornita una panoramica sullo standard e una descrizione delle parti del filsystem non coperte dallo standard.

La conformit� con lo standard � molto importante, ma i due fattori fondamentali sono la compatibilit� con altri sistemi conformi e la capacit� di montare una partizione /usr/ come partizione in sola lettura perch� contiene file eseguibili comuni e non va modificata dagli utenti. Poich� /usr/ � in sola lettura, pu� essere montata dal CD-ROM o da un'altra macchina tramite NFS in sola lettura.

3.2.1. Organizzazione dell'FHS

Le directory e i file qui menzionati, rappresentano un piccolo sottoinsieme di quelli specificati dal documento FHS. Per informazioni pi� dettagliate, consultate l'ultimo documento dell'FHS.

Lo standard completo � disponibile online su http://www.pathname.com/fhs/.

3.2.1.1. La directory /boot/

La directory /boot/ contiene file statici necessari per l'avvio del sistema, come ad esempio il kernel di Linux. Questi file sono essenziali per un avvio corretto del sistema.

AttenzioneAvvertenza
 

Non eliminate la directory /boot/, altrimenti non sar� pi� possibile avviare il sistema.

3.2.1.2. La directory /dev/

La directory /dev/ contiene voci del filesystem che rappresentano dispositivi collegati al sistema. Questi file sono essenziali perch� il sistema funzioni correttamente.

3.2.1.3. La directory /etc/

La directory /etc/ � riservata ai file di configurazione locali presenti sulla vostra macchina. Nessun file binario deve essere inserito in /etc/. Tutti i file binari che sono stati precedentemente inseriti in /etc/, devono essere trasferiti in /sbin/ oppure in /bin/.

Le directory X11/ e skel/ sono sottodirectory di /etc/:

/etc
  |- X11/
  |- skel/

La directory /etc/X11/ viene designata per i file di configurazione del sistema X Window, come ad esempio XF86Config. La directory /etc/skel/ viene designata per i file dell'utente "skeleton", cio� i file che servono per popolare una home directory quando viene creato un nuovo utente.

3.2.1.4. La directory /lib/

La directory /lib/ dovrebbe contenere solo le librerie necessarie all'esecuzione dei file binari presenti in /bin/ e /sbin/. Queste immagini di librerie condivise sono particolarmente importanti per l'avvio del sistema e l'esecuzione di comandi all'interno del filesystem di root.

3.2.1.5. La directory /media/

La directory /mnt/ contiene le sottodirectory utilizzate come mount point per quei media in grado di essere rimossi, come ad esempio i CD-ROM, Zip ed i dischetti floppy da 3.5.

3.2.1.6. La directory /mnt/

La directory /mnt/ � riservata ai filesystem montati temporaneamente, come i mount del file system NFS. Per tutti i media in grado di essere rimossi, utilizzare la directory /media/

NotaNota Bene
 

Questa directory non deve essere installata dai programmi di installazione.

3.2.1.7. La directory /opt/

La directory /opt/ fornisce un'area per la memorizzazione di pacchetti applicativi statici di grandi dimensioni.

Un pacchetto che posiziona i file nella directory /opt/, crea una directory che presenta lo stesso nome del pacchetto. Questa directory, in ritorno, conserva i file che altrimenti verrebbero sparsi attraverso il file system, dando all'amministratore del sistema un modo semplice per determinare il ruolo di ogni file all'interno di un pacchetto particolare.

Per esempio, se sample � il nome di un pacchetto software particolare all'interno di /opt/, allora tutti i suoi file dovrebbero essere inseriti in /opt/sample/. Per esempio /opt/sample/bin/ per i binari e /opt/sample/man/ per le pagine del manuale.

Anche i pacchetti che comprendono pi� sotto-pacchetti, ognuno con un compito particolare, vanno inseriti in /opt/ e avranno cos� un modo standardizzato di organizzarsi. Per esempio, il pacchetto sample pu� avere diversi tool appartenenti ognuno alla propria sottodirectory come /opt/sample/tool1/ e /opt/sample/tool2/; ognuno di questi pu� avere la propria directory bin/, man/ e altre directory simili.

3.2.1.8. La directory /proc/

La directory /proc/ contiene i file speciali che estraggono o inviano informazioni al kernel.

Data la svariata quantit� di dati disponibili in /proc/ ed i vari modi in cui questa directory pu� essere usata per comunicare con il kernel, � stato dedicato un intero capitolo all'argomento. Per maggiori informazioni, consultate Capitolo 5.

3.2.1.9. La directory /sbin/

La directory /sbin/ contiene gli eseguibili utilizzati unicamente dall'utente root. Gli eseguibili in /sbin/ servono solo al momento dell'avvio e per eseguire le operazioni di recupero del sistema.L'FHS dice:

/sbin contiene normalmente i binari essenziali per l'avvio, il ripristino, il recupero e/o la riparazione del sistema oltre a quelli presenti in /bin. Qualunque altro programma eseguito dopo il montaggio della directory /usr/ (quando non si verifica alcun problema) deve essere collocato in /usr/sbin. I Programmi di gestione del sistema installati in modo locale devono essere inseriti in /usr/local/sbin.

In /sbin/ trovate, come minimo, i seguenti programmi:

arp, clock,halt,
init, fsck.*, grub,
ifconfig, mingetty, mkfs.*, 
mkswap, reboot, route, 
shutdown, swapoff, swapon

3.2.1.10. La directory /srv/

La directory /srv/ contiene i dati specifici al sito forniti dal vostro sistema, che a sua volta st� eseguendo Red Hat Enterprise Linux. Questa directory fornisce agli utenti la posizione dei file data riguardanti un servizio particolare, come ad esempio FTP, WWW, o CVS. I dati che si riferiscono ad un utente in particolare, dovrebbero essere conservati all'interno della directory /home/.

NotaNota Bene
 

Tenete presente che i file data che si trovano attualmente in /var/, potrebbero essere spostate in /srv/ in release future.

3.2.1.11. La directory /sys/

La directory /sys/ utilizza il nuovo file system virtuale specifico al kernel 2.6. Grazie al maggior supporto per dispositivi hardware hot plug con il kernel 2.6, la directory /sys/ contiene le stesse informazioni contenute in /proc/, ma in grado di visualizzare una panoramica gerarchica di informazioni specifiche riguardanti i dispositivi hot plug.

Per verificare il montaggio effettivo dei dispositivi USB e FireWire, consultate le pagine man di /sbin/hotplug e /sbin/udev

3.2.1.12. La directory /usr/

La directory /usr/ contiene tutti i file che possono essere condivisi attraverso macchine multiple. La directory /usr/ � solitamente nella propria partizione, ed � montata come sola lettura. Le seguenti directory dovrebbero rappresentare le sottodirectory di /usr/:

/usr
  |- bin/
  |- etc/
  |- games/
  |- include/
  |- kerberos/
  |- lib/
  |- libexec/	    
  |- local/
  |- sbin/
  |- share/
  |- src/
  |- tmp -> ../var/tmp/
  |- X11R6/

Sotto la directory /usr/, la sottodirectory bin/ contiene gli eseguibili, etc contiene i file di configurazione del sistema, games quelli per i giochi, include/ contiene i file header di C, kerberos/ contiene i binari e molte altre cose relative a Kerberos, e lib/ contiene i file object e le librerie che non sono stati concepiti per essere usati direttamente dagli utenti o dagli script della shell. La directory libexec/ contiene piccoli programmi d'aiuto richiamati da altri programmi, sbin/ � per i binari di amministrazione del sistema (quelli che non appartengono alla directory /sbin/), share/ contiene i file non specifici per l'architettura, src/ contiene i codici sorgente e X11R6/ � destinato al Sistema X Window (XFree86/ su Red Hat Enterprise Linux).

3.2.1.13. La directory /usr/local/

L'FHS afferma che:

La gerarchia /usr/local viene utilizzata dall'aministratore di sistema quando installa il software a livello locale. Prima che il software sia aggiornato deve essere effettuato un back up di questa directory. Pu� essere usato per i programmi e i dati che sono condivisibili con altri gruppi host, ma che non si trovano in /usr.

La directory /usr/local/ ha una struttura simile alla directory /usr/. Contiene le sottodirectory seguenti, che hanno uno scopo simile a quelle contenute nella directory /usr/:

/usr/local
       |- bin/
       |- etc/
       |- games/
       |- include/
       |- lib/
       |- libexec/
       |- sbin/
       |- share/
       |- src/

In Red Hat Enterprise Linux, l'uso desiderato della directory /usr/local/ � leggermente diverso da quello specificato dall'FHS. L'FHS afferma che /usr/local/ si dovrebbe trovare nel posto in cui � memorizato il software che non deve subire aggiornamenti del sistema. Poich� gli aggiornamenti del software vengono effettuati in modo sicuro con RPM Package Manager (RPM), non � necessario proteggere i file mettendoli in /usr/local/. Invece, vi raccomandiamo di usare /usr/local/ per il software locale della vostra macchina.

Per esempio, se la directory /usr/ viene montata come sola condivisione NFS da un host remoto, � ancora possibile installare un pacchetto o un programma sotto la directory /usr/local/.

3.2.1.14. La directory /var/

Poich� con FHS dovete essere in grado di montare /usr/ in sola lettura, tutti i programmi che scrivono il file log o necessitano delle directory spool/ o lock/ dovrebbero scriverli nella directory /var/. L'FHS afferma che /var/ � per:

...file di dati variabili. Questa directory contiene le directory e i file di spool, dati di loggin e di amministrazione, file temporanei e transitori.

Le seguenti directory si trovano all'interno della directory /var/:

/var
  |- account/
  |- arpwatch/
  |- cache/
  |- crash/
  |- db/
  |- empty/
  |- ftp/
  |- gdm/
  |- kerberos/
  |- lib/
  |- local/
  |- lock/
  |- log/
  |- mail -> spool/mail/
  |- mailman/
  |- named/
  |- nis/
  |- opt/
  |- preserve/
  |- run/
  +- spool/
       |- at/
       |- clientmqueue/
       |- cron/
       |- cups/
       |- exim/	      
       |- lpd/
       |- mail/
       |- mailman/
       |- mqueue/
       |- news/
       |- postfix/ 
       |- repackage/
       |- rwho/
       |- samba/ 
       |- squid/
       |- squirrelmail/
       |- up2date/
       |- uucp 
       |- uucppublic/
       |- vbox/
  |- tmp/
  |- tux/
  |- www/
  |- yp/

I file log del sistema, come messages/ e lastlog/, si trovano in /var/log/. La directory /var/lib/rpm/ contiene anche i database del sistema RPM. I file lock si trovano nella directory /var/lock/, solitamente in directory particolari per il programma che usa in modo specifico il file. La directory /var/spool/ possiede le sottodirectory per i programmi nei quali vengono conservati i file data.

 
 
  Published under the terms of the GNU General Public License Design by Interspire