Savoir combien d'espace un fichier ou un dossier consomme sur une partition est essentiel pour un administrateur système ou un développeur. Cette connaissance vous permet de planifier les mises à niveau de stockage, de gérer et de faire pivoter les fichiers et d'effectuer d'autres tâches d'administration système nécessaires. Ma commande préférée pour ce type de collecte de données est le du
commande.
Le du
La commande résume l'utilisation du disque de chaque fichier et de manière récursive pour chaque répertoire. Il offre de nombreuses options utiles individuellement ou dans les bonnes combinaisons. Pour toutes les options, reportez-vous à la page de manuel du. Voici une de mes astuces préférées avec du
.
Utiliser du
J'aime généralement vérifier l'utilisation de plusieurs répertoires simultanément. De cette façon, je sais quels répertoires sont mes plus grands contrevenants. Supposons que je veuille vérifier tous les répertoires dans /var
. Voici mon du
standard commande, avec de longues options pour plus de clarté :
$ du --all --human-readable \
--one-file-system \
--max-depth=1 /var
Voici une ventilation de chaque option (avec la version courte entre parenthèses) :
-
--all
(-a
) :imprimez tous les fichiers et dossiers. --human-readable
(-h
) :imprimez les tailles en gros morceaux plutôt qu'en octets (par exemple, 1 Ko au lieu de 1 024).--one-file-system
(-x
):Ignorer les répertoires sur différents systèmes de fichiers. Le résultat est que si/var/log
est monté séparément, il n'est pas compté car il se trouve sur un système de fichiers séparé. Cela garantit que je vois l'espace disque utilisé sous un seul chemin de répertoire et non sur plusieurs supports physiques.--max-depth=1
(-d
) :Affiche le total pour un répertoire (ou un fichier, avec--all
) uniquement s'il s'agit, dans ce cas, d'un niveau en dessous de/var
. Si vous utilisez2
à la place, il imprime les dossiers deux niveaux en dessous de/var
. Contrairement au--one-file-system
option, la taille signalée reste la même avec cette option ; Je n'ai simplement pas besoin de voir autant de résultats.
Voici l'exemple de sortie de mon du
habituel commande :
$ du -ahx --max-depth=1 /var
0 /var/lock
0 /var/mail
0 /var/run
12K /var/kerberos
12K /var/sieve
135M /var/spool
1.6G /var/log
181M /var/cache
20K /var/db
336K /var/named
3.7G /var/vmail
4.0K /var/adm
4.0K /var/crash
4.0K /var/ftp
4.0K /var/games
4.0K /var/gopher
4.0K /var/local
4.0K /var/nis
4.0K /var/opt
4.0K /var/preserve
4.0K /var/.updated
4.0K /var/yp
4.2G /var/lib
44K /var/tmp
8.0K /var/empty
9.7G /var
Bien que cette sortie soit bonne, il serait encore mieux de la trier par capacité. De cette façon, il est encore plus facile de lire en un coup d'œil.
[ Découvrez 10 tutoriels pour affiner vos compétences en ligne de commande. ]
L'astuce :trier la sortie
La bonne nouvelle est que je peux trier la sortie dans n'importe quel ordre en passant sort -k1 -rh
comme entrée. Par exemple, voici ce que j'obtiens lorsque j'exécute une commande pour trier la sortie par la première colonne (capacité) :
$ du -ahx --max-depth=1 /var | sort -k1 -rh
9.7G /var
4.2G /var/lib
3.7G /var/vmail
1.6G /var/log
181M /var/cache
135M /var/spool
336K /var/named
44K /var/tmp
20K /var/db
12K /var/sieve
12K /var/kerberos
8.0K /var/empty
4.0K /var/yp
4.0K /var/.updated
4.0K /var/preserve
4.0K /var/opt
4.0K /var/nis
4.0K /var/local
4.0K /var/gopher
4.0K /var/games
4.0K /var/ftp
4.0K /var/crash
4.0K /var/adm
0 /var/run
0 /var/mail
0 /var/lock
Surveiller l'utilisation du disque
Il existe également des outils graphiques pour vérifier l'espace disque, comme le ncdu
commande, mais pour moi, le du
commande est simple, directe et efficace. J'espère que cette astuce rapide vous aidera à améliorer vos bases d'administrateur système. Ces options ont rendu la collecte de données sur la capacité des fichiers beaucoup plus facile pour moi, et lorsqu'elles sont entrées en tant qu'alias dans votre .bashrc, cela devient une seconde nature.