/ proc, / usr, / var, / home sono chiamati file system.
Cosa significa? pensavo che esistesse un solo file system (ad esempio ext4) ..
/ proc, / usr, / var, / home sono chiamati file system.
Cosa significa? pensavo che esistesse un solo file system (ad esempio ext4) ..
Risposte:
Il termine "file system" ha diversi significati. Quando le persone parlano di nomi di file system come ext4, UFS, NTFS ecc., Hanno in mente l'organizzazione della memorizzazione dei dati a basso livello (in termini di blocchi sui media). Tali "file system" di solito richiedono al driver di accedere ai dati memorizzati su supporti formattati con quel file system. Nel caso di /proc
, /usr
, root file system
o il file system qualcosa si riferisce semplicemente a una struttura di directory.
Tecnicamente in Linux qualsiasi directory può essere un punto di montaggio per il file system. Ciò consente di selezionare il miglior tipo di file system (ext4, ufs, xfs ecc.) Per le singole directory, a seconda della natura delle informazioni memorizzate e dei requisiti di sicurezza.
Credo nel tuo caso quelle directory si chiamano "file system" perché sono spesso utilizzate come mount point per i singoli file system. /proc
è sempre un punto di montaggio per il procfs
pseudo-file system che presenta informazioni sui processi e altre informazioni di sistema in una struttura gerarchica simile a un file.
Ci sono alcune directory che possono essere considerati i file system: /dev
, /sys
e /tmp
.
/ proc è una cartella molto speciale, non memorizzata su disco, ma in memoria e utilizzata per fornire informazioni sul sistema (CPU, RAM, dispositivi ...). Quindi usa un file system speciale (non ext4) che si chiama procfs. Puoi leggere di più su Wikipedia: procfs
Invece, / usr , / var e / home sono generalmente (almeno su un computer desktop) memorizzati sullo stesso file system (ad esempio ext4), e spesso sullo stesso disco: sono cartelle regolari, con significati specifici. Sempre su Wikipedia puoi trovare informazioni dettagliate sul Filesystem Hierarchy Standard .
In realtà non sono "file system", ma questo paragrafo aiuta a spiegare questo utilizzo dei nomi (dal riferimento a FHS 2.3 ):
Per avviare un sistema, sulla partizione di root deve essere presente abbastanza per montare altri filesystem. Ciò include utilità, configurazione, informazioni sul caricatore di avvio e altri dati di avvio essenziali. / usr, / opt e / var sono progettati in modo tale che possano trovarsi su altre partizioni o filesystem.
/proc
ma no /usr
, /var
oppure /home
.
Puoi pensare a un file system come a una struttura che consente di creare file in un dispositivo di archiviazione dati. Il dispositivo è qualcosa come una partizione del disco rigido, una RAM o una chiavetta USB, per esempio. Il tipo di file system è il formato utilizzato per archiviare i dati nel file system, ad esempio ext4, vfat o molti altri. I file system (dispositivi) possono essere montati come directory (cartelle), detti anche punti di montaggio.
Per eseguire un sistema operativo, è necessario disporre di un file system di root, in cui è installato il sistema operativo. Questo è montato come / (root) durante l'avvio e tutti gli altri file system sono montati sotto di esso. Dagli esempi forniti, / usr e / var possono far parte del file system radice o file system separati (una partizione diversa nella stessa unità o unità diversa come /). Se file system separati, possono anche essere di un tipo di file system diverso da / (penso!). D'altra parte, / proc è un file system in RAM (noto anche come disco RAM) con il proprio tipo con lo stesso nome, proc.
Il comando mount su un terminale fornisce queste informazioni su tutti i file system montati: dispositivo, punto di montaggio, tipo. Per esempio:
user@box:~$ mount
/dev/sda7 on /home type ext3 (rw,relatime,errors=remount-ro,commit=0)
proc on /proc type proc (rw)
Questo significa che ho partizione sda7 montata come / home (con tutti i miei dati preziosi!), Ed è formattata con il tipo ext3; device proc è montato su / proc con il tipo proc. Vengono anche fornite le autorizzazioni per ciascun file system (rw, ecc.).
Un ultimo punto: i file system sono spesso indicati dai loro punti di montaggio. Cioè, nell'esempio sopra posso dire che device sda7 è il mio file system / home. Questo non è strettamente corretto, anche se chiaro alla maggior parte delle persone: significa che il file system deve essere montato con mount point / home. Ma non c'è niente che mi impedisce di montare il file system in sda7 sotto mount points / work, / hotel o / sunny_beach. In effetti, è possibile accedere ai dati non elaborati direttamente sotto / dev / sda7 (montato o non montato) senza conoscere il file system sottostante. Ciò può essere utile per il recupero dei dati in caso di danneggiamento del file system, quando il file system non può più essere montato ma il dispositivo è ancora leggibile. Tale accesso diretto è tuttavia potenzialmente disastroso e dovrebbe essere utilizzato solo in circostanze eccezionali.