ncdu: Analisador Interativo de Uso de Disco
O que você vai conseguir fazer
- Abrir o `ncdu` e chegar aos maiores diretórios usando só as setas
- Explicar as ordenações `s`, `n` e `C` e o fluxo de deleção com `d`
- Escolher entre `-r` (somente leitura) e `-x` (apenas o mesmo sistema de arquivos)
Pré-requisitos (leia estes primeiro)
O Que Você Vai Aprender
- Como usar
ncdupara navegar grandes diretórios interativamente - Como encontrar arquivos grandes e deletá-los com segurança no local
- Como trocar a repetição de
dupor uma investigação somente por teclas - Como escanear o disco de um servidor remoto via
ssh
Público-alvo: Iniciantes em Linux. Quem está cansada de caçar espaço com du.
As palavras deste artigo
- Interativo: é o estilo em que você segue por uma tela só, apertando teclas, em vez de redigitar comandos.
- DiretórioUm local que organiza arquivos. É a mesma ideia da "pasta" do Windows ou macOS.: é a mesma coisa que o Windows e o macOS chamam de pasta.
- Escanear: é visitar os arquivos alvo um a um para medi-los. Também se diz "percorrer".
- Sistema de arquivos: é a estrutura que divide o disco para uso. Leia como "uma unidade como
/ou/home, cujo espaço é contado separadamente". - Montagem: é ligar um disco a um diretório para poder usá-lo.
- Saída padrão / entrada padrão: é onde um comando escreve o resultado e a abertura pela qual um comando recebe dados. A Seção 7 usa as duas.
O ncdu também serve só para inspecionar. Abra com -r e a função de deleção fica desativada por completo. Comece sempre a praticar com -r.
Note que o ncdu não faz parte do terminalUm programa interativo que interpreta os comandos digitados e os executa. virtual deste site. Teste em uma máquina Linux real ou no WSL. É justamente por isso que você deve começar com -r.
Introdução: O Incidente do "du Spam" da Lina
du.du, fazer cd numa pasta mais funda, executar du de novo, cd de novo. Está demorando uma eternidade.ncdu que faz tudo isso com apenas as setas do teclado.cd, sem du?ncdu deixa você navegar pela tela como um gerenciador de arquivos. Você entra nos maiores diretórios e pode até deletá-los ali mesmo.A Resposta Curta
ncdu= NCurses Disk Usage. Uma ferramenta que mostra resultados doduem uma tela interativa- Mova com setas, delete no local com
d, ordene por tamanho coms - Basta instalar com
sudo apt install ncdue executarncdu /
1. O Que É o ncdu?
Conclusão:
ncdumostra resultados doduem uma visualização interativa em tela cheia, para que você possa entrar nos maiores caminhos com as setas.
ncdu significa?ncdu usa essa biblioteca para exibir resultados no estilo du na tela.du turbinado?du apenas despeja números.ncdu ordena do maior primeiro. Você aperta Enter para entrar e a seta esquerda para voltar. Assim você chega ao vilão do espaço sem se perder.ncdu vs du (em resumo)
du-> executar o comando uma vez e obter uma lista de números. Depois você mesma fazcde executa de novoncdu-> escanear uma vez, depois apenas navegar pela tela para investigar
2. Instalar e Executar
Conclusão:
ncdufrequentemente não vem instalado por padrão. Instale viaapt/dnf, depois execute comncdu CAMINHO.
ncdu em todas as distribuições. Vamos começar pela instalação.Instalar
# Ubuntu / familia Debian $ sudo apt install ncdu # RHEL / familia Fedora $ sudo dnf install ncdu # CentOS mais antigo, etc. $ sudo yum install ncdu
Executar
# Escanear o diretorio atual $ ncdu # Escanear um caminho especifico $ ncdu /var # Escanear toda a raiz (sudo recomendado) $ sudo ncdu /
ncdu / e apareceu "Scanning...". Fiquei esperando.ncdu escaneia uma vez tudo o que está sob o caminhoUma sequência de texto que descreve a localização de um arquivo ou diretório. informado.du, um alvo grande demora um pouco. Quando o escaneamento termina, ele muda para a lista.Use sudo para Escaneamentos em Todo o Sistema
Em / existem diretórios que um usuário comum não pode ler. Sem sudo, essas partes falham com "Permission denied" e ficam de fora da conta. Os totais então saem menores que a realidade.
Para investigar o sistema, sudo ncdu / é o ponto de partida.
3. Lendo a Tela e Navegando
Conclusão: Setas cima/baixo selecionam um item, Enter (ou seta direita) entra em um diretório, seta esquerda volta, e
qsai.
--- /var ------------------------------------------------------
1.2 GiB [##########] /log
512.0 MiB [#### ] /cache
24.0 MiB [ ] /lib
4.0 KiB [ ] /games
Como Ler
- O número à esquerda: o uso daquele diretório ou arquivo
[#### ]: uma barra que mostra a proporção dentro do diretório pai- A
/antes de um nome: a marca de um diretório - O
--- /var ---no topo: onde você está agora
Teclas Principais
Teclas de Movimentação (aprenda apenas estas primeiro)
| Tecla | Ação |
|---|---|
cima / baixo |
Selecionar um item (mover cima/baixo) |
Enter ou -> |
Entrar no diretório selecionado |
<- |
Voltar para cima ao diretório pai |
r |
Reescanear o local atual |
q |
Sair do ncdu |
? |
Mostrar ajuda (lista de teclas) |
A tecla r dentro da tela e a opção -r de execução são coisas diferentes. A tecla r reescaneia. A opção -r desativa a deleção.
cd e sem du, apenas setas para mergulhar no maior diretório. É isso que torna o ncdu agradável.4. Ordenação e Alternância de Exibição
Conclusão:
sordena por tamanho,npor nome,Cpor contagem de itens, egalterna a exibição de porcentagem/gráfico.
Teclas de Ordenação e Exibição
| Tecla | Ação |
|---|---|
s |
Ordenar por tamanho (padrão) |
n |
Ordenar por nome |
C |
Ordenar por contagem de itens (C maiúsculo) |
g |
Alternar exibição de porcentagem / barra gráfica |
a |
Alternar tamanho aparente vs. uso real no disco |
Quando Usar a (tamanho aparente)
Por padrão o ncdu mostra o tamanho realmente ocupado no disco. Aperte a para mudar para o tamanho aparente do arquivo.
Os dois divergem em arquivos esparsos e quando há muitos arquivos pequenos. Conhecer a diferença evita confusão.
5. Deletando no Local
Conclusão: Selecione um item e pressione
d. Um promptUm símbolo (como $ ou #) exibido quando o shell está esperando sua entrada. de confirmação aparece, eliminando o ida e volta de encontrar comdue remover comrm.
ncdu e executar rm para deletar?ncdu, selecione o item que quer remover e aperte d.du, remover com rm" desaparece.Passos para Deletar
- Selecione o arquivo ou diretório com
cima/baixo - Pressione
d - Aparece uma tela de confirmação. As opções são
yes,noedon't ask me again - Mova entre elas com
esquerda/direitae confirme comEnter. Aperteqpara abortar
Não escolha a terceira opção, don't ask me again
Escolher don't ask me again faz a tela de confirmação deixar de aparecer nas próximas deleções. A partir daí, apertar d apaga na hora.
Enquanto estiver aprendendo, use apenas yes e no.
d É Uma Deleção Real. Não Há Desfazer
O d do ncdu remove os dados assim como o rm. Diferente do modo gráfico, nada vai para a lixeira. Não dá para trazer de volta com facilidade.
Tenha ainda mais cuidado com sudo ncdu /. Remover um arquivo do sistema por engano pode deixar a máquina incapaz de inicializar.
Guarde três hábitos que deixam a prática segura.
- Abra primeiro com
-r(ncdu -r ~). Isso desativa a função de deleção por completo - Crie um diretório de prática e trabalhe só dentro dele (por exemplo,
mkdir -p ~/ncdu-practice && cd ~/ncdu-practice) - Confirme o nome, o tamanho e a data antes de deletar qualquer coisa
Se tiver dúvida sobre um diretório, não delete.
Checklist Pré-Deleção
- O arquivo é mesmo desnecessário (um log, um cache ou um temporário)?
- Algum serviço em execução está usando ele?
- Para logs grandes, esvaziar o arquivo no local às vezes é mais seguro do que deletar (
truncate -s 0 arquivo)
Uma observação sobre o segundo item. Deletar um arquivo que um serviço mantém aberto não devolve o espaço. Sobre esse problema de arquivo aberto, veja Entendendo du vs df.
6. Opções que Importam na Prática
Conclusão:
-xpermanece no mesmo sistema de arquivos,-re somente leitura, e-o/-fexportam e reutilizam um escaneamento.
Opções Comuns de Execução
| Opção | Significado |
|---|---|
-x |
Contar somente no mesmo sistema de arquivos (não cruzar montagens) |
-r |
Executar em modo somente leitura (desabilita deleção d) |
-o FILE |
Exportar o resultado do escaneamento para um arquivo |
-f FILE |
Importar um resultado exportado e exibi-lo |
--exclude PATTERN |
Excluir caminhos correspondentes da contagem |
-x não é a mesma opção que apareceu com o du?du -x./home é uma partição separada, ele impede a dupla contagem cruzando a fronteira. Isso ajuda quando você quer comparar com o df.6-1. Lina se enrola: o d quase removeu a linha errada
/var e queria limpar um cache grande. Apertei d e o nome no pedido de confirmação não era o que eu esperava. Levei um susto.--- /var ------------------------------------------------------
1.2 GiB [##########] /log
512.0 MiB [#### ] /cache
24.0 MiB [ ] /lib
/cache. O aviso dizia /log. Meu cursor estava uma linha acima.ncdu, o d age sobre a linha que está selecionada. Onde o cursor está decide tudo.-r. A tecla d não faz nada, o que é ideal para praticar.Enter.# Praticar em um estado onde a delecao nao pode acontecer $ ncdu -r ~
Use -r Quando a Segurança Vem Primeiro
Para evitar um d acidental, execute com sudo ncdu -r /. Com -r a função de deleção fica desabilitada.
Isso deixa a ferramenta somente para investigação, que é o que você quer ao apenas olhar um servidor de produção.
7. Escaneando o Disco de um Servidor Remoto
Conclusão: Abra o resultado de um escaneamento remoto no seu
ncdulocal para investigar sem operar de forma interativa no servidor (o lado remoto ainda precisa doncdu).
ncdu pode exportar e importar resultados de escaneamento.ssh, isso deixa você investigar pela sua própria tela.Padrão A: Escanear Remotamente, Visualizar Localmente
# Executar apenas o escaneamento estilo du remotamente e canalizar o resultado para seu ncdu local $ ssh user@server ncdu -o- / | ncdu -f-
Como Ler
ncdu -o-: escreve o resultado do escaneamento na saída padrão (-significa stdout)ncdu -f-: lê o resultado da entrada padrão e exibe- O
|entre eles: canaliza a saída remota para o seuncdulocal
Há uma ressalva. Executar -o ainda exige o ncdu no lado remoto. Se ele não estiver instalado lá, instale primeiro na máquina remota.
Padrão B: Salvar o Resultado e Levar para Casa
Em vez de transmitir direto, você salva o resultado em um arquivo. Um resultado salvo pode ser revisto depois.
# No servidor, salvar o resultado (gzip mantem pequeno) $ ncdu -o- / | gzip > scan.gz # Transferir e carregar localmente $ scp user@server:scan.gz . $ zcat scan.gz | ncdu -f-
8. Mini Exercícios: Experimente na Sua Máquina
Conclusão: Três exercícios -- encontre seu maior diretório home, alterne modos de ordenação e execute em somente leitura -- para fixar os controles.
-r ligado, nenhuma deleção acontece.Desafio 1: Encontre o maior diretório logo abaixo do seu home.
Ver Dica 1 (Direcionamento)
Abra a ferramenta informando o local que você quer inspecionar. A lista já vem do maior primeiro por padrão.
Então a linha do topo já responde à pergunta.
Ver Dica 2 (Nome do comando)
Use ncdu. O seu home pode ser escrito como ~. Acrescente -r por segurança.
Enter entra, a seta esquerda volta e q sai.
Ver Resposta
$ ncdu -r ~
--- /home/user -------------------------------------------------
2.5 GiB [##########] /Videos
512.0 MiB [## ] /Downloads
64.0 MiB [ ] /Documents
A linha do topo é o maior diretório. Neste exemplo é /Videos.
Aperte Enter para entrar e continuar seguindo os maiores conteúdos. A seta esquerda volta um nível.
Desafio 2: Alterne a lista entre ordem por tamanho e ordem por nome.
Ver Dica 1 (Direcionamento)
Uma tecla só já troca a ordem. Você não precisa redigitar o comando.
Cada tecla é a primeira letra de uma palavra em inglês.
Ver Dica 2 (Nome do comando)
A ordem por tamanho é s (size). A ordem por nome é n (name). Alterne entre elas na lista.
Ver Resposta
Na lista, alterne entre s e n. A ordem muda na hora.
Aperte a mesma tecla de novo para inverter entre crescente e decrescente.
Desafio 3: Abra a ferramenta em um estado onde a tecla de deleção não funciona e comprove isso.
Ver Dica 1 (Direcionamento)
Uma opção de execução desativa a função de deleção por completo. A ideia e abrir em modo somente leitura.
A primeira letra de "read-only" é a pista.
Ver Dica 2 (Nome do comando)
Use ncdu -r. Aponte para /tmp. Depois de abrir, aperte d e veja o que acontece.
Ver Resposta
$ ncdu -r /tmp
Abrir com -r desativa a tecla d. Nenhum pedido de confirmação aparece.
No lugar dele, o rodapé da tela mostra File deletion disabled in read-only mode. Essa mensagem é a prova de que o -r está em vigor.
Pratique assim até se sentir à vontade.
9. Armadilhas Comuns
Conclusão: Cuidado com sudo ausente diminuindo os números, um
dacidental deletando a coisa errada, e apontar para/em vez do seu home.
Três Erros Comuns
- Escanear
/semsudo-> diretórios ilegíveis ficam de fora e os totais saem menores que a realidade - Ver algo grande e apertar
dna hora -> não adianta quando um serviço está usando o arquivo. Confirme o que é primeiro - Operar em produção sem
-r-> umdacidental deleta algo. Se está apenas olhando, sempre use-r
Hábitos Seguros
- Para escanear o sistema, use
sudo ncdu -x /(conta somente o mesmo sistema de arquivos) - Em servidores de produção, abra com
-r(somente leitura) por padrão - Confirme nome, tamanho e data antes de deletar. Na dúvida, não delete
10. Revisão
ncdu escaneia uma vez e, depois disso, as setas fazem toda a navegação.Enter entra e a seta esquerda volta. Essas duas bastam.d age sobre a linha selecionada. Quase removi /log sem querer.-r até se sentir à vontade. Só isso já evita quase todos os acidentes.Resumo em 3 Linhas
- O
ncdumostra o resultado doduem uma tela interativa, e as setas fazem toda a navegação sordena por tamanho enordena por nome. Oddeleta a linha que está selecionada- Use
-r(somente leitura) para praticar e inspecionar. Usesudoe-xpara escanear o sistema