fb-pixel

Come conoscere lo spazio usato sul disco con il comando df

Pubblicato in:

by:

Vuoi conoscere lo spazio occupato su un determinato disco o vedere lo spazio disponibile di tutte le unità collegate? Con il comando df possiamo avere informazioni dettagliate su: spazio libero, occupato e anche sugli inode stessi.

In questa guida ti mostrerò come usare il comando df, quali sono le sue principali opzioni e quali comandi alternativi si possono usare.

Sintassi del comando df

Il comando df (che indica disk free) può essere usato per verificare la quantità di spazio libero in un file system.

La sintassi di base di df è questa:

df [opzioni][file]

Per mostrare lo spazio disponibile su tutti i file system, basterà usarlo in questo modo:

df

Adesso andiamo a vedere dei casi d’uso specifici con le opzioni del comando, in questo modo capiremo meglio come utilizzarlo.

Casi d’uso del comando df

Ci sono diversi comandi Linux che possono esserci utili quando vogliamo conoscere lo spazio occupato o libero sul disco. Come abbiamo già visto, con il comando du ad esempio possiamo ottenere informazioni sullo spazio occupato da file e cartelle specifiche.

Adesso, invece, andiamo a vedere come si usa df e le sue principali opzioni.

Come leggere l’output del comando df

Una volta eseguito il comando df ci verranno mostrati i dettagli delle dimensioni dei file system.

Output Del Comando Df

Nel dettaglio avremo questi dati:

  • prima colonna: nome del file system / unità – in questo esempio vedi “/dev/sda1” che si riferisce a una partizione, per approfondire puoi esserti utile sapere come funziona il comando fdisk;
  • seconda colonna (1K-blocchi oppure Dim): indica le dimensioni totali di quel file system. (Il modo in cui vengono indicate dipende dalle opzioni che usiamo, le vedremo nei prossimi paragrafi).
  • terza colonna (usati): indica la quantità di spazio utilizzata;
  • quarta colonna (disponib.): rappresenta la quantità di spazio ancora libero e disponibile;
  • quinta colonna (uso%): indica quanto spazio è utilizzato rispetto al totale, in valore percentuale;
  • sesta colonna: ci fornisce il mount point del file system.

Tieni presente che se usi btrfs come tipo di file system è meglio utilizzare il comando btrfs filesystem df in quanto fornisce un’indicazione più accurata sull’uso del disco rispetto a df.

In questo esempio puoi vedere che i due comandi mostrano dati differenti e btrfs filesystem df mostra più dettagli.

Differenza Tra Df Btrfs

Ottenere le informazioni in formato leggibile

La prima cosa che possiamo notare utilizzando il comando df senza nessuna opzione è che lo spazio disponibile ci viene mostrato usando come unità di misura dei blocchi da 1K.

Se vogliamo ottenere delle informazioni più facilmente comprensibili, è comodo richiedere un formato più adatto alla lettura (il cosiddetto human readable).

Allo stesso modo di altri comandi Linux che abbiamo visto, anche in questo caso ci basta aggiungere l’opzione --human-readable che in formato abbreviato è -h, in questo modo:

df -h

In questo esempio si può vedere che aggiungendo l’opzione -h, le dimensioni nelle tre colonne vengono mostrate in M o in G (e sono quindi più facili da comprendere).

Comando Df Dimensioni Formato Leggibile

Recuperare informazioni sugli inode

Se vogliamo conoscere il numero di inode utilizzati e quelli disponibili per ogni file system, possiamo utilizzare l’opzione -i.

Si usa in questo modo:

df -i

L’output ci indicherà:

  • nome del file system
  • numero di inode totali;
  • numero di inode utilizzati;
  • numero di inode liberi;
  • percentuale di inode utilizzati rispetto al totale;
  • mount point.
Comando Df Inode

Visualizzare lo spazio disponibile totale

Finora con il comando df abbiamo ottenuto i dettagli sullo spazio utilizzato dai diversi file system. E se, invece, volessimo controllare lo spazio totale?

In questo caso possiamo farlo usando l’opzione --total.

Per una migliore resa, possiamo combinarla all’opzione -h che, come abbiamo visto nell’esempio di prima, ci restituisce la dimensione in M o G.

Usando il comando:

df -h --total

Avremo, rispetto agli esempi di prima, un’ultima riga in cui ci viene mostrato lo spazio totale.

Qui di seguito un esempio:

Spazio Totale Comando Disk Free

Nota: ha più senso usare l’opzione --total insieme alle opzioni di filtraggio del tipo di file system (che vedremo più avanti nella guida).

Visualizzare lo spazio di un mount point specifico

Come abbiamo visto nei diversi esempi, di default il comando disk free ci permette di ottenere informazioni su tutti i file system. Se abbiamo una lista molto lunga o vogliamo ottenere informazioni specifiche più rapidamente, possiamo andare a specificare il mount point, in questo modo:

df -h /

Questo ci permette di vedere solo lo spazio occupato dalla root.

Usare Df Mount Point Specifico

Ottenere informazioni in base al tipo di file system

Se vogliamo che nella lista di informazioni venga indicato anche il tipo di file system, ci basta aggiungere l’opzione -T al comando.

Per esempio usando il comando:

df -h -T

Possiamo vedere che viene aggiunta una nuova colonna “Tipo” in cui viene specificato il tipo di file system per ogni riga.

Comando Df Tipo File System

Se, invece, vogliamo usare il comando df solo per visualizzare la dimensione di file system di un tipo specifico, ci basterà indicarlo usando l’opzione -t.

In questo esempio vado a specificare di restringere i risultati a ext4:

df -h -t ext4
Comando Df Richiesta Tipo File System

Possiamo anche fare una ricerca inversa e andare a mostrare tutti i file system ad eccezione di un particolare tipo.

In questo caso si usa l’opzione -x seguita dal tipo di file system che non vogliamo mostrare.

Usando il comando:

df -h -x ext4

Ci verranno mostrati tutti i file system che non sono di tipo ext4.

Escludere Tipo File System Comando Df

Visualizzare solo informazioni richieste

Se vogliamo che l’output del comando df ci dia solo alcune informazioni, possiamo richiedere una sorta di lista personalizzata andando a indicare i campi che vogliamo includere.

Il procedimento è semplice, bisogna aggiungere l’opzione:

--output[=FIELD_LIST]

La lista dei campi (field_list) deve includere quelli che vogliamo mostrare.

In questa tabella abbiamo raccolto i campi che puoi usare:

Campo
Descrizione
source
Il file system
fstype
Il tipo di file system
itotal
Numero totale di inode
iused
Numero di inode utilizzati
iavail
Numero di inode disponibili
ipcent
Percentuale di inode utilizzati (rispetto a quelli disponibili)
size
Spazio totale del disco
used
Spazio del disco utilizzato
avail
Spazio del disco disponibile
pcent
Percentuale di spazio utilizzato (sul totale)
file
Il nome del file (è opzionale, solo se indicato nella richiesta)
target
Il mount point

Ricordati che i campi andranno indicati separati da una virgola e senza spazi. In questo esempio vogliamo che vengano mostrati solo: file system, inode usati e spazio usato, il comando da usare sarà:

df --output=source,iused,used

Come risultato vedremo la prima colonna che indica il file system, seguita dal numero di inode usati e dallo spazio usato su disco.

Modificare Output Comando Df

Nota: puoi sempre combinare più opzioni tra loro come in questo esempio in cui abbiamo usato anche l’opzione -h per visualizzare lo spazio espresso in M o G.

Alternative al comando df

Oltre al comando df, ci sono anche altri metodi per verificare l’utilizzo del disco su Linux.

Un esempio è duf, si tratta di uno strumento che oltre a mostrarci in formato testuale l’utilizzo del disco, ci permette anche di avere una rappresentazione più grafica e quindi più facile da comprendere con una rapida occhiata.

Tieni presente che questo comando in genere non è già presente nelle distribuzioni, per cui dovrai prima installarlo per poterlo utilizzare.

Su distribuzioni Ubuntu è sufficiente usare il comando:

sudo apt install duf

Una volta installato, ci basta dare il comando seguente per ottenere l’output:

duf

Ecco un esempio di confronto tra i comandi df e duf:

Confronto Tra Df E Duf

Come si può vedere, il comando duf mostra l’output organizzato in tabelle e suddivide i dispositivi in locali e speciali.

Conclusioni

Il comando df è pratico da usare per avere informazioni sullo spazio occupato e quello ancora libero. Di default, senza usare nessuna opzione, ci dà già delle informazioni importanti.

In questa guida ti ho anche mostrato come avere dei risultati più dettagliati ad esempio restringendo i risultati solo ad alcuni tipi di file system oppure escludendone alcuni. È anche interessante la possibilità di personalizzare l’output per vedere solo le informazioni che ci interessano.

E tu utilizzi spesso questo comando? Lascia un commento se vuoi dire la tua.


Prova gratis e senza impegno uno dei nostri piani hosting per 14 giorni. Non è richiesto nessun dato di pagamento!

Commenti

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *