Terminale su Ubuntu: quando conta davvero
Su Ubuntu Linux il terminale non è un feticcio da puristi: è il modo più rapido per leggere lo stato reale del sistema, intervenire senza aprire mille finestre e automatizzare attività ripetitive. Se lavori su server, VM, workstation o ambienti misti, avere un set di app da terminale ben scelto fa la differenza tra “sto tentando” e “sto diagnosticando”.
Qui sotto trovi 12 applicazioni che hanno senso su Ubuntu perché coprono bisogni concreti: uso CPU e memoria, rete, dischi, processi, trasferimenti, editing, ricerca e accesso remoto. Non sono “le più famose” in astratto: sono quelle che, in pratica, ti fanno risparmiare tempo quando devi capire cosa sta succedendo e agire con pochi comandi.
Per installarle, nella maggior parte dei casi basta questo:
sudo apt update
sudo apt install htop btop ncdu tmux mc ripgrep fzf jq bat lsof nmap iftop glances
Se una versione non è nei repository standard, non forzare pacchetti terzi senza motivo: prima verifica il nome esatto del pacchetto con apt-cache search o, se serve, con il repository ufficiale del progetto.
1. htop: il sostituto pratico di top
htop resta una delle prime installazioni sensate su Ubuntu. Mostra processi, CPU, memoria e carico in modo leggibile, con navigazione interattiva e ordinamento immediato. È utile quando devi capire chi sta saturando una macchina senza perdere tempo a interpretare colonne poco amichevoli.
Usalo per verificare rapidamente se il problema è CPU bound, memory bound o legato a un singolo processo fuori controllo:
htop
Se vedi load average alto ma CPU non piena, il collo di bottiglia può essere I/O o processi in stato di attesa. In quel caso htop va letto insieme a strumenti come iostat o iotop, non da solo.
2. btop: dashboard più ricca, senza perdere il colpo d’occhio
btop è più moderno e visivo di htop. Mostra grafici per CPU, memoria, disco e rete, con una lettura molto immediata dello stato della macchina. Su workstation e server con carichi variabili è comodo per capire se un picco è reale o solo transitorio.
È particolarmente utile quando vuoi correlare un rallentamento percepito con un aumento di traffico, swap o I/O disco. Se stai cercando una vista unica e più “dashboard-like”, btop è una scelta solida.
btop
3. ncdu: capire subito dove finisce lo spazio
ncdu è uno strumento essenziale quando il filesystem si riempie e devi trovare il colpevole senza fare scansioni manuali infinite. Analizza l’uso disco per directory e consente di esplorare la gerarchia in modo interattivo.
Su Ubuntu è spesso la via più rapida per capire se il problema è in /var/log, in una cache applicativa, in upload utente o in un archivio dimenticato.
sudo ncdu /
Se la macchina è quasi piena, l’ordine corretto è: identificare il path che cresce, verificare se puoi pulire in sicurezza, poi agire. Non cancellare a occhio: prima controlla file aperti, log attivi e servizi che potrebbero riscrivere subito lo spazio liberato.
4. tmux: sessioni persistenti, lavoro serio da remoto
tmux è la risposta pratica a chi lavora via SSH e non vuole perdere sessioni, output o contesto se cade la connessione. Ti permette di avere pannelli, finestre multiple e sessioni riattaccabili, che su server e ambienti di troubleshooting è oro puro.
Uso tipico: apri una sessione, lanci log, monitori un servizio, tieni un pannello per comandi di verifica e uno per l’editing. Se la rete salta, rientri e riprendi esattamente da dove eri rimasto.
tmux new -s lavoro
# detach: Ctrl-b d
# rientro:
tmux attach -t lavoro
È una delle poche app che cambia davvero il modo di operare su Linux, soprattutto quando fai troubleshooting in produzione o gestisci più host contemporaneamente.
5. mc: file manager da terminale ancora molto utile
midnight commander, cioè mc, sembra vecchio solo a chi non lo usa. È un file manager a due pannelli estremamente efficiente per spostare, confrontare, rinominare e ispezionare file senza perdere tempo con comandi lunghi o path sbagliati.
È molto comodo per amministrare configurazioni, confrontare directory di deploy, ispezionare permessi e intervenire su sistemi dove la GUI non c’è o non serve. Se devi fare operazioni ripetitive su file, mc spesso è più veloce di qualunque alternativa grafica remota.
mc
6. ripgrep: cercare testo nel filesystem senza aspettare
ripgrep (rg) è il comando che sostituisce grep in molti casi reali, perché è veloce, intelligente e rispetta bene i file ignorati. Quando devi trovare una direttiva in migliaia di file di configurazione o localizzare una stringa in un tree di progetto, fa risparmiare minuti preziosi.
Un esempio tipico su Ubuntu server:
rg -n "listen 443|server_name|proxy_pass" /etc/nginx
Il vantaggio rispetto a strumenti più generici è che puoi usare pattern leggibili, output con numeri di riga e ricerche molto rapide anche su alberi grandi. Per chi fa LAMP/LEMP o gestisce repository di configurazione, è uno standard di fatto.
7. fzf: ricerca interattiva che taglia i tempi morti
fzf è un fuzzy finder terminale. In pratica ti permette di cercare in modo incrementale tra file, history, processi o output di comandi. Non sostituisce tutto, ma accelera parecchio le operazioni ripetitive.
Per esempio, puoi usarlo per scegliere al volo una voce dalla history o un file da aprire con un editor. L’effetto pratico è semplice: meno digitazione, meno errori, meno ritorni indietro.
fzf
Se lo integri in shell, diventa molto più potente. Ma anche da solo è già utile per sessioni operative dove devi saltare tra molti elementi simili.
8. jq: leggere e filtrare JSON senza soffrire
jq è fondamentale se lavori con API, log strutturati, output di strumenti moderni o configurazioni esportate in JSON. Invece di leggere blob illeggibili, estrai solo i campi che ti servono.
Esempio pratico:
curl -s https://api.example.test/status | jq '.service, .uptime, .errors'
Su Ubuntu è una delle app più sottovalutate per troubleshooting e automazione. Quando un servizio espone stato, metriche o eventi in JSON, jq ti evita parsing fragile con strumenti improvvisati.
9. bat: leggere file come con cat, ma con contesto
bat è un lettore di file testuali con evidenziazione della sintassi, numeri di riga e comportamento più gradevole rispetto a cat. Non è indispensabile, ma quando apri log, config o snippet di codice spesso migliora la velocità di lettura.
È utile soprattutto per verificare piccoli file di configurazione o confrontare sezioni di log senza perdere orientamento. Se il tuo flusso è molto CLI, bat diventa presto un’abitudine.
bat /etc/ssh/sshd_config
10. lsof: capire chi tiene aperto cosa
lsof è uno strumento da tenere sempre installato. Ti dice quali processi stanno usando file, socket, porte e directory. Quando un file non si libera, una porta non ascolta come dovrebbe o un disco non si svuota, lsof spesso fornisce la risposta più rapida.
Esempi utili:
sudo lsof -i :80
sudo lsof /var/log/syslog
Nel primo caso capisci chi ascolta su una porta; nel secondo verifichi quale processo tiene aperto un file di log. È uno degli strumenti più concreti quando il problema è di locking, socket o risorse non rilasciate.
11. nmap: vedere la rete come la vede davvero una macchina
nmap serve per la ricognizione di rete legittima su sistemi che amministri. Ti aiuta a verificare porte aperte, servizi esposti e reachability, evitando supposizioni. Su Ubuntu è molto utile per controlli rapidi dopo un cambio firewall, un deploy o una variazione di routing.
Un controllo base può essere questo:
nmap -Pn -p 22,80,443 server.example.test
Se una porta prevista non risponde, il problema può stare nel servizio, nel firewall locale, nella security group del cloud o in un filtro a monte. nmap non risolve da solo, ma delimita il campo in modo molto efficiente.
12. iftop e glances: rete e sistema in vista unica
iftop mostra traffico di rete in tempo reale per host e connessioni, mentre glances offre una vista sintetica più ampia su CPU, RAM, disco, rete e processi. Li metto insieme perché coprono due esigenze complementari: vedere dove passa il traffico e capire se il sistema sta saturando.
Con iftop capisci subito se una macchina parla troppo con un IP preciso o se c’è una connessione anomala che consuma banda. Con glances hai una fotografia più generale dello stato della host, utile per un check veloce prima di toccare qualcosa.
sudo iftop
# oppure
glances
Se stai analizzando un rallentamento, la combinazione giusta è spesso: glances per la vista globale, iftop per la rete, htop per i processi, ncdu per il disco. Con questi quattro strumenti copri buona parte delle diagnosi iniziali senza uscire dal terminale.
Come scegliere davvero le app giuste
Non ha senso installare tutto e usare nulla. Una selezione ragionevole su Ubuntu può essere questa: htop o btop per il monitoraggio interattivo, ncdu per il disco, tmux per le sessioni, rg e jq per la ricerca, lsof per le risorse aperte, nmap per la rete e iftop per il traffico.
Se vuoi un setup minimo ma efficace, parti da questo ordine operativo:
- Installa gli strumenti che coprono il tuo collo di bottiglia più frequente: disco, processi o rete.
- Verifica che siano disponibili nei repository Ubuntu e non richiedano workaround inutili.
- Impara tre comandi reali per ogni tool, non cinquanta opzioni mai usate.
- Integra gli strumenti in sessioni tmux o in alias di shell solo dopo aver capito il flusso base.
Un errore comune è confondere “strumento potente” con “strumento giusto per il momento”. Se devi solo capire chi sta saturando la CPU, htop basta. Se devi scoprire quale processo tiene occupata una socket, serve lsof. Se devi trovare un file enorme, ncdu batte qualsiasi navigazione manuale.
Un profilo operativo sensato per Ubuntu
Su una macchina Ubuntu usata davvero, il terminale dovrebbe coprire tre livelli: osservazione, verifica e intervento. Le app qui sopra si incastrano bene in questo schema. Osservazione con htop, btop, glances e iftop. Verifica con lsof, nmap, rg e jq. Intervento con tmux, mc, ncdu e bat per leggere rapidamente ciò che devi cambiare.
Se lavori spesso in remoto, tmux è quasi obbligatorio. Se lavori su hosting o server applicativi, lsof, rg e ncdu ti fanno risparmiare più tempo di quanto immagini. Se fai analisi di rete, nmap e iftop diventano strumenti quotidiani. Se invece gestisci anche API e automazioni, jq entra nella lista delle dipendenze mentali, non solo dei pacchetti installati.
In pratica, il valore non è avere “le 12 migliori app”, ma avere un kit che riduce il tempo tra sintomo e causa. Su Ubuntu questo approccio funziona bene perché i pacchetti sono maturi, integrati e facili da mantenere con gli aggiornamenti standard del sistema.
Commenti (0)
Nessun commento ancora.
Segnala contenuto
Elimina commento
Eliminare definitivamente questo commento?
L'azione non si può annullare.