ncdu - Cheatsheet analizzatore di utilizzo disco NCurses
ncdu (NCurses Disk Usage) è un analizzatore interattivo di utilizzo disco che viene eseguito interamente nel terminale. Scansiona un albero di directory una volta, quindi ti lascia navigare ordinato per dimensione, approfondire le sottodirectory, ed eliminare file o cartelle al volo. Poiché necessita solo di un terminale, è lo strumento da usare per scoprire cosa sta mangiando lo spazio su un server headless o remoto tramite SSH.
Installation
| Piattaforma | Comando |
|---|
| Ubuntu/Debian | sudo apt install ncdu |
| Fedora/RHEL | sudo dnf install ncdu |
| Arch Linux | sudo pacman -S ncdu |
| openSUSE | sudo zypper install ncdu |
| Alpine | sudo apk add ncdu |
| macOS (Homebrew) | brew install ncdu |
| FreeBSD | sudo pkg install ncdu |
Utilizzo di base
| Comando | Descrizione |
|---|
ncdu | Scansiona la directory attuale |
ncdu / | Scansiona l’intero filesystem |
ncdu /var/log | Scansiona un percorso specifico |
ncdu -x / | Rimani su un filesystem (non attraversare i punti di mount) |
sudo ncdu / | Scansiona con accesso root per includere file protetti |
ncdu --help | Mostra tutte le opzioni |
Tasti di navigazione
| Tasto | Azione |
|---|
↑ / ↓ o j / k | Muovi la selezione |
→ / Enter o l | Accedi alla directory selezionata |
← o h | Vai alla directory genitore |
n | Ordina per nome |
s | Ordina per dimensione (predefinito) |
C | Ordina per numero di elementi |
a | Attiva/disattiva dimensione apparente rispetto all’utilizzo del disco |
g | Attiva/disattiva visualizzazione percentuale / grafica |
? | Schermata della guida |
q | Esci |
Gestione dei file
| Tasto | Azione |
|---|
d | Elimina il file o la directory selezionato |
i | Mostra informazioni sull’elemento selezionato |
t | Attiva/disattiva directory-before-files nell’ordinamento |
e | Mostra/nascondi file nascosti |
r | Ricalcola (ripeti scansione) la directory attuale |
Esportazione e importazione (Workflow remoti)
ncdu può salvare una scansione in un file e visualizzarla in seguito o altrove — ottimo per l’auditing di un server senza mantenere una sessione SSH aperta.
| Comando | Descrizione |
|---|
ncdu -o scan.json / | Scansiona ed esporta i risultati in un file |
ncdu -o- / > scan.json | Esporta a stdout (reindirizza a un file) |
ncdu -f scan.json | Apri una scansione salvata in precedenza (offline) |
ssh host 'ncdu -o- /' > scan.json | Scansiona una macchina remota, visualizzala localmente |
Opzioni che vale la pena conoscere
| Opzione | Descrizione |
|---|
-x | Non attraversare i confini del filesystem |
--exclude PATTERN | Salta i percorsi che corrispondono a un glob |
--exclude-kernfs | Salta i pseudo-filesystem (/proc, /sys) |
-r | Modalità di sola lettura (disabilita la cancellazione) |
-q | Refresh lento/più silenzioso su link lenti |
--color dark | Abilita uno schema di colori |
Workflow comuni
# Trova i più grandi space hog su un server, in modo sicuro (sola lettura)
sudo ncdu -x -r /
# Auditing di un host remoto senza una sessione interattiva
ssh prod-box 'ncdu -o- -x /' > prod-scan.json
ncdu -f prod-scan.json
# Pulisci una directory della cache di build in modo interattivo
ncdu ~/.cache # naviga, premi d per eliminare
ncdu vs altri strumenti di utilizzo disco
| Strumento | Stile | Migliore per |
|---|
| ncdu | TUI interattivo | Naviga + elimina, server remoti |
| dust | Albero one-shot+barre | Panoramica visiva rapida (Rust) |
| duf | Tabelle mount/utilizzo | ”Quanto sono pieni i miei dischi?“ |
| du | Testo semplice | Script e pipeline |
Risorse