Comment optimiser l'espace de stockage sous Linux
15 min de lecture - 22 mai 2026

Techniques pratiques pour récupérer et optimiser l'espace disque sur les serveurs Linux, du nettoyage du cache des paquets à l'optimisation du système de fichiers et à la maintenance automatisée.
Comment optimiser l'espace de stockage sous Linux
Pendant des années, la réponse par défaut à un disque plein était simple : ajouter plus de stockage. Le stockage était bon marché. Ce n'est plus le cas. Les prix de la mémoire flash NAND ont grimpé en flèche depuis fin 2025, sous l'effet de la demande en infrastructures d'IA qui accapare la capacité de production mondiale. Les prix contractuels des SSD d'entreprise ont augmenté de 85 à 90 % rien qu'au premier trimestre 2026, le prix public des disques NVMe grand public a pratiquement doublé, et les nouvelles capacités de production de NAND ne devraient pas être opérationnelles avant 2027.
Résultat : chaque gigaoctet sur votre serveur coûte plus cher qu'il y a un an, ce qui fait de l'optimisation de ce que vous possédez déjà un bien meilleur investissement que d'acheter de l'espace supplémentaire. Cet article explique comment identifier ce qui occupe votre espace disque, le nettoyer et configurer votre système de fichiers pour utiliser le stockage plus efficacement.
Identifier ce qui utilise votre disque
Commencez par df -h pour obtenir un aperçu de chaque système de fichiers monté, y compris la taille totale, l'espace utilisé et le pourcentage d'utilisation. Toute partition dépassant 90 % nécessite une attention particulière. Vérifiez les partitions spécifiques individuellement si nécessaire :
df -h /
df -h /bootNe négligez pas les inodes. Un système de fichiers peut disposer d'espace libre mais ne pas avoir d'inodes disponibles, ce qui provoque les mêmes défaillances. Vérifiez avec df -i.
Si df affiche une utilisation de 100 % mais que les chiffres ne concordent pas, vous avez probablement des fichiers fantômes. Il s'agit de fichiers qui ont été supprimés mais qui sont toujours ouverts par un processus en cours d'exécution. L'espace ne sera pas libéré tant que le processus n'aura pas relâché le descripteur de fichier. Repérez-les avec :
sudo lsof / | grep deletedUne fois que vous savez quels systèmes de fichiers sont sous pression, explorez les répertoires avec du ou ncdu. Pour des vérifications rapides ou la création de scripts, du est l'outil qu'il vous faut :
du -h --max-depth=1 /varAjoutez -x lors de l'analyse à partir de la racine pour rester sur un seul système de fichiers et ignorer les montages virtuels comme /proc. Pour une exploration interactive sur un serveur distant, ncdu vous offre une interface textuelle navigable où vous pouvez trier par taille et supprimer des fichiers directement.
| Fonctionnalité | du | ncdu |
|---|---|---|
| Interface | Sortie statique en ligne de commande | Interface utilisateur interactive (TUI) avec navigation par touches fléchées |
| Idéal pour | La création de scripts et les vérifications rapides | Exploration manuelle sur des serveurs distants |
| Tri | Nécessite un pipelining vers sort | Intégré (par taille, nom, etc.) |
| Suppression de fichiers | Commande rm commande | Intégrée (appuyer sur d) |
Vider les caches de paquets, les journaux et les doublons
Trois types de fichiers représentent systématiquement la majeure partie de l'espace récupérable : les caches de paquets, les fichiers journaux et les fichiers volumineux ou en double.
Caches de paquets et dépendances orphelines
Chaque installation ou mise à jour laisse derrière elle des fichiers de paquets mis en cache. Au fil du temps, ceux-ci s’accumulent silencieusement. Nettoyez-les en fonction de votre distribution :
| Tâche | Debian/Ubuntu (APT) | Fedora/RHEL (DNF) | Arch (Pacman) |
|---|---|---|---|
| Vider le cache | sudo apt clean | sudo dnf clean all | sudo paccache -r |
| Supprimer les fichiers orphelins | sudo apt autoremove | sudo dnf autoremove | pacman -Rs $(pacman -Qdtq) |
| Purger les configurations restantes | sudo apt autoremove --purge | Géré par autoremove | N/A |
Prévisualisez d'abord les modifications avec sudo apt autoremove --dry-run. Les anciens noyaux peuvent occuper 1,5 Go ou plus sur les systèmes Ubuntu. Conservez toujours le noyau en cours d'exécution et une sauvegarde avant de supprimer les anciennes versions.
Si vous utilisez Snap ou Flatpak, ceux-ci accumulent également des révisions et des fichiers d'exécution :
sudo snap set system refresh.retain=2
flatpak uninstall --unusedFichiers journaux dans /var/log
Les journaux sont les plus grands consommateurs de disque silencieux. Recherchez d'abord les journaux trop volumineux :
du -xhd1 /var/log | sort -h
find /var/log -type f -size +100MPour les journaux systemd, utilisez l'outil vacuum intégré plutôt que de supprimer les fichiers manuellement :
sudo journalctl --vacuum-size=500MPour définir une limite permanente, modifiez /etc/systemd/journald.conf:
SystemMaxUse=500M
MaxRetentionSec=14dayPour les fichiers journaux actifs encore ouverts par un service, n'utilisez pas rm. L'espace ne sera pas libéré tant que le processus détient le descripteur de fichier. Utilisez plutôt la commande « truncate » :
sudo truncate -s 0 /var/log/syslogFichiers volumineux et en double
Recherchez les fichiers de plus de 500 Mo sur l'ensemble du système :
sudo find / -type f -size +500M -exec ls -lh {} +Pour les doublons, rmlint utilise des comparaisons basées sur des hachages pour détecter les fichiers en double, les répertoires vides et les liens symboliques rompus. Examinez attentivement le résultat avant de supprimer quoi que ce soit, en particulier sur les serveurs où des fichiers identiques peuvent remplir des rôles différents.
Optimisation au niveau du système de fichiers
Après avoir nettoyé vos fichiers, vous pouvez gagner davantage d'espace utilisable sur le même matériel en optimisant votre système de fichiers.
Réduction de l'espace réservé ext4
Par défaut, ext4 réserve 5 % du système de fichiers pour la racine. Sur une partition de données de 2 To, cela représente 100 Go inutilisés. Sur un serveur dédié où la partition de données n'est pas le système de fichiers racine, vous pouvez réduire cette valeur en toute sécurité :
sudo tune2fs -m 1 /dev/sdXnCela fixe la réservation à 1 %, ce qui est suffisant pour la plupart des cas d'utilisation. Vérifiez la modification avec tune2fs -l /dev/sdXn.
Compression transparente Btrfs
Btrfs prend en charge la compression transparente des fichiers, ce que n'offrent pas ext4 et XFS. Montez avec compress=zstd pour compresser automatiquement les données à l'écriture. ZSTD offre un bon équilibre entre vitesse et taux de compression. Pour les charges de travail mixtes, compress-force=zstd peut permettre de réaliser des économies supplémentaires de 10 à 20 % en compressant des fichiers que l'algorithme heuristique ignorerait normalement.
Pour compresser les données existantes sur un volume Btrfs :
btrfs filesystem defragment -czstd /path/to/dirSoyez prudent avec cette opération sur les volumes comportant des instantanés ou des liens de référence. La défragmentation rompt les relations de copie à l'écriture, ce qui peut en réalité augmenter l'utilisation du disque.
Liens de référence pour les copies instantanées
XFS et Btrfs prennent tous deux en charge les reflinks, qui créent des copies de fichiers partageant des blocs physiques jusqu’à ce qu’une copie soit modifiée. Cela est utile pour cloner des images de disque de VM ou des couches de conteneurs sans doubler la consommation de stockage :
cp --reflink=always source.img clone.imgAllocation dynamique LVM
L'allocation dynamique LVM vous permet d'allouer plus d'espace logique que vous n'en disposez physiquement, en n'utilisant de l'espace disque réel qu'au fur et à mesure de l'écriture des données. Cela s'avère utile lorsque vous exécutez plusieurs machines virtuelles ou conteneurs qui ont chacun besoin de leur propre volume logique, mais qui ne les rempliront pas tous simultanément.
Pour éviter que les pools à allocation dynamique ne s'épuisent, activez l'extension automatique dans /etc/lvm/lvm.conf en définissant thin_pool_autoextend_threshold et thin_pool_autoextend_percent.
Automatisation de la maintenance du stockage
Les nettoyages manuels ne fonctionnent qu'une seule fois. Les nettoyages automatisés maintiennent vos disques en bon état entre le moment présent et votre prochaine connexion. Utilisez des systemd des minuteries cron dans la mesure du possible. Ils enregistrent automatiquement les journalctl automatiquement, et Persistent=true rattrape les exécutions manquées après un redémarrage.
| Outil | Fréquence | Fréquence |
|---|---|---|
| Rotation des journaux | logrotate | Quotidienne ou hebdomadaire |
| Nettoyage du journal | journalctl --vacuum-time | Hebdomadaire |
| Nettoyage du cache des paquets | apt clean / dnf clean all | Mensuel |
| Purge des fichiers temporaires | systemd-tmpfiles | Quotidien |
| Nettoyage de Docker | docker system prune | Semaine |
| Surveillance de l'utilisation du disque | Script personnalisé + minuteur systemd | Toutes les 15 à 30 minutes |
Docker mérite une attention particulière. Les journaux des conteneurs peuvent grossir sans aucun signe avant-coureur. Limitez la taille des journaux de manière globale en modifiant /etc/docker/daemon.json. Définissez max-size et max-file sous la log-opts clé pour empêcher que des conteneurs individuels ne saturent votre disque.
Pour une surveillance proactive, mettez en place un système d'alerte à deux niveaux : un avertissement à 80 % d'utilisation du disque et une alerte critique à 90 %. Enregistrez l'utilisation du disque toutes les heures afin de pouvoir suivre les tendances de croissance et prévoir quand une partition atteindra sa capacité maximale :
0 * * * * df --output=source,size,used,pcent >> /var/log/disk_usage.csvUne mesure de sécurité supplémentaire : montez /var, /tmpet /home sur des partitions distinctes. Cela empêche les journaux ou les données utilisateur de prendre le dessus et de saturer le système de fichiers racine, ce qui pourrait entraîner un plantage de l'ensemble du système.
Tirer le meilleur parti de chaque gigaoctet
Avec la hausse des prix du stockage et aucune amélioration prévue avant la mise en service de la nouvelle production de NAND en 2027, optimiser ce dont vous disposez n'est pas seulement une bonne pratique. Cela permet de réaliser de réelles économies. L'approche est simple :
- Auditez l'utilisation de vos disques avec
df,du, etncduavant d'apporter des modifications. - Videz les caches des paquets, effectuez la rotation des journaux et supprimez les doublons pour récupérer de l'espace immédiatement.
- Optimisez votre système de fichiers. Réduisez les blocs réservés ext4, activez la compression Btrfs ou utilisez l'allocation dynamique LVM pour tirer le meilleur parti de votre matériel.
- Automatisez la maintenance à l'aide des minuteries systemd afin que vos disques restent propres entre deux audits.
- Surveillez les tendances d'utilisation et configurez des alertes à 80 % et 90 % pour détecter les problèmes à un stade précoce.
Si vous avez besoin d'une infrastructure de serveurs dédiés avec un stockage NVMe haute performance, les serveurs dédiés de FDC sont conçus pour cela.
Pourquoi il est important d'avoir un VPS puissant et sans compteur
Besoin de performances fiables et d'un trafic illimité ? Un puissant VPS sans compteur offre la vitesse, l'évolutivité et la bande passante dont vous avez besoin, sans vous soucier des limites d'utilisation.
3 min de lecture - 9 mai 2025
Comment optimiser l'espace de stockage sous Linux
15 min de lecture - 22 mai 2026