Struttura delle directory di Linux e gerarchia del file system
Ecco le directory di primo livello più comuni di cui devi essere a conoscenza e con cui puoi interagire come utente di un sistema Linux. Tutto, tutti i file e le directory, in Linux si trovano sotto ‘root’ rappresentato da ‘/’. Se osservi la struttura delle directory, ti renderai conto che è simile alla radice di una pianta. Poiché tutte le altre directory o file discendono da root, il percorso assoluto di qualsiasi file viene attraversato attraverso root. Ad esempio, se hai un file in /home/user/documents, puoi indovinare che la struttura della directory va da root->home->user->documents.
Dir
Descrizione
/
La directory chiamata “root”. È il punto di partenza per la gerarchia del file system. Si noti che questo non è correlato all’account root o superutente.
/bin
Binari e altri programmi eseguibili.
/etc
File di configurazione del sistema.
/home
Directory domestiche.
/opt
Software opzionale o di terze parti.
/tmp
Spazio temporaneo, in genere cancellato al riavvio.
/usr
Programmi relativi all’utente.
/var
Dati variabili, in particolare file di registro.
La struttura delle directory di Linux è come un albero. La base della gerarchia del file system di Linux inizia dalla radice. Le directory si diramano dalla radice, ma tutto inizia dalla radice.
Il separatore di directory in Linux è la barra (/). Quando si parla di directory e di percorsi di directory, la “barra in avanti” è abbreviata in “barra”. Spesso la radice del file system viene definita “barra” poiché lo è il percorso completo /. Se senti qualcuno dire “guarda nella barra” o “quel file è nella barra”, si riferisce alla directory principale.
1. / – root
Ogni singolo file e directory inizia dalla directory principale.
Solo l’utente root ha privilegi di scrittura in questa directory.
Si noti che /root è la home directory dell’utente root, che non è la stessa di /.
2. /bin – Binari utente
Contiene eseguibili binari.
I comandi Linux comuni che è necessario utilizzare in modalità utente singolo si trovano in questa directory.
Qui si trovano i comandi utilizzati da tutti gli utenti del sistema.
Ad esempio: ps, ls, ping, grep, cp.
3. /sbin – Binari di sistema
Proprio come /bin, anche /sbin contiene eseguibili binari.
Tuttavia, i comandi linux che si trovano in questa directory sono usati tipicamente dall’amministratore di sistema, per scopi di manutenzione del sistema.
Ad esempio: iptables, reboot, fdisk, ifconfig, swapon
4. /etc – File di configurazione
Contiene i file di configurazione richiesti da tutti i programmi.
Questo contiene anche script shell di avvio e arresto utilizzati per avviare/arrestare singoli programmi.
Ad esempio: /etc/resolv.conf, /etc/logrotate.conf
5. /dev – File del dispositivo
Contiene i file del dispositivo.
Questi includono dispositivi terminali, USB o qualsiasi dispositivo collegato al sistema.
Ad esempio: /dev/tty1, /dev/usbmon0
6. /proc – Informazioni sul processo
Contiene informazioni sul processo di sistema.
Questo è uno pseudo filesystem che contiene informazioni sul processo in esecuzione. Ad esempio: la directory /proc/{pid} contiene informazioni sul processo con quel particolare pid.
Questo è un filesystem virtuale con informazioni di testo sulle risorse di sistema. Ad esempio: /proc/uptime
7. /var – File variabili
var sta per file variabili.
Il contenuto dei file che dovrebbero crescere si trova in questa directory.
Ciò include: file di registro di sistema (/var/log); pacchetti e file di database (/var/lib); email (/var/mail); code di stampa (/var/spool); bloccare i file (/var/lock); file temporanei necessari al riavvio (/var/tmp);
8. /tmp – File temporanei
Directory che contiene i file temporanei creati dal sistema e dagli utenti.
I file in questa directory vengono eliminati quando il sistema viene riavviato.
9. /usr – Programmi utente
Contiene binari, librerie, documentazione e codice sorgente per programmi di secondo livello.
/usr/bin contiene i file binari per i programmi utente. Se non riesci a trovare un binario utente in /bin, cerca in /usr/bin. Ad esempio: at, awk, cc, less, scp
/usr/sbin contiene file binari per gli amministratori di sistema. Se non riesci a trovare un binario di sistema sotto /sbin, guarda sotto /usr/sbin. Ad esempio: atd, cron, sshd, useradd, userdel
/usr/lib contiene librerie per /usr/bin e /usr/sbin
/usr/local contiene i programmi degli utenti che installi dal sorgente. Ad esempio, quando installi apache dal sorgente, va sotto /usr/local/apache2
10. /home – Directory domestiche
Home directory per tutti gli utenti per archiviare i propri file personali.
Ad esempio: /home/john, /home/nikita
11. /boot – File del caricatore di avvio
Contiene i file relativi al caricatore di avvio.
I file initrd, vmlinux e grub del kernel si trovano in /boot
Ad esempio: initrd.img-2.6.32-24-generic, vmlinuz-2.6.32-24-generic
12. /lib – Librerie di sistema
Contiene file di libreria che supportano i file binari che si trovano in /bin e /sbin
I nomi dei file della libreria sono ld* o lib*.so.*
Ad esempio: ld-2.11.1.so, libncurses.so.5.7
13. /opt – Applicazioni aggiuntive facoltative
opt sta per facoltativo.
Contiene applicazioni aggiuntive di singoli fornitori.
le applicazioni aggiuntive devono essere installate nella sottodirectory /opt/ o /opt/.
14. /mnt – Monta directory
Directory di montaggio temporanea in cui gli amministratori di sistema possono montare i filesystem.
15. /media – Dispositivi multimediali rimovibili
Directory di montaggio temporanea per dispositivi rimovibili.
Ad esempio, /media/cdrom per CD-ROM; /media/floppy per le unità floppy; /media/cdrecorder per il masterizzatore di CD
16. /srv – Dati di servizio
srv sta per servizio.
Contiene dati relativi a servizi specifici del server.
Ad esempio, /srv/cvs contiene dati relativi a CVS.
IL /bin directory è dove troverai i file binari o eseguibili. I programmi sono scritti in codice sorgente che è testo leggibile dall’uomo. Il codice sorgente viene quindi compilato in binari leggibili dalla macchina. Sono chiamati binari perché il codice macchina è una serie di zeri e uno. La cosa importante da sapere è che i comandi, i programmi e le applicazioni che puoi utilizzare a volte si trovano in /bin.
I file di configurazione risiedono nel file /etc directory. I file di configurazione controllano il comportamento del sistema operativo o delle applicazioni. Ad esempio, c’è un file in /etc che indica al sistema operativo se eseguire l’avvio in modalità testo o grafica.
Le home directory degli utenti si trovano in /home. Se il nome del tuo account è “pat”, lo sarà la tua home directory /home/pat. I sistemi Linux possono e spesso hanno più account utente. Le home directory consentono a ciascun utente di separare i propri dati dagli altri utenti del sistema. IL pat la directory è nota come sottodirectory. Una sottodirectory è semplicemente una directory che risiede all’interno di un’altra directory.
IL /opt directory ospita software opzionale o di terze parti. Il software che non è in bundle con il sistema operativo sarà spesso installato /opt. Ad esempio, il Google Earth l’applicazione non fa parte del sistema operativo Linux standard e viene installata nel file /opt/google/earth directory.
Lo spazio temporaneo è assegnato in /tmp. La maggior parte delle distribuzioni Linux cancella il contenuto di /tmp al momento dell’avvio. Tieni presente che se inserisci i file in /tmp e il sistema Linux si riavvia, è molto probabile che i tuoi file scompaiano. IL /tmp directory è un ottimo posto per archiviare file temporanei, ma non inserire nulla /tmp che vuoi mantenere a lungo termine.
IL /usr la directory è chiamata “utente”. Troverai programmi binari ed eseguibili relativi all’utente nel file /usr/bin directory.
I dati variabili come i file di registro risiedono in /var. Nello specifico, il /var/log La directory contiene i log generati dal sistema operativo e da altre applicazioni.
Gerarchia e significati delle sotto directory Linux
Linux è un sistema complesso che richiede un modo più complesso ed efficiente per avviare, arrestare, mantenere e riavviare un sistema, a differenza di Windows . C’è un file di configurazione ben definito, binari, pagine man, file info, ecc. per ogni processo in Linux.
Oltre alle principali directory, ecco un elenco di alcuni dei file e delle directory più importanti e dei loro usi.
/boot/vmlinuz: il file del kernel di Linux .
/dev/hda: File di dispositivo per il primo HDD IDE ( Hard Disk Drive ).
/dev/hdc: file di dispositivo per l’ IDE Cdrom , comunemente.
/dev/sda: file di dispositivo per la prima unità SATA (unità disco rigido).
/dev/null: uno pseudo-dispositivo, che non esiste. A volte l’output della spazzatura viene reindirizzato a /dev/null, in modo che venga perso, per sempre.
/etc/bashrc: questo file contiene impostazioni predefinite, funzioni e alias a livello di sistema tra gli altri file utilizzati da tutti gli utenti del sistema.
/etc/crontab: questo è un file a livello di sistema che è formattato in modo univoco per pianificare o automatizzare le attività di sistema su un sistema Linux .
/etc/exports: un file che determina quali file system vengono esportati su host remoti e specifica le opzioni.
/etc/fstab: questo è un file speciale che contiene informazioni su tutti i punti di montaggio disponibili e le opzioni dei punti di montaggio. Ogni riga in questo file fornisce sei opzioni, ognuna delle quali denota informazioni su un punto di montaggio o un filesystem.
/etc/hosts: questo è un file di configurazione che associa i nomi host di sistema agli indirizzi IP corrispondenti.
/etc/hosts.allow: il file specifica a quali host è consentito connettersi al sistema locale.
/etc/host.deny: il file specifica a quali host è negato l’accesso e i servizi sulla macchina locale.
/etc/issue: contiene un messaggio di pre-accesso.
/etc/modules: questo file contiene i nomi dei moduli del kernel che devono essere caricati all’avvio, uno per riga.
/etc/motd: motd sta per a message of the day, il messaggio che gli utenti ricevono al momento del login.
/etc/mtab: un file di sola lettura che contiene un elenco di filesystem attualmente montati.
/etc/passwd: un file che contiene le informazioni dell’utente di sistema come nome utente, UID, GID e shell di login tra gli altri
/etc/printcap: contiene informazioni sulla stampante generate dal file /etc/cups/printers.conf.
/etc/profile: contiene l’ambiente a livello di sistema Linux e altri script di avvio.
/etc/profile.d: script dell’applicazione, eseguito dopo il login .
/etc/rc.d: informazioni sullo script specifico del livello di esecuzione .
/etc/rc.d/init.d: esegue lo script di inizializzazione del livello .
/etc/resolv.conf: questo è un file del risolutore DNS. Specifica in che modo il sistema sfrutta il DNS per risolvere i nomi host.
/etc/security: contiene i file di configurazione per vari moduli PAM.
/etc/skel: Questa è una directory che contiene una serie di file di configurazione utente che vengono copiati nella home directory dell’utente quando viene creato un utente.
/etc/X11: Questa è una directory che contiene i file di configurazione per il sistema X-window.
/usr/bin/X11: questa directory contiene directory e binari nidificati all’infinito per il sistema X Windows.
/usr/include: la directory contiene i file di intestazione per i compilatori C. Questo include stdio.h, stdlib.h e string.h tra gli altri.
/usr/share: directory condivise di file man , file info , ecc.
/usr/lib: questa directory è composta da file oggetto e directory
/usr/sbin: la directory contiene file binari con privilegi di superutente o per l’amministratore di sistema.
/proc/cpuinfo: il file contiene informazioni di sistema tra cui il modello della CPU, il nome del modello, il numero di core e la velocità di clock per citare alcuni file.
/proc/interrupts: informazioni sugli interrupt attualmente utilizzati.
/proc/ioports: il file contiene tutti gli indirizzi di input/output utilizzati dai dispositivi sul server.
/proc/meminfo: un file che memorizza le informazioni sull’utilizzo della memoria, comprese le informazioni di scambio.
/proc/modules: un file che elenca tutti i moduli utilizzati dal kernel
/proc/mount: il file contiene informazioni dettagliate sul file system montato.
/proc/stat: il file contiene informazioni dettagliate sul sistema e sull’attività del kernel.
/proc/swaps: il file contiene informazioni sul file di scambio.
/proc/version: il file contiene informazioni sulla versione di Linux.
/var/log/lastlog: un file binario che contiene informazioni sugli ultimi accessi utente riusciti.
/var/log/messages: il file contiene un registro dei messaggi prodotti dal demone syslog all’avvio.
/var/log/syslog: un file che contiene registri di sistema non critici.
/var/log/wtmp: un file che elenca l’ ora di accesso e la durata di ogni utente sul sistema attualmente.
Ognuna delle directory di cui sopra (che è un file, in primo luogo) contiene informazioni importanti, necessarie per l’avvio di driver di dispositivo, file di configurazione, ecc.
Per fornire le migliori esperienze, utilizziamo tecnologie come i cookie per memorizzare e/o accedere alle informazioni del dispositivo. Il consenso a queste tecnologie ci permetterà di elaborare dati come il comportamento di navigazione o ID unici su questo sito. Non acconsentire o ritirare il consenso può influire negativamente su alcune caratteristiche e funzioni.
Funzionale
Sempre attivo
L'archiviazione tecnica o l'accesso sono strettamente necessari al fine legittimo di consentire l'uso di un servizio specifico esplicitamente richiesto dall'abbonato o dall'utente, o al solo scopo di effettuare la trasmissione di una comunicazione su una rete di comunicazione elettronica.
Preferenze
L'archiviazione tecnica o l'accesso sono necessari per lo scopo legittimo di memorizzare le preferenze che non sono richieste dall'abbonato o dall'utente.
Statistiche
L'archiviazione tecnica o l'accesso che viene utilizzato esclusivamente per scopi statistici.L'archiviazione tecnica o l'accesso che viene utilizzato esclusivamente per scopi statistici anonimi. Senza un mandato di comparizione, una conformità volontaria da parte del vostro Fornitore di Servizi Internet, o ulteriori registrazioni da parte di terzi, le informazioni memorizzate o recuperate per questo scopo da sole non possono di solito essere utilizzate per l'identificazione.
Marketing
L'archiviazione tecnica o l'accesso sono necessari per creare profili di utenti per inviare pubblicità, o per tracciare l'utente su un sito web o su diversi siti web per scopi di marketing simili.