df (abbreviazione dalla lingua inglese di disk free, disco libero) è un comando dei sistemi operativi Unix Unix-like, e più in generale dei sistemi POSIX, che visualizza sullo standard output un prospetto con la quantità di spazio ancora libero nei singoli file system disponibili nel sistema.
Il riferimento al termine disk in luogo di file system è leggermente improprio, visto che un file system può risiedere in vari tipi di memorie di massa; l'uso risale storicamente al periodo in cui i file system erano residenti quasi esclusivamente su dischi rigidi.
df è previsto dallo standard POSIX[1], e ne esiste una versione del progetto GNU[2] che accetta ulteriori parametri.
Sintassi
[modifica | modifica wikitesto]La sintassi generale di df è la seguente:
df [opzioni] [--] [file]
Il parametro facoltativo file indica il nome di un file nel file system di cui si vogliono visualizzare le informazioni. Se non specificato, sono visualizzate le informazioni relative ai file system correntemente montati.
Il doppio trattino -- (facoltativo) indica che i parametri successivi non sono da considerarsi opzioni.
L'unità di misura predefinita per indicare le dimensioni è in blocchi da 512 byte, dato che storicamente essa è la dimensione della più piccola quantità di dati che può essere indirizzata in un file system Unix. La versione GNU di df usa tuttavia blocchi da 1024 byte, a meno che non esista la variabile d'ambiente POSIXLY_CORRECT.
Tra le opzioni principali vi sono:
- -k
- Mostra le dimensioni in unità di un KiB (1024 byte).
- -P
- Mostra le informazioni usando un formato portabile tra sistemi operativi diversi. In questo caso il risultato consiste in una linea di intestazione seguita da una linea per ciascun file system divisa in più colonne che specificano nell'ordine:
- nome del file system (tipicamente il nome del dispositivo a blocchi tramite il quale è accessibile)
- dimensioni totali
- quantità di spazio usato
- quantità di spazio libero disponibile
- percentuale dello spazio usato rispetto alle dimensioni totali
- mount point del file system (la directory dove è agganciato)
La versione GNU di df (disponibile ad esempio su sistemi GNU/Linux) supporta tra le altre anche le seguenti opzioni[2]:
- -a
- Elenca anche i file system speciali che sarebbero altrimenti omessi, come ad esempio quelli per cui le dimensioni totali sono 0 (e che tipicamente contengono informazioni generate dinamicamente).
- -h
- Mostra le dimensioni in maniera compatta, usando potenze di 1024 e aggiungendo suffissi che indicano l'unità di misura (ad esempio "G" per un GiB).
- -H
- Mostra le dimensioni in maniera compatta, usando potenze di 1000 e aggiungendo suffissi che indicano l'unità di misura (ad esempio "G" per un miliardo di byte).
- -T
- Mostra anche il tipo di file system.
Esempi
[modifica | modifica wikitesto]Mostra lo spazio disponibile in blocchi di 1024 byte di tutti i file system:
$ df -k Filesystem 1024-blocks Free %Used Iused %Iused Mounted on /dev/hd4 32768 16016 52% 2271 14% / /dev/hd2 4587520 1889420 59% 37791 4% /usr /dev/hd9var 65536 12032 82% 518 4% /var /dev/hd3 819200 637832 23% 1829 1% /tmp /dev/hd1 524288 395848 25% 421 1% /home /proc - - - - - /proc /dev/hd10opt 65536 26004 61% 654 4% /opt
Mostra lo spazio disponibile in blocchi di 1024 byte del file system che contiene il file "/home/alice/dati.txt":
$ df -k /home/alice/dati.txt Filesystem 1024-blocks Free %Used Iused %Iused Mounted on /dev/hd1 524288 395848 25% 421 1% /home
Note
[modifica | modifica wikitesto]- ^ (EN) df, in The Open Group Base Specifications Issue 6 IEEE Std 1003.1, 2004 Edition. URL consultato il 02-06-2008.
- ^ a b (EN) df: Report file system disk space usage, in GNU Coreutils manual. URL consultato il 02-06-2008.