GNU/Linux >> Linux Esercitazione >  >> Linux

Inode e il filesystem di Linux

I filesystem di Linux sono cose complicate da capire, specialmente quando ci si addentra tra le erbacce di dati e metadati. Ogni volta che esegui ls comando e vedere l'output (file elencati, autorizzazioni, proprietà dell'account, ecc.) capire che i dati su i file che vedi sono archiviati in un posto separato dai file stessi e devono essere richiamati. Gli inode sono dietro le quinte che lavorano sodo, quindi non devi. Diamo un'occhiata a cos'è esattamente un inode e cosa fa per noi.

Che cos'è un inode?

Per definizione, un inode è un nodo di indice. Serve come identificatore univoco per un determinato pezzo di metadati su un determinato filesystem. Ogni pezzo di metadati descrive ciò che consideriamo un file. Esatto, gli inode operano su ciascun filesystem, indipendentemente dagli altri. Il punto in cui questo crea confusione è quando ti rendi conto che ogni inode è archiviato in una tabella comune. In breve, ogni filesystem montato sul tuo computer ha i suoi inode. Un numero di inode può essere utilizzato più di una volta ma mai dallo stesso filesystem. L'id del filesystem si combina con il numero dell'inode per creare un'etichetta di identificazione univoca.

Quanti inode ci sono?

Se non ti interessa la matematica, potresti voler saltare questa sezione. Ci sono molti inode su ogni sistema e ci sono un paio di numeri di cui essere a conoscenza. Innanzitutto, e meno importante, il numero massimo teorico di inode è pari a 2^32 (circa 4,3 miliardi di inode). Il secondo, e molto più importante, è il numero di inode sul tuo sistema. In genere, il rapporto tra inode è 1:16 KB di capacità del sistema. Ovviamente, ogni sistema è diverso, quindi devi fare questi calcoli da solo.

Utilizzo avanzato

Ci sono buone notizie per quelli di voi che sono avversi alla matematica:"C'è un comando per questo". Per controllare il numero di inode sul tuo sistema, puoi usare il -i opzione con il df comando, come si vede qui:

[tcarrigan@rhel ~]$ df -i /dev/sda1
Filesystem     Inodes IUsed  IFree IUse% Mounted on
/dev/sda1      524288   312 523976    1% /boot

Puoi vedere dalla sintassi del comando e dall'output sopra che abbiamo eseguito df -i sul filesystem /dev/sda1 . Ci sono un totale di 524.288 inode su questo filesystem, di cui solo 312 utilizzati (circa l'1%).

Inode a livello di file

Possiamo anche guardare il numero di inode di un file specifico. Per fare ciò, utilizziamo ls -i comando sul file desiderato. Ad esempio:

[tcarrigan@rhel my_articles]$ ls -i Creating_volume_groups 
1459027 Creating_volume_groups

Il numero di inode per questo file è 1459027 .

Inode a livello di directory

Proprio come con i file, possiamo anche vedere l'inode di una directory. Per fare ciò, utilizziamo ls -i comando di nuovo con alcune opzioni aggiuntive. Ad esempio:

[tcarrigan@rhel article_submissions]$ ls -idl my_articles/
352757 drwxrwxr-x. 2 tcarrigan tcarrigan 69 Apr  7 11:31 my_articles/

Puoi vedere che abbiamo usato -i (inodes) e -l (formato lungo) e -d (directory). Questi flag ci presentano una pletora di informazioni sui my_articles directory, inclusi numero di inode, autorizzazioni, proprietà, ecc.

Riepilogo

Gli inode sono un ottimo punto di partenza se sei interessato a saperne di più sui filesystem e sulle loro strutture. Il modo in cui le unità di dati più piccole vengono etichettate e indicizzate è un'informazione importante da sapere. Alcune operazioni molto più avanzate possono essere eseguite sugli inode. Ad esempio, puoi aprire un inode e leggere il contenuto del file. Questa capacità ti offre uno sguardo ancora più approfondito su quali metadati sono archiviati lì. Si spera che questo aspetto di alto livello ti fornisca una linea di base per la tua esplorazione dell'inode.

[ Corso online gratuito:panoramica tecnica di Red Hat Enterprise Linux. ]


Linux
  1. Controlla i comandi e le attività con il comando watch di Linux

  2. Risolvere i problemi utilizzando il filesystem proc su Linux

  3. Come creare un alias e utilizzare il comando alias in Linux

  4. Come controllare la versione del sistema operativo e di Linux

  5. Trova i file e le directory più grandi in Linux

Comprensione dei filesystem Linux:ext4 e oltre

Il buono, il brutto e il cattivo di Linux nel 2014

Qual è la differenza tra Linux e Unix?

Come trovare il tipo di filesystem montato in Linux

Una guida per principianti alla navigazione nel filesystem Linux

Cosa sono gli inode in Linux?