Uso de disco do Linux

3

Estou tentando descobrir quais pastas ocupam / partição. Eu vejo que muito espaço em disco vai para o diretório Jenkins

sudo du -sh /home/jenkins
289G    /home/jenkins

Quando eu examino a pasta de diretórios do Jenkins, a maior pasta é:

sudo du -sh /home/jenkins/*
137G    /home/jenkins/jobs

E o resto das pastas são relativamente pequenas, dezenas de K / M ... No total, existem 50 pastas em / home / jenkins.

Como posso encontrar quem "come" o espaço?

Obrigado

    
por Greg Dan 07.03.2017 / 18:08

5 respostas

5

A diferença entre: sudo du -sh /home/jenkins e sudo du -sh /home/jenkins/* é que em quase todos os shells (com as configurações padrão), * não inclui arquivos ou diretórios ocultos. Oculto significa nomes começando com um período (por exemplo, se houver um /home/jenkins/.temp/ , que não seria incluído no segundo du ).

Portanto, parece que você tem cerca de 289-137 = 152 GiB de arquivos ocultos. A maneira mais fácil de descobrir onde estão é algo assim:

sudo du -m /home/jenkins | sort -nr | less

A remoção do -s fará com que du mostre todos os subdiretórios, o que você deseja. Isso inclui os ocultos. Se isso ainda não for encontrado, adicione um -a :

sudo du -am /home/jenkins | sort -nr | less

que também mostrará arquivos individuais, caso você tenha alguns arquivos ocultos muito grandes. Provavelmente, também demorará um pouco mais para ser executado (adicionar arquivos geralmente expande bastante a saída).

Existem também front-ends gráficos que você pode usar; pessoalmente, eu uso o xdiskusage (mas talvez porque eu usei para sempre):

sudo du -am /home/jenkins | xdiskusage -
    
por 07.03.2017 / 18:43
0

Procure trabalhos dentro com o seguinte comando

du -sm /home/jenkins/jobs/* |sort -nr

Eu sugeri uma ordenação reversa para que a maior seja a última, logo acima da sua nova linha de comando, -n especifica uma comparação numérica, du saída está configurada para sempre mostrar como MB para que as linhas possam ser classificadas de forma sensata.

edit: alguém sugeriu também adicionar -a a du para contar todos os arquivos (incluindo ocultos), mas o comentário desapareceu?

    
por 07.03.2017 / 18:21
0

Use o comando find:

find /home/jenkins/jobs/ -type f -size +100M -exec ls -lh {} \;
    
por 07.03.2017 / 18:48
0

Para uma rápida visão geral gráfica, você pode usar Filelight , o que facilita seguir os caminhos com maior compartilhamento de uso de disco ou um utilitário semelhante:

link

    
por 07.03.2017 / 18:57
0

Talvez essas três opções juntas possam alcançar os resultados esperados:

-s, --summarize

display only a total for each argument

-c, --total

produce a grand total

-h, --human-readable

print sizes in human readable format (e.g., 1K 234M 2G)

linus@host: / $ sudo du -sch *
9,8M    bin
362M    boot
4,0K    cdrom
12K     dev
32K     docker
170M    etc
9,5G    data
36G     home
0       initrd.img
0       initrd.img.old
2,9G    lib
4,4M    lib64
16K     lost+found
84G     media
12K     mnt
1,1G    opt
du: cannot access ‘proc/6836/task/6836/fd/4’: No such file or directory
du: cannot access ‘proc/6836/task/6836/fdinfo/4’: No such file or directory
du: cannot access ‘proc/6836/fd/4’: No such file or directory
du: cannot access ‘proc/6836/fdinfo/4’: No such file or directory
0       proc
19M     root
du: cannot access ‘run/user/1000/gvfs’: Permission denied
1,7M    run
13M     sbin
4,0K    srv
0       sys
52K     tmp
7,5G    usr
14G     var
0       vmlinuz
0       vmlinuz.old

154G    total  
    
por 07.03.2017 / 19:21

Tags