Bien qu’il soit possible d’obtenir des informations sur l’utilisation du disque depuis les différents ordinateurs de bureau Linux, ceux qui sont à l’aise avec la ligne de commande peuvent obtenir des détails beaucoup plus détaillés à l’aide des commandes DF (Disk Free) et DU (Disk Use).
Avec ces deux commandes, vous pouvez non seulement découvrir des détails sur l’espace libre sur les systèmes de fichiers montés, mais vous pouvez également voir la quantité d’espace utilisée par des répertoires individuels.
Très pratique lorsque l’on accède à un terminal à distance par SSH.
Dans ce tutoriel, je vous apprends à utiliser les commandes DU et DU afin de vérifier l’espace disque utilisé et libre sur votre système Linux.

Table des matières
Vérifier l’espace disque libre et utilisée avec la commande DF
La commande DF (Disk Free) affiche l’utilisation utilisée ainsi que l’espace disque libre sur tous les systèmes de fichiers actuellement montés.
Par exemple :
df
Filesystem 1K-blocks Used Available Use% Mounted on
udev 4016812 0 4016812 0% /dev
tmpfs 806728 82392 724336 11% /run
/dev/sda1 1922208680 3324444 1821218596 1% /
tmpfs 4033636 0 4033636 0% /dev/shm
tmpfs 5120 0 5120 0% /run/lock
tmpfs 4033636 0 4033636 0% /sys/fs/cgroup
tmpfs 806724 0 806724 0% /run/user/1000
Voici les comment lire le résultat de la commande df :
- La première colonne Filesystem, nous avons le chemin du système de fichiers,
- La seconde, nous avons sa taille, qui est rapportée dans des blocs de 1K
- Les troisièmes et quatrième colonnes, nous avons respectivement l’espace utilisé et disponible.
- Dans la cinquième colonne, le pourcentage d’utilisation disque est signalé
- Enfin dans la dernière colonne, nous pouvons voir le point de vue du système de fichiers
Si vous spécifiez un emplacement, df retourne les informations sur le système de fichiers complet.
df /dev/sda1
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda1 1922208680 3324456 1821218584 1% /
df /var/www/
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda1 1922208680 3324456 1821218584 1% /
Pour afficher l’espace disque libre en Mo ou Go, utilisez l’option -H (1 octet=1024) ou -h (1 octet=1000):
df -H
udev 4.2G 0 4.2G 0% /dev
tmpfs 827M 85M 742M 11% /run
/dev/sda1 2.0T 3.5G 1.9T 1% /
tmpfs 4.2G 0 4.2G 0% /dev/shm
tmpfs 5.3M 0 5.3M 0% /run/lock
tmpfs 4.2G 0 4.2G 0% /sys/fs/cgroup
tmpfs 827M 0 827M 0% /run/user/1000
Inclure ou exclure des types de systèmes de fichiers
Comme vous avez pu le constater, df liste dans la sortie tout type de systèmes de fichiers comme les disques dur, SSD mais aussi les systèmes de fichiers de mémoire virtuelle comme tmpfs, udev ou NFS.
Dans certains cas, on aimerait filtrer la sortie pour exclure ou inclure certains types de systèmes de fichiers pour ne lister que l’espace disque libre ou utilisée de ces derniers.
L’option -T permet d’afficher une colonne type :
df -H -T
Filesystem Type Size Used Avail Use% Mounted on
udev devtmpfs 4.2G 0 4.2G 0% /dev
tmpfs tmpfs 827M 85M 742M 11% /run
/dev/sda1 ext4 2.0T 3.5G 1.9T 1% /
tmpfs tmpfs 4.2G 0 4.2G 0% /dev/shm
tmpfs tmpfs 5.3M 0 5.3M 0% /run/lock
tmpfs tmpfs 4.2G 0 4.2G 0% /sys/fs/cgroup
tmpfs tmpfs 827M 0 827M 0% /run/user/1000
Pour inclure ou exclure des types de systèmes de fichiers, on utilise respectivement l’option -t et l’option -x.
Par exemple pour filtrer sur le système de fichiers ext4 :
df -H -t ext4
Filesystem Size Used Avail Use% Mounted on
/dev/sda1 2.0T 3.5G 1.9T 1% /
Alors que si on veut exclure tmpfs, on utilise la commande df de cette manière :
df -H -x tmpfs
Filesystem Size Used Avail Use% Mounted on
udev 4.2G 0 4.2G 0% /dev
/dev/sda1 2.0T 3.5G 1.9T 1% /
Afficher les inodes utilisés et libres
Enfin pour afficher les inodes utilisés et libres selon le nombre de fichiers dans le système de fichiers.
Si vous n’avez plus d’inodes libres, vous ne pourrez plus créer de nouveaux fichiers.
Plus de détails sur le fonctionnement d’ext4 et les inodes :
Cela se lit comme précédemment :
df -i
Filesystem Inodes IUsed IFree IUse% Mounted on
udev 1004203 334 1003869 1% /dev
tmpfs 1008409 469 1007940 1% /run
/dev/sda1 122068992 65098 122003894 1% /
tmpfs 1008409 1 1008408 1% /dev/shm
tmpfs 1008409 4 1008405 1% /run/lock
tmpfs 1008409 17 1008392 1% /sys/fs/cgroup
tmpfs 1008409 10 1008399 1% /run/user/1000
Vérifier l’utilisation disque avec la commande DU
La commande DU (Disk Use) résume l’utilisation du disque de l’ensemble des fichiers, récursivement pour les répertoires.
Lorsque vous utilisez la commande sans rien spécifier, du calcule l’utilisation disque du répertoire courant.
Soit donc ici le répertoire /tmp :
debian@linux:/tmp$ du
La commande du liste alors tous les sous-répertoire avec leurs utilisations disques respectifs.
Enfin dans la dernière ligne, elle affiche le total de l’utilisation disque.
Ainsi dans cette exemple, le répertoire /tmp prend au total une taille de 5388 octets sur le disque.
Les options -H, -h et -k sont aussi disponibles pour modifier le format et le rendre plus lisible pour un humain.
du -h
Si vous ne souhaitez pas afficher le détail mais que le total, utilisez l’option -s :
debian@linux:/tmp$ du -hs
5.3M .
On peut spécifier un répertoire pour visualiser l’espace disque utilisé de ce dernier.
debian@linux:/tmp$ du -h /boot/
2.5M /boot/grub/i386-pc
2.3M /boot/grub/fonts
4.2M /boot/grub/locale
12M /boot/grub
4.0K /boot/extlinux
49M /boot/
Pour connaître l’espace disque en format lisible, inclut un total, et trie par pourcentage d’utilisation (colonne 5) :
df -h --total | sort -k5
Enfin il est même possible de spécifier plusieurs répertoire pour afficher leurs utilisations disques et la taille totale utilisée sur le disque.
sudo du -hsc /etc /boot
5.2M /etc
49M /boot
54M total
Inclure les fichiers et leurs tailles dans la sortie de du
Par défaut, du n’affiche que la taille des sous-répertoires.
Ainsi, la commande du n’affiche pas les fichiers avec leurs tailles.
Pour afficher la taille disque de tous les fichiers, il faut utiliser l’option -a :
du -ha
Ici par exemple, la sortie du liste les fichiers /boot qui contient beaucoup de fichiers .mod.
Bien entendu, le total de l’utilisation disque reste identique.
debian@linux:/tmp$ du -ha /boot/
4.9M /boot/vmlinuz-4.19.0-17-amd64
3.3M /boot/System.map-4.19.0-17-amd64
29M /boot/initrd.img-4.19.0-17-amd64
4.0K /boot/grub/i386-pc/gcry_rfc2268.mod
4.0K /boot/grub/i386-pc/part_msdos.mod
8.0K /boot/grub/i386-pc/macho.mod
4.0K /boot/grub/i386-pc/bufio.mod
8.0K /boot/grub/i386-pc/drivemap.mod
4.0K /boot/grub/i386-pc/dm_nv.mod
4.0K /boot/grub/i386-pc/cbls.mod
20K /boot/grub/i386-pc/gcry_des.mod
4.0K /boot/grub/i386-pc/part_dfly.mod
16K /boot/grub/i386-pc/relocator.mod
4.0K /boot/grub/i386-pc/cpuid.mod
12K /boot/grub/i386-pc/gcry_tiger.mod
4.0K /boot/grub/i386-pc/boot.img
4.0K /boot/grub/i386-pc/ctz_test.mod
4.0K /boot/grub/i386-pc/crc64.mod
[..]
49M /boot/
Exclure les fichiers correspondant à un motif
Du possède une option –exclude pour exclure des dossiers ou entrées dans la sortie du.
Attention cela ne modifie pas le total de la taille du répertoire.
Par exemple pour exclure le dossier phpmyadmin.
du -ha /var/www/ --exclude=phpmyadmin
Pour exclure les dossiers ou fichiers commençant par D.
du -ha --exclude=./D*
Enfin pour exclure les fichiers cachés.
du -ha --exclude=./.*
Enfin il est possible d’utiliser plusieurs fois cet argument si vous souhaitez exclure plusieurs éléments :
du -ha --exclude=./.* --exclude=./D*
Filtrer l’utilisation disque en Go ou To
Enfin on peut utiliser grep et les expressions régulières afin de filtrer sur la taille de fichiers pour trouver les fichiers volumineux sur le disque.
Par exemple pour n’afficher que les tailles en Mo ou Go :
du -ha /var/www/|egrep "^[0-9.,]+(M|G)"
Ou encore n’afficher que les fichiers en Go ou To :
du -ha /var/www/|egrep "^[0-9.,]+(G|T)"
Comment trouver les fichiers les plus volumineux sur Linux
Enfin la commande DU de Linux peut s’utiliser pour trouver les fichiers ou dossiers les plus volumineux sur Linux.
Liens