118 votes

Comment analyser l'utilisation du disque en ligne de commande sous linux ?

du y df sont sympathiques, mais je ne sais pas comment filtrer les données qu'ils fournissent comme je le fais avec les SequoiaView . J'aimerais savoir quels sont les plus grands dossiers et les plus grands fichiers d'un coup d'œil.

173voto

heinrich5991 Points 1898

Vous pouvez également essayer le Utilisation du disque NCurses alias ncdu .

Utilisez-le comme ncdu -x -q si vous l'invoquez à distance (par exemple, par l'intermédiaire de ssh ) y ncdu -x autrement.

ncdu 1.6 ~ Use the arrow keys to navigate, press ? for help
    --- /home/geek -----------------------------------------------------------------
       27.6MiB  /qm test 1 rework
      312.0kiB  /sidebar
       88.0kiB  /rackerhacker-MySQLTuner-perl-6add618
        8.0kiB  /.w3m
        4.0kiB  /.cache
    e   4.0kiB  /.ssh
      160.0kiB   ng.tar.gz
       76.0kiB   plowshare_1~svn1673-1_all.deb
        4.0kiB   .bashrc
        4.0kiB   .bash_history
        4.0kiB   .profile
        4.0kiB   .htoprc
        4.0kiB   .bash_logout
        0.0  B   .lesshst

Cette fonction est également disponible sous Mac OS X.

Les drapeaux suivants sur la ligne de commande peuvent être utiles :

-q Quiet mode, doesn't update the screen 10 times a second
   while scanning, reduces network bandwidth used

-x Don't cross filesystem borders (don't descend into a
   directory which is a mounted disk)

Merci à Sorin Sbarnea.

52voto

Jaap Eldering Points 8835

Utilisez une combinaison des commandes et des options :

du --max-depth=1 2> /dev/null | sort -n -r | head -n20

pour ne voir que les plus grands. Si vous souhaitez l'utiliser souvent, liez-le à un alias, par exemple dans bash en ajoutant à ~/.bashrc

alias largest='du --max-depth=1 2> /dev/null | sort -n -r | head -n20'

9voto

nachoparker Points 191

Je voudrais recommander dutree qui offre une visualisation hiérarchique.

Vous pouvez sélectionner plus ou moins de niveaux de détail, et exclure des chemins pour mieux contrôler la visualisation. Vous pouvez également comparer différents chemins.

enter image description here

Il est implémenté en Rust, rapide et efficace.

$ dutree -h
Usage: dutree [options] <path> [<path>..]

Options:
    -d, --depth [DEPTH] show directories up to depth N (def 1)
    -a, --aggr [N[KMG]] aggregate smaller than N B/KiB/MiB/GiB (def 1M)
    -s, --summary       equivalent to -da, or -d1 -a1M
    -u, --usage         report real disk usage instead of file size
    -b, --bytes         print sizes in bytes
    -f, --files-only    skip directories for a fast local overview
    -x, --exclude NAME  exclude matching files or directories
    -H, --no-hidden     exclude hidden files
    -A, --ascii         ASCII characters only, no colors
    -h, --help          show help
    -v, --version       print version number

4voto

Teddy Points 6368

Vous voulez probablement xdu .

du -ax | xdu -n

Il y a aussi le système plus sophistiqué basé sur KDE. Filelight .

3voto

EvilMM Points 789

J'utilise habituellement

du -hsc * | sort -h

Ce que chaque option signifie pour du :

  • h : afficher les tailles dans un format lisible par l'homme (1K, 1M, 1G, ...)
  • s : summarize : affiche seulement un total pour chaque argument
  • c : affiche également un total général

El -h option sur sort lui fait comprendre le -h format (lisible par l'homme) sur du . Cette option est relativement nouvelle sur sort Il se peut donc que votre système ne le prenne pas en charge et vous oblige à utiliser l'option du -sc | sort -n à la place.

Si vous le faites sur une machine distante et que le processus prend beaucoup de temps, vous voudrez probablement exécuter ce processus en arrière-plan ou à l'intérieur d'une screen ou quelque chose de similaire pour éviter une perte de connexion.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X