Filesystem virtuali.

Mauro Goretti - Programmatore.




Filesystem virtuali.

Il filesystem di Linux è una strana cosa
da comprendere. Esso è un mix di file locali
e remoti, processi in esecuzione e dispositivi
hardware, la sua complessità può mettere
ko i principianti. Non c’è la cartella Programmi, ad
esempio, e tutti i file personali vengono memorizzati
dentro la cartella /home. Applicazioni e librerie sono
posizionate in diverse locazioni, di solito sotto /usr
e /lib, ma anche queste posizioni standard possono
potenzialmente cambiare in alcune distribuzioni.
I file di configurazione sono il problema più grosso.
Di solito si trovano sotto /etc, ma il loro nome e ciò
che contengono cambia di versione in versione
e di distribuzione in distribuzione. E non è fi nita:
ancora più complesso da capire è il sistema di
directory virtuali, /proc è una di esse. In superficie,
essa sembra una directory come le altre, ma se
guardate al suo contenuto troverete un esotico mix
di numeri, cartelle e link simbolici. Se controllate
a chi appartengono questi file, usando un file
manager grafico oppure digitando ls -l /proc dalla
riga di comando, vedrete una varietà di proprietari,
incluso voi, l’amministratore di sistema e vari altri
nomi presi dai demoni di sistema e dai task
in background. Questo capita perché /proc è un
filesystem virtuale. Questi file e cartelle in realtà non
sono memorizzati sul disco fisso. Piuttosto sono creati
dal kernel e consentono agli utenti e ai programmi
di interrogare una pletora di processi come
se accedessero a un normale file. Digitate cat /proc/
meminfo, ad esempio, e vedrete le informazioni
sulla vostra memoria, inclusa quella libera al
momento. Digitate cat /proc/cpuinfo, invece,
e vedrete il tipo di processore installato nella
macchina. I numeri che vedete nella cartella sono gli
identifi catori dei processi per tutti i task in esecuzione.
Questi sono gli stessi numeri che vedete assegnati
ai task se usate un monitor di sistema grafico,
oppure se digitate top in un terminale.
E c’è di più…
Dentro /proc potete trovare un gran numero
di utili informazioni su ogni processo: digitate
cat /proc/1/cmdline e l’output conterrà il comando
che ha lanciato il primo processo, /sbin/init.
Se vi servono informazioni più generali sul sistema,
c’è un altro filesystem virtuale da esplorare: /sys.
È pieno di file e cartelle virtuali che potete usare
per saperne di più sul sistema. È diviso nelle cartelle
block, bus, class, dev, devices, firmware, fs,
kernel, module e power, ognuna delle quali
è un componente principale del vostro sistema
in esecuzione. I dispositivi block sono quelli che
gestiscono i dischi, ad esempio, e la directory kernel
vi consente di vedere cosa succede al livello più
basso possibile, mentre devices fornisce accesso
ai driver del kernel che sono in esecuzione per tutti
i vari componenti che sono connessi alla macchina.

Commenti

Post popolari in questo blog

INSTAFETCH - Android -

I pesci abissali. Zoologia marina.

La Centrale Idroelettrica.