Df (Unix)

Df

Informations
Type Utilitaire UNIX (d)Voir et modifier les données sur Wikidata

df (abréviation de disk free en anglais) est une commande UNIX utilisée pour afficher la valeur d'espace disque disponible des systèmes de fichier dont l'utilisateur possède l'accès en lecture[1]. df est habituellement implémenté en lisant le fichier mtab (en) ou en utilisant statfs[2].

df apparut pour la première fois dans la version 1 AT&T UNIX.

Exemple

$> 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

Usage

Les spécifications pour df sont :

df [-k] [-P|-t] [-del] [file...]
-k
Utilise les unités 1024 octets, au lieu de 512 octets par défaut, lors de l'écriture des chiffres d'espace. Il s'agit d'un compromis pour conserver les scripts historiques utilisant les 512 octets[3].
-P
Utilise un format standard, portable, sortie. Il est préformaté ainsi : <fs name>, <total space>, <space used>, <space free>, <percentage used>, :<fs root>
file
Écrit la valeur de l'espace libre du système de fichier contenant celui spécifié.

La plupart des systèmes d'exploitation Unix proposent d'autres options. Les versions BSD et GNU Core Utilities incluent :

-h
L'espace disque libre est listé en format lisible pour l'homme, c'est-à-dire avec le Système_international_d'unités (ex : 10 Mo).
-i
Liste l'utilisation inode
-l
Affiche uniquement les systèmes de fichiers locaux.

La version GNU montre par défaut les tailles des blocs en kilo, elle propose :

-T
Ajoute les types de fichiers systèmes

Spécification

La Single Unix Specification (SUS) spécifie par défaut l'espace en blocs de 512 octets, et au minimum les noms des fichiers systèmes et la valeur de leur espace disque libre.

L'utilisation d'unités de 512 octets est une pratique historique et maintient la compatibilité avec des utilitaires comme ls, mais cela n'impose pas que les fichiers systèmes soient conçus en blocs de 512 octets.

La liste suivante contient des quantités de df exprimées en unités 512 octets (1024 octets quand -k est précisé), qui doivent être arrondies à l'unité supérieure.

<fs name>
Nom du fichier système, dans un format défini par l'implémentation.
<total space>
Taille totale du fichier système en unités de 512 octets. Ce chiffre doit inclure : "<espace utilisé>, <espace libre>", plus des espaces réservés par le système non disponibles pour l'utilisateur.
<space used>
Valeur totale d'espace alloué à des fichiers existants dans le système de fichier en unités de 512 octets.
<space free>
Valeur totale d'espace disponible dans le système de fichiers réservés pour la création de nouveaux fichiers par des utilisateurs non privilégiés, en unités de 512 octets. Quand ce chiffre est inférieur ou égal à 0, il n'est plus possible de créer de nouveau fichier sans en supprimer auparavant, sauf si le processus possède les droits nécessaires.
<percentage used>
Pourcentage d'espace normalement disponible qui est actuellement alloué à tous fichiers du système de fichiers. Cela doit être calculé avec la fraction suivante : <space used> / (<space used>+ <space free>) exprimé en pour cent. Ce chiffre peut être plus grand que 100 si <space free> est négatif.
<fs root>
Répertoire où apparaît l'arborescence du système de fichiers.

Notes et références

  1. (en) df -- specification from the Single Unix Specification
  2. (en) « man statfs »
  3. « Page de man », sur linux-france.org via Wikiwix (consulté le ).

Liens externes