Skip to main content

Ncdu: o "raio-X" do seu HD no terminal

04 Dezembro 2025

Title

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
Ncdu: o "raio-X" do seu HD no terminal

Em algum momento todo usuário de Linux passa pelo mesmo drama existencial:

"Para onde foi todo o espaço do meu disco? Eu só tenho uns PDFs e meia dúzia de fotos…"

Você Mesmo

Nessas horas, olhar para a saída infinita do du não ajuda muito. É aí que entra o ncduNCurses Disk Usage –, um analisador de uso de disco com interface em modo texto, rápido, interativo e feito sob medida para terminais e servidores acessados por SSH.


A ideia deste artigo é mostrar, em linguagem de gente, como instalar e usar o ncdu para:

  • descobrir quem está devorando o seu disco;
  • navegar graficamente (no terminal!) entre diretórios;
  • excluir arquivos direto da interface;
  • fazer export/import de relatórios e até escanear servidores remotos.

1. O que é o ncdu, afinal?

O ncdu é um "du turbinado" com interface baseada em ncurses – aquela biblioteca que permite interfaces de tela cheia no terminal. Em vez de despejar números linha a linha, ele abre uma tela interativa, ordena os diretórios por tamanho, mostra barras visuais de uso e deixa você entrar em cada pasta com as setas do teclado.

Alguns pontos importantes:

  • Funciona em praticamente qualquer sistema tipo POSIX (Linux, *BSD, etc.) com ncurses instalado.
  • Foi pensado para rodar bem em servidores remotos, via SSH, onde você não tem ferramenta gráfica.
  • As versões 2.x foram reescritas em Zig, mas mantendo a mesma UI e atalhos das versões 1.x – ou seja, você atualiza sem reaprender tudo.

Resumindo: o ncdu é aquele amigo sincero que te mostra, em ordem decrescente, quais diretórios estão detonando o storage.


2. Instalando o ncdu nas principais distros

A boa notícia: o ncdu está nos repositórios padrão da maioria das distribuições. A má notícia: você não vai mais ter desculpa para não saber o que está ocupando espaço.

2.1. Debian, Ubuntu, Mint e derivados (apt)

Debian/Ubuntu
Debian/Ubuntu
sudo apt update
sudo apt install ncdu

Simples assim.

2.2. Fedora, RHEL, CentOS, AlmaLinux, Rocky (dnf / yum)

RedHat/Fedora
RedHat/Fedora
# Sistemas mais novos (Fedora, RHEL 8+, CentOS Stream, Alma, Rocky)
sudo dnf install ncdu

# Sistemas mais antigos, ainda com yum
sudo yum install ncdu

2.3. Arch, Manjaro, EndeavourOS (pacman)

Arch/Manjaro
Arch/Manjaro
sudo pacman -S ncdu

2.4. Outras distros

Muitas outras distribuições trazem pacotes oficiais (Alpine via apk, openSUSE via zypper, etc.).

Em ambientes de cluster/HPC (como o Oscar, da Brown University), é comum o ncdu vir como módulo:

module load ncdu/1.14
ncdu my_directory

3. Uso básico: o primeiro contato com o ncdu

Depois de instalado, o uso mínimo é quase poético:

3.1. Escanear o diretório atual

ncdu
  • Se você estiver em /home/usuario, ele vai escanear essa pasta.
  • Mostra um ranking de diretórios e arquivos, do maior para o menor.

3.2. Escanear um diretório específico

ncdu /var
ncdu /home
ncdu /srv/meu-servico

Isso é ótimo para investigar, por exemplo, por que /var está sempre lotado de logs.(

3.3. Escanear o sistema inteiro (com cuidado!)

sudo ncdu -x /
  • -x limita a análise ao mesmo sistema de arquivos, evitando incluir outros discos montados (NFS, USB, etc.).
  • Use sudo para que o ncdu consiga ler diretórios do sistema.

4. Navegação na interface: ncdu para seres humanos

Quando o scan termina, você cai numa tela de lista com colunas do tipo:

  • Tamanho
  • Percentual / barra
  • Nome do arquivo/pasta

Em ordem decrescente de espaço usado. A partir daí:

Tecla Ação
↑ / ↓ (ou k / j) Sobe/desce na lista
→ ou Enter Entra na pasta selecionada
Volta para o diretório pai
g / G Ir para o topo / para o final da lista
n Ordenar por nome
s Ordenar por tamanho (padrão)
a Alternar entre tamanho aparente e uso em disco
i Mostrar detalhes (permissões, dono, datas) do item selecionado
d Deletar arquivo/pasta selecionada (pede confirmação!)
? Mostrar ajuda completa de teclas
q Sair do ncdu

Duas observações cruciais:

  • O comando d realmente apaga arquivos. Use com o mesmo cuidado com que você usaria rm -rf.
  • O i é ótimo para investigar detalhes de um diretório suspeito, como dono e data de modificação.

5. Opções de linha de comando úteis

O ncdu tem uma penca de opções, mas algumas são especialmente práticas no dia a dia.

5.1. Limitar ao mesmo filesystem: -x

Já vimos:

sudo ncdu -x /
  • Evita que a análise "invada" outros discos ou montagens de rede.
  • Perfeito para responder perguntas do tipo "por que só o root está cheio?".

5.2. Modo quiet: -q

Reduz a frequência de atualização de tela durante o scan:

ncdu -q /home
  • Útil em conexões remotas lentas (menos redesenho de tela = menos dados trafegados).

5.3. Excluir diretórios/arquivos: --exclude e -X

Quer ignorar caches e lixeiras?

ncdu --exclude '**/cache/*' --exclude '**/.trash/*' /home

Ou manter um arquivo de exclusões:

# arquivo exclude.txt
**/.cache/*
**/node_modules/*
**/.git/*

ncdu -X exclude.txt /home

5.4. Somente leitura: -r

Se você não quer correr risco de apagar nada por engano:

ncdu -r /
  • -r habilita o modo read-only: a opção de deletar é desabilitada. Ideal para usuários curiosos (ou administradores desconfiados).

5.5. Exportar resultados para analisar depois: -o, -O e -f

Você pode escanear agora e visualizar depois, ou gerar um relatório para script:

# Exportar em JSON para um arquivo
ncdu -o export.json /

# Mais tarde, abrir esse relatório:
ncdu -f export.json
  • -o arquivo → exporta em JSON.
  • -f arquivo → abre um relatório previamente exportado.

Para árvores enormes, a versão 2.x tem um formato binário mais eficiente:

ncdu -O export.ncdu /
ncdu -f export.ncdu
  • Arquivo menor e leitura mais rápida.
  • Bom para milhões de arquivos (servidores com anos de acúmulo).

5.6. Agendar scans via cron

Você pode rodar o scan de madrugada e só visualizar depois:

# no cron
ncdu -0xo- / | gzip > /var/reports/ncdu-root-$(date +\%F).json.gz

Depois:

zcat ncdu-root-2025-11-24.json.gz | ncdu -f-

6. Truques avançados: ncdu em servidores remotos

Um superpoder do ncdu é escanear um servidor remoto, mas visualizar tudo localmente, economizando CPU e RAM do servidor e evitando lag de interface.

6.1. Scan remoto via SSH com visualização local

ssh -C user@servidor ncdu -o- / | ncdu -f-
  • ssh -C → ativa compressão, ótimo para links lentos.
  • No servidor: ncdu -o- / exporta os dados em JSON para stdout.
  • Na sua máquina: ncdu -f- lê esse JSON e abre a interface como se o scan fosse local.

Vantagens:

  • O terminal interativo roda localmente (sem lag).
  • O servidor remoto só faz o trabalho de scan + export, consumindo pouca memória.

7. Casos de uso reais (onde o ncdu brilha)

Alguns cenários clássicos em que o ncdu vira herói:

  1. Servidor de produção com /var lotado
    • sudo ncdu -x /var → normalmente você descobre um log gigante ou um diretório de cache esquecido.
  2. Home de usuário com quota estourando (ambiente acadêmico/HPC)
    • ncdu ~/ ou ncdu data/ para mostrar, em segundos, quais projetos estão ocupando o grosso do espaço.
  3. Máquina pessoal ficando cheia "do nada"
    • ncdu / (e ir descendo) revela pastas como Downloads, Videos, node_modules de projetos antigos, etc.
  4. Análises recorrentes de uso de disco
    • Usar export (-o, -O) em cron e comparar relatórios ao longo do tempo, alimentando dashboards ou simples diffs de JSON.
  5. Limpeza guiada (com muito cuidado!)

    • Navegar até diretórios desnecessários e usar d para exclusão direta, em vez de adivinhar caminhos com rm.

8. Conclusão: por que o ncdu merece um lugar fixo no seu toolkit

Em resumo:

  • O ncdu pega o que o du faz e embrulha em uma interface ncurses interativa, navegável com setas, com ordenação por tamanho, nome, tipo de uso e muito mais.
  • Está disponível facilmente via apt, dnf, yum, pacman e afins, além de módulos em ambientes de HPC.
  • Permite:
    • análises rápidas no diretório atual ou em qualquer caminho;
    • limitar por filesystem (-x);
    • modo somente leitura (-r);
    • exclusão interativa com confirmação (d);
    • export/import de relatórios (-o, -O, -f);
    • scans remotos via SSH com visualização local.

No fim das contas, o ncdu responde de forma visual e objetiva à pergunta que todo administrador e usuário de Linux se faz de tempos em tempos:

"Quem está comendo o meu HD?"

E responde direto do terminal, com elegância, rapidez e um toque de minimalismo nerd. Se você ainda não colocou o ncdu no seu fluxo de trabalho, vale muito a pena reservar alguns minutos para instalá-lo… antes que o / encha de novo.


Outros Artigos

Gerenciamento de pacotes em Linux - como instalar coisas sem se perder no terminal

Gerenciamento de pacotes em Linux - como instalar coisas sem se perder no terminal

Como criar uma unidade USB inicializável de uma Distro de Linux

Como criar uma unidade USB inicializável de uma Distro de Linux

Como testar a velocidade da sua internet no Linux pelo terminal

Como testar a velocidade da sua internet no Linux pelo terminal