Meu disco rígido está cheio - como posso determinar o que está ocupando espaço? [duplicado]

20

Tenho 20 GB para a partição raiz do Mint-KDE 18. Não há partição extra para casa. Eu não estou fazendo nada especial, apenas Chrome, KRDC, Teamviewer e a partição estava meio vazia. Uma coisa que fiz foi copiar no Dolphin de webdavs repo na internet para minha unidade de rede via samba. Nada foi armazenado no meu PC.

Agora recebi a mensagem de que meu disco está cheio. Quando eu abro meu diretório raiz ou home no Dolphin ele diz 0 MB grátis.

Qual é o caminho mais rápido via terminal para visualizar meus diretórios e arquivos, maior primeiro ou mais recente, etc?

    
por Hrvoje T 05.10.2016 / 08:46

11 respostas

29
du -h -d 1 /

Isso exibirá o tamanho de todos os diretórios de nível superior em seu diretório raiz no formato 'legível por humanos'. Você também pode apenas fazer

du -h -d 1 / | grep '[0-9]\+G' 

para ver apenas os que levam um par GB ou mais.

Para um nível mais detalhado de detalhes, faça algo como

ls -R -shl / | grep '^[0-9.]\{4,12\}\+[KG]'

, que mostrará todos os arquivos dentro e abaixo do seu diretório raiz que tenham tamanho 1G ou maior.

** observe que você pode precisar preceder sudo aos comandos acima.

edit - acabou de ver que você quer que eles sejam classificados por mais novos ou maiores

Tente isso

du -h -d 1 / | grep '[0-9]\+G' | sort -h
    
por 05.10.2016 / 08:50
20

Em vez de todos os comandos manuais nas outras respostas, eu recomendo uma ferramenta criada especificamente para essa finalidade: ncdu , instale com o gerenciador de pacotes de sua escolha.

Ele é apenas um pequeno utilitário de linha de comando, portanto você deve poder instalá-lo quando tiver pouco espaço.

Em seguida, basta executar

$ ncdu /

para analisar todo o sistema.

Veja link para capturas de tela:

    
por 05.10.2016 / 14:41
10

Meu comando favorito para esse propósito é

du | sort -nr | head -20

du sem opções lista todos os subdiretórios e seus tamanhos.
sort classifica por tamanho. n pede uma classificação numérica. r inverte o resultado para o maior primeiro.
head -20 limita a saída a 20 linhas.

Ao listar diretórios em vez de arquivos, você encontrará diretórios que contêm um grande número de arquivos pequenos.

Para que sort funcione corretamente, não podemos usar saída legível, mas a maior é a maior, mesmo que você não consiga analisar o tamanho dela.

A saída de um diretório incluirá seus subdiretórios, portanto, você verá .cache listado antes de .cache/chromium (ou qualquer outro)

    
por 05.10.2016 / 12:36
5

What is the fastest way via terminal to view my directories and files, biggest first or newest etc?

Você pode usar o comando find para exibir arquivos com seus tamanhos em formato legível:

find / -type f -size +300000k -exec ls -lh {} \; | awk '{ print $9 ": " $5 }'

ajuste o valor de +300000k .

    
por 05.10.2016 / 12:03
4

Antes de executar o comando du -h mais demorado sugerido por outras pessoas, dê uma olhada em algumas pastas que podem ser removidas com facilidade e geralmente contêm lixo. Você pode querer du -h em cada um deles se eles contiverem muitos arquivos, antes do global du -h .

  1. /tmp
  2. %código%; mas mais cuidado aqui antes, veja esta página aqui no site sobre como ele difere de /var/tmp .
  3. /tmp - seu diretório home: você pode muito bem ter baixado alguns arquivos grandes aqui e esquecido sobre eles, ou construído algo que puxa / gera uma enorme quantidade de dados e não os apaga etc. É claro, os arquivos aqui são principalmente aqueles que você colocou, então você deve saber o que é seguro excluir e o que não é.
  4. /home/your_user_name e /opt - não são relevantes no seu caso específico, desde que você indicou que não instalou nada especial, mas para outras pessoas que estão lendo esta questão - estes são destinos típicos para instalar software que não faz parte de sua distribuição Linux. Certifique-se de que você realmente precisa desse software e não apenas o mantenha por aí.
por 05.10.2016 / 11:02
3

Use du com os parâmetros -h --max-depth = (configurações de 1 a 3 são úteis) para detalhar onde o espaço é usado. Se esses números não forem somados, tente interromper serviços não essenciais, como servidores da Web, daemons de log, nfs (ou apenas reinicializar) - processos em execução também podem ocupar espaço no sistema de arquivos mantendo um arquivo já desvinculado aberto serviços de registro) e verifique se o uso do espaço diminui.

    
por 05.10.2016 / 10:50
3

Acho que baobab é padrão no Linux Mint. Deve deixar você visualmente em quais diretórios usam mais espaço.

Há uma boa chance de que grande parte dela seja o cache do navegador. A ferramenta visual permite que você interativamente veja exatamente onde ela está.

    
por 06.10.2016 / 01:49
2

Existe um belo freeware multiplataforma chamado JDiskReport que inclui uma GUI para explorar o que está ocupando esse espaço.

Exemplo de captura de tela:

Claro, você precisará limpar um pouco de espaço manualmente antes de fazer o download e instalá-lo, ou fazer o download para uma unidade diferente (como um pen drive USB).

    
por 05.10.2016 / 19:12
2

Você pode usar ferramentas padrão como find e sort para analisar o uso do espaço em disco.

Listar os diretórios classificados por seu tamanho:

find / -mount -type d -exec du -s "{}" \; | sort -n

Listar arquivos classificados por tamanho:

find / -mount -printf "%k\t%p\n" | sort -n
    
por 05.10.2016 / 18:51
2

Estou atrasado para a festa. Parece que todo mundo tem sua própria versão favorita de du | sort com bandeiras diferentes.

Sempre achei fácil lembrar "patos":

du -cks * | sort -rn | head -11

Na% man_de% manpage:

   -c, --total
          produce a grand total

   -k     like --block-size=1K

   -s, --summarize
          display only a total for each argument

Eu recebi a dica do livro "Linux Server Hacks: 100 Dicas e Ferramentas de Força Industrial", de Rob Flickenger (O'Reilly, 2003).

No Hack # 15 (Jogando Hunt the Disk Hog), o autor recomenda adicionar este one-liner ao seu .profile :

alias ducks='du -cks |sort -rn |head -11'

Na prática, no entanto, eu geralmente não me identifico com o comando porque o usei tantas vezes que o memorizei.

    
por 06.10.2016 / 01:06
-3

Acho que o comando abaixo mostrará o movimento detalhado da informação

cd /

du -hs * | sort -n
    
por 05.10.2016 / 15:56