Vérifier l'espace disque et l'utilisation sous Linux
Ce guide vous explique comment vérifier l’espace disque et l’utilisation du stockage sur un système Linux (VPS, serveur dédié, instance cloud). Un disque saturé peut dégrader les performances, faire échouer des services ou empêcher les connexions. Savoir utiliser df, du et find permet de surveiller les partitions, identifier les répertoires et fichiers les plus gourmands, et anticiper les problèmes avant une panne.
Prérequis
- Accès SSH à votre serveur Linux (Debian, Ubuntu, ou autre distribution)
- Droits d’administration (sudo) pour consulter tous les répertoires (certains sont protégés)
Connexion au serveur
Connectez-vous en SSH à votre serveur :
ssh utilisateur@adresse_ip_serveur
Commandes utiles pour l’espace disque
Linux fournit des outils en ligne de commande pour suivre le stockage utilisé, l’espace disponible et quels fichiers ou répertoires consomment le plus d’espace.
Vue d’ensemble des commandes
| Commande | Description | Usage typique |
|---|---|---|
df | Affiche l’espace utilisé et disponible sur les systèmes de fichiers montés | Vue d’ensemble des partitions |
du | Estime l’espace utilisé par les répertoires et fichiers | Identifier les répertoires les plus lourds |
find | Recherche des fichiers selon des critères (taille, nom, type, date) | Trouver les gros ou vieux fichiers |
Vérifier l’espace disque avec df
La commande df (disk free) donne une vue rapide de l’espace disque sur tous les systèmes de fichiers montés. Utilisez-la pour repérer les partitions qui se remplissent.
Syntaxe de df
df [OPTION]... [FICHIER]...
- OPTION : options de la commande (format lisible, type de FS, inodes, etc.)
- FICHIER : fichier ou répertoire optionnel. Si absent,
dfaffiche tous les systèmes de fichiers montés.
Options courantes de df
| Option | Description |
|---|---|
-h, --human-readable | Affiche les tailles en unités lisibles (K, M, G) |
-B, --block-size=SIZE | Utilise une taille de bloc donnée (ex. -BM pour mégaoctets) |
-i, --inodes | Affiche l’utilisation des inodes au lieu des blocs |
-l, --local | Limite l’affichage aux systèmes de fichiers locaux |
--total | Affiche une ligne de total |
-t, --type=TYPE | Limite aux systèmes de fichiers d’un type (ex. ext4, xfs) |
-x, --exclude-type=TYPE | Exclut un type de système de fichiers (ex. tmpfs) |
-T | Affiche le type de système de fichiers dans une colonne |
Exemples : commande df
Afficher l’espace disque de tous les systèmes de fichiers (format lisible) :
df -h
Exemple de sortie :
Syst. de fichiers Taille Utilisé Dispo Util% Monté sur
...
/dev/sda2 150G 12G 132G 9% /
/dev/sda1 260M 7,1M 253M 3% /boot/efi
tmpfs 768M 4,0K 768M 1% /run/user/1000
/dev/sdb1 40G 1,1G 37G 3% /mnt
Colonnes utiles :
- Syst. de fichiers : périphérique ou système de fichiers
- Taille : taille totale de la partition
- Utilisé : espace déjà utilisé
- Dispo : espace disponible
- Util% : pourcentage d’utilisation
- Monté sur : point de montage
Vérifier l’espace d’un point de montage précis (ex. /mnt) :
df -h /mnt
N’afficher que les systèmes de fichiers d’un type donné (ex. ext4) :
df -h -t ext4
Exclure un type de système de fichiers (ex. tmpfs) :
df -h -x tmpfs
Afficher le type de système de fichiers :
df -hT
Afficher l’utilisation des inodes :
Les inodes stockent les métadonnées des fichiers et répertoires. Si le disque a de l’espace libre mais que le nombre d’inodes est épuisé, vous ne pourrez plus créer de fichiers.
df -i
Exemple de sortie :
Syst. de fichiers Inodes IUtil ILibre IUtil% Monté sur
...
/dev/sda2 41611680 123735 41487945 1% /
/dev/sdb1 2621440 12 2621428 1% /mnt
- Inodes : nombre total d’inodes
- IUtil : inodes utilisés
- ILibre : inodes libres
- IUtil% : pourcentage d’inodes utilisés
Vérifier l’utilisation disque avec du
La commande du (disk usage) estime l’espace utilisé par les répertoires et fichiers. Elle sert à identifier quels répertoires ou fichiers consomment le plus d’espace.
Syntaxe de du
du [OPTION]... [FICHIER]...
- OPTION : options de la commande
- FICHIER : répertoire ou fichier à analyser. Si absent,
dupart du répertoire courant.
Options courantes de du
| Option | Description |
|---|---|
-h, --human-readable | Tailles en unités lisibles (K, M, G) |
-s, --summarize | Affiche uniquement le total du répertoire indiqué |
-a, --all | Inclut tous les fichiers, pas seulement les répertoires |
-c, --total | Affiche un total global en fin de sortie |
-d N, --max-depth=N | Limite la profondeur de parcours à N niveaux |
--exclude=MOTIF | Exclut les fichiers/répertoires correspondant au motif |
Exemples : commande du
Taille totale d’un répertoire (format lisible) :
sudo du -sh /chemin/vers/repertoire
Il est recommandé d’utiliser sudo pour accéder à tous les répertoires (certains sont protégés).
Inclure tous les fichiers (y compris cachés) :
sudo du -ah /chemin/vers/repertoire
Exclure certains types de fichiers (ex. fichiers .log) :
sudo du -ah --exclude='*.log' /chemin/vers/repertoire
Taille des sous-répertoires au premier niveau (ex. /var) :
sudo du -h --max-depth=1 /var
Exemple de sortie :
22M /var/log
97M /var/lib
4,0K /var/yp
216M /var
Trier les sous-répertoires du plus gros au plus petit :
sudo du -h --max-depth=1 /var | sort -rh
Exemple de sortie :
216M /var
97M /var/lib
97M /var/cache
22M /var/log
...
Trouver les gros fichiers avec find
La commande find permet de rechercher des fichiers selon la taille, le nom, le type ou la date. Combinée à du, elle aide à repérer les fichiers qui prennent le plus de place.
Lister les fichiers de plus de 50 Mo dans un répertoire (ex. /var) :
sudo find /var -type f -size +50M -exec ls -lh {} \;
Exemple de sortie :
-rw-r--r-- 1 root root 65M May 6 20:29 /var/lib/rpm/rpmdb.sqlite
Rechercher les fichiers de plus de 100 Mo dans tout le système (hors répertoires courants à ignorer) :
sudo find / -type f -size +100M 2>/dev/null
La redirection 2>/dev/null masque les erreurs d’accès (permission denied) pour alléger la sortie.
Rechercher les fichiers modifiés depuis plus de 30 jours (pour le nettoyage) :
sudo find /var/log -type f -mtime +30
Récapitulatif des commandes
| Objectif | Commande |
|---|---|
| Vue d’ensemble des partitions | df -h |
| Espace d’un point de montage | df -h /mnt |
| Utilisation des inodes | df -i |
| Taille d’un répertoire | sudo du -sh /chemin |
| Sous-répertoires triés par taille | sudo du -h --max-depth=1 /var | sort -rh |
| Fichiers de plus de 50 Mo | sudo find /var -type f -size +50M -exec ls -lh {} \; |
En cas de problème
Partition pleine ou quasi pleine
- Utilisez
dupour identifier les répertoires les plus lourds (souvent/var,/tmp,/home, logs). - Nettoyez les anciens logs :
sudo journalctl --vacuum-time=7dou suppression de fichiers dans/var/log. - Videz les caches de paquets :
sudo apt clean(Debian/Ubuntu) ou équivalent. - Supprimez les fichiers temporaires dans
/tmpsi nécessaire.
« No space left on device » alors qu’il reste de l’espace
- Vérifiez les inodes :
df -i. Si IUtil% est à 100 %, le disque n’a plus d’inodes (nombreux petits fichiers). Il faut supprimer ou déplacer des fichiers pour libérer des inodes.
Commandes qui échouent par manque de droits
- Utilisez
sudopourduetfindsur des répertoires système (/var,/etc,/root, etc.).
Références
- Pages de manuel :
man df,man du,man find