Como analisar o uso do disco na linha de comando do linux?

89

du e df são bons, mas não sei como filtrar os dados que eles fornecem da maneira que eu faço com SequoiaView . Gostaria de saber quais são as maiores pastas e os maiores arquivos em um relance.

    
por Jader Dias 22.06.2011 / 14:30

6 respostas

130

Você também pode querer experimentar o Uso do Disco NCurses , também conhecido como ncdu .

Use-o como ncdu -x -q se estiver invocando remotamente (por exemplo, ssh ) e ncdu -x de outra forma.

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

Isso também está disponível no Mac OS X.

Os seguintes sinalizadores para a linha de comando podem ser úteis:

-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)

Graças a Sorin Sbarnea.

    
por 21.10.2012 / 16:45
44

Use alguma combinação dos comandos e opções:

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

para visualizar apenas os maiores. Se você quiser usá-lo bastante, vincule-o a um alias, por exemplo no bash adicionando ao ~ / .bashrc

alias largest='du --max-depth=1 2> /dev/null | sort -n -r | head -n20'
    
por 22.06.2011 / 15:11
4

Você provavelmente deseja xdu .

du -ax | xdu -n

Há também o Filelight mais sofisticado baseado no KDE.

    
por 22.06.2011 / 17:00
2

Eu costumo usar

du -hsc * | sort -h

O que cada opção significa para du :

  • h: mostra tamanhos em formato legível (1K, 1M, 1G, ...)
  • s: resume: exibe apenas um total para cada argumento
  • c: também exibe um total geral

A opção -h em sort faz com que ela entenda o formato -h (legível por humanos) em du . Esta opção é relativamente nova em sort , então talvez seu sistema não suporte e força você a usar du -sc | sort -n .

Se você fizer isso em uma máquina remota e o processo demorar muito, você provavelmente desejará executar esse processo em segundo plano ou dentro de um screen ou algo semelhante para evitar uma perda de conexão.

    
por 30.11.2015 / 19:21
2

Eu gostaria de recomendar dutree , que oferece uma visualização hierárquica .

Você pode selecionar mais ou menos níveis de detalhes e excluir caminhos para melhor controle da visualização. Você também pode comparar diferentes caminhos.

Ele é implementado no Rust, rápido e eficiente.

$ 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
    
por 03.05.2018 / 11:33
1
du -h 2> /dev/null | sort -hr | head -n20

du -h fornece uma estimativa da lista de espaço em disco de leitura humana com um total de 2 > / dev / null suprime quaisquer erros como o acesso de leitura negado
sort -hr ordena o tamanho do arquivo legível em ordem reversa
head -n20 reduza a lista para 20

Lembre-se de que os diretórios e arquivos de acesso de leitura negados são excluídos

    
por 27.03.2017 / 01:59