- 1 1. Conoscenze Preliminari: Struttura di Archiviazione e Montaggio in Linux / Ubuntu
- 2 2. Metodi di Base da Linea di Comando per Controllare lo Spazio su Disco
- 3 3. Controllo dello Spazio su Disco Usando Strumenti GUI (Desktop Ubuntu)
- 4 4. Indagine e Contromisure Quando lo Spazio su Disco È Basso
- 4.1 4.1 Identificazione dei Segni di Esaurimento dello Spazio su Disco
- 4.2 4.2 Passo 1: Controlla l’Utilizzo Complessivo del Disco (df)
- 4.3 4.3 Passo 2: Identifica Quali Directory Stanno Consumando Spazio (du)
- 4.4 4.4 Passo 3: Rimozione di File e Cache Non Necessari
- 4.5 4.5 Passo 4: Gestire la crescita del disco legata ad applicazioni e log
- 4.6 4.6 Passo 5: Risolvere la causa principale con ridimensionamento o espansione del disco
- 4.7 4.7 Prevenire il ripetersi con monitoraggio regolare
- 4.8 4.8 Riepilogo: Ordine di priorità per le contromisure di spazio disco
- 5 5. Suggerimenti avanzati (Tecniche utili e precauzioni)
- 5.1 5.1 Automazione dei controlli regolari del disco
- 5.2 5.2 One-Liners to Find Large Files
- 5.3 5.3 Creating Aliases for Frequently Used Commands
- 5.4 5.4 Continuously Monitoring Disk Usage Changes
- 5.5 5.5 Be Aware of Permission Barriers
- 5.6 5.6 Considerations for SSD and HDD Environments
- 5.7 5.7 Turning Disk Management into a Preventive System
- 5.8 Summary
- 6 6. FAQ (Domande Frequenti)
- 6.1 Q1. Qual è il modo più semplice per controllare lo spazio disco attuale su Ubuntu?
- 6.2 Q2. Come posso controllare l’utilizzo del disco per directory?
- 6.3 Q3. Qual è la differenza tra df e du?
- 6.4 Q4. Come posso controllare lo spazio disco usando strumenti GUI?
- 6.5 Q5. Cosa dovrei eliminare per primo quando vedo un avviso “disk pieno”?
- 6.6 Q6. Le applicazioni Snap consumano molto spazio disco?
- 6.7 Q7. Cosa fare se /var o /home è troppo grande?
- 6.8 Q8. Il comando du impiega troppo tempo. Come posso velocizzarlo?
- 6.9 Q9. Come posso evitare che i problemi di spazio disco si ripetano?
- 6.10 Q10. Quali opzioni sono disponibili per espandere lo spazio disco?
- 6.11 Q11. Posso controllare l’utilizzo del disco senza privilegi di root?
- 6.12 Q12. Come posso controllare lo spazio disco su un server senza GUI?
- 6.13 Q13. C’è qualche rischio nel controllare l’utilizzo del disco?
- 6.14 Q14. Ci sono trucchi per risparmiare spazio disco?
- 6.15 Q15. Quali sono gli strumenti consigliati per il monitoraggio del disco?
- 6.16 Riepilogo Finale
1. Conoscenze Preliminari: Struttura di Archiviazione e Montaggio in Linux / Ubuntu
Quando si controlla lo spazio su disco su Ubuntu (e sulla maggior parte dei sistemi operativi basati su Linux), ci sono diversi concetti strutturali fondamentali che devono essere compresi correttamente. Questa sezione organizza i seguenti concetti che spesso causano confusione:
- Il significato di dispositivi e partizioni
- Montaggio e punti di mount
- Le basi di LVM (Logical Volume Management)
- Configurazioni di archiviazione tipiche in Ubuntu
Spiegheremo ciascuno di questi passo per passo.
1.1 Nozioni di Base su Dispositivi e Partizioni
Dispositivi (Dischi Fisici e Logici)
In Linux, ogni unità di archiviazione è gestita come un file di dispositivo. Ad esempio, HDD, SSD e unità USB sono rappresentati con nomi come /dev/sda, /dev/sdb o /dev/nvme0n1.
Il suffisso alfabetico (a, b, c, ecc.) indica l’ordine in cui il sistema ha rilevato i dispositivi.
Partizioni
Un singolo dispositivo fisico può essere usato così com’è, ma nella maggior parte dei casi viene suddiviso in più aree logiche chiamate partizioni. Il partizionamento consente di gestire separatamente il sistema operativo, i dati degli utenti e i log.
Ad esempio, /dev/sda1 e /dev/sda2 rappresentano partizioni. Questi nomi significano “partizione 1 / partizione 2 sul dispositivo sda.”
Un filesystem viene creato su ogni partizione e i dati reali vengono memorizzati lì.
(Spiegazione di esempio delle partizioni Linux: Engineer’s Entrance)
Le partizioni utilizzano formati come MBR (più vecchio) o GPT (più recente), ognuno con limitazioni e vantaggi diversi.
1.2 Montaggio e Punti di Mount
Montaggio
Per rendere un filesystem utilizzabile, è necessario un processo chiamato montaggio. Questa operazione associa una partizione (o volume logico) a una directory specifica (punto di mount).
Senza il montaggio, i dati sulla partizione non possono essere accessi.
Ad esempio, anche se esiste un filesystem ext4 su /dev/sda1, non è possibile accedere al suo contenuto sotto /mnt/data a meno che non si esegua un comando come mount /dev/sda1 /mnt/data.
Punti di Mount
La directory a cui è collegato un filesystem è chiamata punto di mount.
Esempi tipici includono:
/(slash): Directory radice (punto di partenza dell’intero sistema)/home: Posizione per le directory home degli utenti/var: Posizione per log, cache e dati variabili/boot: Posizione per i file relativi all’avvio
In Ubuntu e in molte distribuzioni Linux, il file /etc/fstab definisce quali dispositivi o UUID vengono montati in quali posizioni durante l’avvio del sistema.
1.3 Panoramica di LVM (Logical Volume Management)
Con il solo partizionamento tradizionale, può essere difficile modificare in modo flessibile la disposizione dei dischi in seguito. Per affrontare questo problema, Linux fornisce LVM (Logical Volume Manager).
Componenti Base di LVM
- Physical Volume (PV) Un disco fisico o una partizione.
- Volume Group (VG) Uno strato che combina più PV in un unico grande pool di archiviazione virtuale.
- Logical Volume (LV) Un’area allocata logicamente creata da un VG. I filesystem vengono creati sui LV.
Questa struttura a strati consente di espandere o ridurre i volumi logici in seguito e rende facile aggiungere e integrare ulteriori dischi fisici.
Vantaggi e Considerazioni di LVM
Vantaggi
- Ridimensionamento flessibile della capacità di archiviazione
- Possibilità di combinare più dischi
- Creazione facile di snapshot per scopi di backup
Considerazioni
- Configurazione e operazione leggermente più complesse
- Rischio di perdita dati se configurato in modo errato
- Procedure di espansione diverse rispetto agli ambienti non LVM
Gli installer di Ubuntu spesso offrono un’opzione per utilizzare LVM, ma non è obbligatorio e dipende dall’uso e dalla politica di gestione.
1.4 Configurazioni di Archiviazione Tipiche in Ubuntu
Configurazione a Partizione Singola (Setup Semplice)
Nella configurazione più semplice, tutto è collocato sotto la directory radice (/). Questo approccio è facile da gestire inizialmente, ma in seguito l’espansione o la separazione può risultare difficile.
Configurazione Multi‑Partizione Comune
Una disposizione comunemente usata divide lo storage in più partizioni, ad esempio:
/(root): File di sistema core/home: Dati dell’utente/var: Log e dati variabili/boot: File di avvio- Area di swap (partizione o file di swap)
Questa struttura aiuta a impedire che log o cache sovraccarichino l’intero sistema.
Configurazione di Volume Logico Basata su LVM
Una configurazione più avanzata utilizza LVM come segue:
- Dischi fisici → PV
- Più PV combinati in un VG
- Volumi logici creati per
/,/home,/var, ecc. - È possibile espandere o aggiungere nuovi LV in futuro
Questo approccio offre grande flessibilità quando si aggiungono dischi o si espande lo storage.
2. Metodi di Base da Linea di Comando per Controllare lo Spazio su Disco
Su Ubuntu, l’uso di strumenti da linea di comando è il modo più affidabile e flessibile per verificare l’utilizzo del disco.
I comandi consentono un’analisi precisa anche in ambienti server senza interfaccia grafica.
Questa sezione si concentra sui comandi fondamentali df e du, insieme agli strumenti di supporto.
2.1 Controllare l’Utilizzo del Filesystem con il Comando df
Panoramica di df
df (disk free) mostra l’utilizzo complessivo del disco e lo spazio disponibile per i filesystem.
È il modo più comune per verificare la capacità del disco su sistemi Linux, inclusi Ubuntu.
Uso Base
df -h
Questo comando elenca tutti i filesystem usando unità leggibili dall’uomo (K, M, G).
Le colonne principali significano quanto segue:
Spiegazione delle Colonne Principali
| Column | Description |
|---|---|
| Filesystem | Target device name (e.g., /dev/sda1) |
| Size | Total filesystem size |
| Used | Used disk space |
| Avail | Remaining available space |
| Use% | Usage percentage |
| Mounted on | Mount point (e.g., /, /home) |
Opzioni Comunemente Usate
| Option | Description |
|---|---|
-h | Display sizes in MB / GB (essential for readability) |
-T | Also display filesystem type (ext4, xfs, etc.) |
--total | Add a total summary line at the end |
df -h /home | Display only the filesystem containing a specific directory |
Esempio di Esecuzione
$ df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda2 100G 55G 40G 59% /
/dev/sda1 512M 120M 392M 24% /boot
tmpfs 16G 32M 16G 1% /run
Questo output ti permette di capire rapidamente come lo spazio su disco è allocato e utilizzato.
Note Importanti
- Le partizioni smontate non sono mostrate da
df. - I pacchetti Snap (ad es.,
/var/lib/snapd/snaps) possono consumare spazio su disco significativo e dovrebbero essere controllati separatamente. - Alcuni punti di mount sono visibili solo quando si esegue con privilegi di root.
2.2 Controllare l’Utilizzo delle Directory con il Comando du
Panoramica di du
du (disk usage) misura l’utilizzo dello spazio su disco da parte di directory e file.
Mentre df fornisce una panoramica ad alto livello, du è ideale per identificare dove lo spazio su disco è effettivamente consumato.
Uso Base
du -sh /home
Questo comando visualizza l’utilizzo totale del disco della directory /home in un formato leggibile dall’uomo.
Opzioni Comunemente Usate
| Option | Description |
|---|---|
-s | Show only the summary total |
-h | Automatically convert units for readability |
--max-depth=1 | List usage of directories directly under the specified path |
-c | Display a grand total at the end |
--exclude=PATTERN | Exclude specific directories (e.g., caches) |
Esempio: Confrontare le Dimensioni delle Directory
sudo du -h --max-depth=1 /var
Output di esempio:
1.2G /var/log
2.5G /var/lib
800M /var/cache
4.5G /var
Questo rende facile identificare quali directory consumano più spazio.
Uso Avanzato: Ordinare per Dimensione
Combinando du con sort, è possibile identificare rapidamente le directory più grandi.
sudo du -hsx /* | sort -rh | head -10
Questo comando calcola l’utilizzo del disco per le directory direttamente sotto la directory radice e mostra le 10 più grandi.
Note Importanti
- L’esecuzione può richiedere tempo per gerarchie di directory profonde.
- Senza privilegi di root, l’utilizzo del disco per alcune directory potrebbe non essere visualizzato correttamente.
- Anche su SSD veloci, la scansione di decine di gigabyte può richiedere diversi minuti.
2.3 Altri Comandi e Strumenti di Supporto Utili
lsblk: Visualizzare la Struttura dei Dispositivi a Blocchi
lsblk
lsblk mostra i dispositivi disco e la loro disposizione di partizione in formato ad albero.
È utile per comprendere visivamente come dispositivi, partizioni e punti di mount sono correlati tra loro.
Esempio:
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
sda 8:0 0 100G 0 disk
├─sda1 8:1 0 512M 0 part /boot
└─sda2 8:2 0 99.5G 0 part /
ncdu: Analizzatore Interattivo dell’Utilizzo del Disco
Se desideri un’alternativa più intuitiva a du, ncdu (NCurses Disk Usage) è altamente raccomandato.
Installazione:
sudo apt install ncdu
Lancio:
sudo ncdu /
Puoi navigare nelle directory usando i tasti freccia e identificare interattivamente i punti caldi di utilizzo del disco.
Questo strumento è particolarmente popolare tra gli amministratori di sistema per ambienti server.
Combinazione con il comando find
Per localizzare file individuali grandi, usa find:
sudo find / -type f -size +1G
Questo comando cerca tutti i file più grandi di 1GB, utile per identificare log grandi o immagini di disco.
2.4 Scegliere il Metodo Giusto (Riepilogo del Confronto)
| Purpose | Command Example | Characteristics |
|---|---|---|
| Check overall free disk space | df -h | Filesystem-level overview |
| Check a specific directory | du -sh /path | Detailed size measurement |
| Find disk usage hotspots | du -hsx /* | sort -rh | Quick identification of large directories |
| View device and partition layout | lsblk | Visual representation of structure |
| Find large files | find / -type f -size +1G | Filter by file size |
3. Controllo dello Spazio su Disco Usando Strumenti GUI (Desktop Ubuntu)
Ubuntu fornisce comodi strumenti grafici (GUI) che ti permettono di controllare lo spazio su disco senza usare il terminale.
Questa sezione introduce i seguenti due metodi principali:
- Usando il gestore di file predefinito (Nautilus)
- Usando l’Analizzatore di Utilizzo Disco (Baobab)
3.1 Controllo dello Spazio Disponibile con il Gestore di File (Nautilus)
Metodo Standard in Ubuntu
Sul Desktop Ubuntu, il modo più semplice per controllare lo spazio su disco è aprire il gestore di file (Nautilus).
- Clicca sull’icona “File” nel dock sinistro (lanciatore di applicazioni)
- Controlla la barra di stato visualizzata in alto a destra o in basso a sinistra
- Lo spazio su disco rimanente è mostrato come “XX GB liberi” o “XX GB usati su YY GB”
Questo ti permette di verificare rapidamente lo spazio disponibile sull’unità di sistema.
Visualizzazione Dettagli tramite Proprietà
Tasto destro su una cartella o icona di unità e seleziona [Properties] per visualizzare informazioni dettagliate sull’utilizzo per quella cartella o volume specifico.
Questo è particolarmente utile per controllare visivamente la dimensione di directory come /home o /Downloads.
Vantaggi e Limitazioni
| Advantages | Limitations |
|---|---|
| Simple, click-based operation | Difficult to analyze system-wide or hidden areas |
| Beginner-friendly | Hard to detect growth in /var/log or system directories |
Sebbene utile per una panoramica rapida, un’analisi più profonda è meglio gestita con lo strumento Baobab descritto di seguito.
3.2 Analizzatore di Utilizzo Disco (Baobab)
Cos’è Baobab?
Baobab (ufficialmente chiamato Disk Usage Analyzer) è uno strumento grafico incluso in Ubuntu che visualizza l’utilizzo del disco usando grafici a torta e mappe ad albero.
È spesso installato per impostazione predefinita, ma se non lo è, può essere installato con il seguente comando:
sudo apt install baobab
Come Lanciare Baobab
- Cerca “Utilizzo disco” in Activities (ricerca in alto a sinistra)
- Clicca su “Disk Usage Analyzer (Baobab)” per lanciare
- Dopo l’avvio, seleziona “Scansiona Cartella” o “Scansiona Filesystem”
Una volta completata la scansione, l’utilizzo del disco è visualizzato graficamente usando un grafico a torta o vista ad albero.
Esempio di Visualizzazione (Concettuale)
- Gli anelli esterni rappresentano livelli di directory più profondi
- La dimensione dell’area corrisponde all’utilizzo del disco
Questo rende facile identificare istantaneamente quali cartelle consumano più spazio.
Funzionalità Principali
| Feature | Description |
|---|---|
| Target Selection | Scan specific directories such as /home |
| Tree View | View folder hierarchy and sizes in a list format |
| Identifying Unnecessary Files | Quickly spot large directories at a glance |
| Right-click → Open | Open the corresponding directory directly in the file manager |
Vantaggi e Avvertenze
Vantaggi
- Visualizzazione grafica intuitiva adatta ai principianti
- Decisioni più facili per la pulizia e l’organizzazione dei file
- Le directory di sistema possono essere analizzate quando lanciato con privilegi root
Avvertenze
- La scansione dell’intero filesystem potrebbe richiedere tempo
- Restrizioni di permesso potrebbero impedire la misurazione accurata di alcune cartelle
- Dischi grandi potrebbero richiedere memoria significativa durante l’analisi
3.3 Controllo delle Informazioni sul Disco con GNOME Disks
Ubuntu include anche un’applicazione standard chiamata GNOME Disks (Disk Utility).
Questo strumento è usato per ispezionare la struttura del disco stessa, piuttosto che solo lo spazio disponibile.
Puoi visualizzare le seguenti informazioni:
- Nomi dei dispositivi (es., /dev/sda)
- Tipi di filesystem (ext4, NTFS, ecc.)
- Punti di mount
- Grafici di utilizzo e spazio disponibile
Come lanciare:
- Cerca “Dischi” in Activities
- Apri GNOME Disks
- Seleziona un disco dall’elenco a sinistra
L’utilizzo del disco è visualizzato usando indicatori visivi, fornendo informazioni equivalenti al comando df in forma grafica.
3.4 Scelta Tra Strumenti GUI e a Riga di Comando
Su Ubuntu Desktop, gli strumenti GUI da soli sono sufficienti per la gestione di base dello spazio su disco.
Tuttavia, per il risoluzione dei problemi precisa e l’amministrazione del server, gli strumenti a riga di comando come df e du sono essenziali.
| Scenario | Recommended Tool |
|---|---|
| Quickly check available space | File Manager (Nautilus) |
| Analyze which folders are large | Baobab (Disk Usage Analyzer) |
| Inspect disk and partition layout | GNOME Disks |
| Server or remote environments | df, du, lsblk, ncdu |
3.5 Ambienti Senza GUI (Per Utenti Server)
Se stai eseguendo Ubuntu Server o un altro ambiente senza una GUI,
strumenti come Baobab o il gestore file non sono disponibili.
In tali casi, i comandi introdotti in precedenza df, du e ncdu forniscono un’analisi dettagliata dello spazio su disco utilizzando solo il terminale.
Riepilogo
L’utilizzo di strumenti GUI permette di completare i controlli sull’utilizzo del disco e l’analisi di pulizia interamente tramite clic.
Baobab, in particolare, è uno strumento standard ampiamente utilizzato adatto sia per principianti che per utenti avanzati.
Combinando i metodi introdotti in questa sezione, il monitoraggio di routine dello storage diventa significativamente più facile.
4. Indagine e Contromisure Quando lo Spazio su Disco È Basso
Quando si utilizza Ubuntu per periodi prolungati, lo spazio su disco può diventare gradualmente limitato a causa di aggiornamenti e dati accumulati.
Lasciare un sistema in uno stato di basso spazio può causare fallimenti negli aggiornamenti, problemi di logging e instabilità generale.
Questa sezione spiega le procedure passo-passo per identificare i problemi di spazio su disco e applicare soluzioni efficaci.
4.1 Identificazione dei Segni di Esaurimento dello Spazio su Disco
Prima di tutto, controlla i sintomi che indicano spazio su disco insufficiente.
Se incontri uno dei seguenti, è il momento di indagare sull’utilizzo dello storage:
apt upgraderiporta “spazio su disco insufficiente”- Avvisi GUI come “Basso spazio su disco” appaiono
- Alcune applicazioni falliscono nel salvare impostazioni o scrivere log
- Directory come
/varo/tmpdiventano piene, causando comportamento lento
In queste situazioni, liberare semplicemente spazio non è sufficiente—devi identificare dove lo spazio su disco viene consumato.

4.2 Passo 1: Controlla l’Utilizzo Complessivo del Disco (df)
Inizia controllando la situazione complessiva del disco utilizzando il comando df -h.
df -h
Output di esempio:
Filesystem Size Used Avail Use% Mounted on
/dev/sda2 50G 48G 1.2G 98% /
/dev/sda1 512M 120M 392M 24% /boot
Qualsiasi filesystem con un valore Use% sopra il 90% richiede attenzione immediata.
Se directory critiche come / (root), /var o /home sono quasi piene, procedi al passo successivo.
4.3 Passo 2: Identifica Quali Directory Stanno Consumando Spazio (du)
Una volta identificata la partizione interessata, analizza il suo contenuto utilizzando il comando du.
Esempio: Visualizza le 10 Directory Più Grandi
sudo du -hsx /* | sort -rh | head -10
Output di esempio:
15G /var
10G /home
5.2G /usr
3.1G /snap
Se /var è grande, di solito i log o le cache sono responsabili. Se /home è grande, tipicamente i dati utente sono la causa.
Approfondimento Ulteriore All’Interno di /var
sudo du -hsx /var/* | sort -rh | head -10
Traversando la gerarchia delle directory in questo modo, puoi individuare esattamente le directory che consumano spazio su disco.
4.4 Passo 3: Rimozione di File e Cache Non Necessari
Una volta identificate le fonti di utilizzo del disco, inizia la pulizia partendo da file non necessari sicuri da eliminare.
(1) Rimozione della Cache APT
Ubuntu memorizza file di pacchetti temporanei in /var/cache/apt/archives durante gli aggiornamenti.
Eliminandoli, spesso si può recuperare diversi gigabyte di spazio su disco.
sudo apt clean
sudo apt autoremove
apt clean: Rimuove tutti i file di pacchetti memorizzati in cacheapt autoremove: Rimuove pacchetti di dipendenze non utilizzati
(2) Eliminazione di Vecchi File di Log
/var/log è una delle cause più comuni di gonfiore dello spazio su disco.
sudo journalctl --vacuum-time=7d
Questo rimuove i log di sistema più vecchi di sette giorni.
Puoi anche eliminare manualmente file di log compressi non necessari (.gz).
sudo rm -f /var/log/*.gz
(3) Rimozione di Vecchie Revisioni di Pacchetti Snap
Su Ubuntu, le applicazioni Snap mantengono più versioni per impostazione predefinita.
Le revisioni disabilitate più vecchie possono essere rimosse usando il seguente comando:
sudo snap list --all | grep disabled | awk '{print $1, $3}' | \
while read snapname revision; do
sudo snap remove "$snapname" --revision="$revision"
done
In alternativa, è possibile utilizzare utility dedicate come “Snap Cleaner”.
(4) Rimozione della cache delle miniature
Se gestisci frequentemente immagini o video, grandi quantità di cache possono accumularsi in ~/.cache/thumbnails.
rm -rf ~/.cache/thumbnails/*
(5) Svuotare il Cestino
I file eliminati tramite l’interfaccia grafica sono spesso ancora conservati in ~/.local/share/Trash/files.
rm -rf ~/.local/share/Trash/*
4.5 Passo 4: Gestire la crescita del disco legata ad applicazioni e log
(1) Ambienti Docker
Se Docker è in uso, immagini e container inutilizzati consumano spesso spazio disco significativo.
docker system df
docker system prune -a
docker system df: Controlla l’utilizzo disco relativo a Dockerdocker system prune -a: Rimuove immagini e container inutilizzati
(2) Uso intensivo di Flatpak o Snap
Gli ambienti desktop con molte applicazioni GUI tendono ad accumulare dati residui da versioni precedenti.
Usa comandi come flatpak uninstall --unused per pulire.
(3) Revisione delle impostazioni di rotazione dei log
Controlla /etc/logrotate.conf e i file sotto /etc/logrotate.d/ per assicurarti che i periodi di conservazione e i limiti di dimensione dei log siano configurati correttamente.
Questo aiuta a prevenire futuri problemi di spazio disco.
4.6 Passo 5: Risolvere la causa principale con ridimensionamento o espansione del disco
Se la pulizia da sola non è sufficiente, considera i seguenti cambiamenti strutturali.
(1) Espansione dei volumi logici con LVM
In ambienti che utilizzano LVM (Logical Volume Manager), i volumi logici possono essere espansi facilmente.
sudo lvextend -L +20G /dev/ubuntu-vg/ubuntu-lv
sudo resize2fs /dev/ubuntu-vg/ubuntu-lv
Ciò aumenta lo spazio disponibile del filesystem root.
(2) Aggiunta e montaggio di un nuovo disco
Puoi montare un nuovo dispositivo di archiviazione in directory come /mnt/data,
e spostare directory di grandi dimensioni (ad es. /var/lib/docker o /home) sul nuovo disco.
(3) Utilizzo di storage cloud
Un’altra opzione è spostare log o backup su servizi di storage cloud come Google Drive, Dropbox o Nextcloud.
4.7 Prevenire il ripetersi con monitoraggio regolare
Le carenze di spazio disco sono prevenibili con un monitoraggio regolare.
Le seguenti pratiche operative sono efficaci:
- Controlla regolarmente
df -hedu -sh /var - Crea script per rilevare automaticamente directory di grandi dimensioni
- Invia avvisi email quando l’utilizzo del disco supera una soglia definita (usando
cronemailutils)
Esempio semplice:
#!/bin/bash
THRESHOLD=90
USAGE=$(df / | awk 'NR==2 {print $5}' | sed 's/%//')
if [ "$USAGE" -gt "$THRESHOLD" ]; then
echo "Disk usage on / has exceeded ${THRESHOLD}%!" | mail -s "Disk Alert" admin@example.com
fi
4.8 Riepilogo: Ordine di priorità per le contromisure di spazio disco
| Priority | Countermeasure | Notes |
|---|---|---|
| ★★★★★ | Remove APT cache (sudo apt clean) | Immediate effect |
| ★★★★☆ | Log cleanup (sudo journalctl --vacuum-time=7d) | Safe and reliable |
| ★★★★☆ | Remove unused Snap / Flatpak versions | Effective on desktop systems |
| ★★★☆☆ | Remove unused Docker data | Effective for server use |
| ★★☆☆☆ | Disk expansion or additional mounts | Effective as a fundamental solution |
| ★☆☆☆☆ | Introduce monitoring scripts | Most effective for long-term operations |
Quando lo spazio disco diventa limitato su Ubuntu,
“identifica l’uso intensivo → rimuovi in sicurezza i dati non necessari → rivedi la struttura del sistema”
Seguendo questo approccio in tre fasi si risolvono la maggior parte dei problemi.
5. Suggerimenti avanzati (Tecniche utili e precauzioni)
Anche dopo aver padroneggiato i controlli di base dello spazio disco e i metodi di pulizia, l’utilizzo del disco può aumentare gradualmente durante un funzionamento a lungo termine.
Questa sezione presenta tecniche avanzate per mantenere i sistemi Ubuntu funzionanti senza intoppi.
5.1 Automazione dei controlli regolari del disco
Eseguire manualmente df e du può risultare noioso, ma gli script di automazione riducono notevolmente lo sforzo.
Registrando uno script di monitoraggio semplice con cron, è possibile ricevere avvisi quando l’utilizzo del disco supera un certo livello.
Esempio: Notifica email quando lo spazio libero scende sotto il 10%
#!/bin/bash
THRESHOLD=90
USAGE=$(df / | awk 'NR==2 {print $5}' | sed 's/%//')
if [ "$USAGE" -gt "$THRESHOLD" ]; then
echo "Attenzione: l'utilizzo del disco root ha raggiunto ${USAGE}%." | \
mail -s "Avviso Disco Ubuntu" user@example.com
fi
Save this as /usr/local/bin/check_disk.sh and grant execute permission with chmod +x.
Then register it using crontab -e:
0 8 * * * /usr/local/bin/check_disk.sh
→ This runs the check automatically every morning at 8:00.
Helpful Enhancements
- Notifications can be sent not only by email but also via Slack webhooks or LINE Notify
- The script can be extended to monitor multiple mount points simultaneously
5.2 One-Liners to Find Large Files
Disk space shortages are often caused by a single large file.
The following one-liner lists all files larger than 1GB:
sudo find / -type f -size +1G -exec ls -lh {} \; | awk '{print $9 ": " $5}'
Example output:
/var/log/syslog.1: 1.5G
/var/lib/docker/overlay2/.../diff/usr/lib/libchrome.so: 2.3G
/home/user/Downloads/video.mp4: 4.1G
This allows you to quickly identify files that should be deleted or moved.
Variation: Search Only a Specific Directory
sudo find /var -type f -size +500M
This is useful when investigating large files under /var.
5.3 Creating Aliases for Frequently Used Commands
Typing long commands repeatedly is inefficient, so setting up aliases improves productivity.
Example: Add to ~/.bashrc
alias dfh='df -h --total'
alias duh='sudo du -hsx /* | sort -rh | head -10'
alias logs='sudo du -hs /var/log/* | sort -rh | head -10'
Apply the changes:
source ~/.bashrc
After this, you can quickly run:
dfh: Check total disk usageduh: Show top 10 largest directorieslogs: Analyze log directory usage
5.4 Continuously Monitoring Disk Usage Changes
During long-term Ubuntu operation, disk usage can grow unnoticed.
Keeping a history of disk usage is an effective countermeasure.
Example: Log Disk Usage to a File
#!/bin/bash
df -h / | awk 'NR==2 {print strftime("%Y-%m-%d %H:%M:%S"), $3, $4, $5}' >> /var/log/disk_usage.log
Running this daily via cron allows you to track growth trends over time.
More Advanced Approaches
- Visualize usage with
collectdornetdata - Use Prometheus + Grafana for enterprise monitoring
- Integrate with AWS CloudWatch or GCP Ops Agent in cloud environments
5.5 Be Aware of Permission Barriers
Accurate disk analysis may require root privileges.
Example:
du -sh /var
Without sufficient permissions, some directories may be skipped with “Permission denied,”
resulting in smaller reported sizes than actual usage.
→ Use sudo or administrative privileges when performing system-wide analysis.
5.6 Considerations for SSD and HDD Environments
SSD Environments
- Enable regular TRIM operations to avoid unnecessary writes:
sudo systemctl enable fstrim.timerThis allows SSDs to optimize deleted blocks automatically.
HDD Environments
- Log and cache fragmentation may occur more easily, so rebooting after cleanup can be effective
- Run I/O-intensive commands such as
duduring low-load periods (e.g., late at night)
5.7 Turning Disk Management into a Preventive System
The optimal approach to disk management is habitual and systematic prevention.
Practical Checklist
- Regularly check
df -h - Review
/var/loggrowth monthly - Run
apt autoremoveweekly - Clean up unused Snap and Docker data regularly
- Enable automated alert scripts
By following these practices, most disk space issues can be prevented in advance.
Summary
This section introduced advanced techniques for efficient disk management on Ubuntu.
The key points are:
- Rilevamento precoce tramite automazione e avvisi
- Efficienza migliorata usando alias e one‑liner
- Gestione sicura con consapevolezza di permessi e caratteristiche di archiviazione
Combinando questi approcci la gestione del disco passa da un compito noioso a una parte fondamentale delle operazioni di sistema.
6. FAQ (Domande Frequenti)
Q1. Qual è il modo più semplice per controllare lo spazio disco attuale su Ubuntu?
Il metodo più semplice è eseguire il seguente comando in un terminale:
df -h
Questo mostra la dimensione totale, lo spazio usato e lo spazio disponibile per ogni filesystem.
L’opzione -h formatta i valori in modo leggibile (GB / MB).
Q2. Come posso controllare l’utilizzo del disco per directory?
Usa il comando du.
Per controllare una directory specifica:
du -sh /home
Significato delle opzioni:
-s: Mostra solo il totale-h: Visualizza le dimensioni in formato leggibile
Per un’analisi più dettagliata:
sudo du -h --max-depth=1 /var
Q3. Qual è la differenza tra df e du?
In breve, misurano obiettivi diversi.
| Command | Target | Main Purpose |
|---|---|---|
df | Entire filesystem | Check available space |
du | Files and directories | Identify disk usage sources |
Q4. Come posso controllare lo spazio disco usando strumenti GUI?
Su Ubuntu Desktop, puoi usare il File Manager (Nautilus) o Disk Usage Analyzer (Baobab).
- File Manager: mostra lo spazio rimanente nella barra di stato
- Baobab: visualizza l’utilizzo del disco con grafici e mappe ad albero
Q5. Cosa dovrei eliminare per primo quando vedo un avviso “disk pieno”?
Inizia con gli elementi sicuri nell’ordine seguente:
- Cache APT :
sudo apt clean - Pacchetti inutilizzati :
sudo apt autoremove - Log vecchi :
sudo journalctl --vacuum-time=7d - Cestino e cache delle miniature :
rm -rf ~/.cache/thumbnails/* ~/.local/share/Trash/*
Q6. Le applicazioni Snap consumano molto spazio disco?
Sì. Snap mantiene più revisioni per impostazione predefinita.
Rimuovi le revisioni inutilizzate con:
sudo snap list --all | grep disabled | awk '{print $1, $3}' | \
while read snapname revision; do
sudo snap remove "$snapname" --revision="$revision"
done
Q7. Cosa fare se /var o /home è troppo grande?
/var: pulisci i log (/var/log) e le cache (/var/cache)/home: archivia o sposta i file utente di grandi dimensioni su storage esterno
Se necessario, considera di espandere lo storage usando LVM o montando un disco aggiuntivo.
Q8. Il comando du impiega troppo tempo. Come posso velocizzarlo?
- Limita la profondità con
--max-depth=1 - Escludi directory non necessarie (es.
--exclude=/proc) - Usa
ncduper un’analisi interattiva
Q9. Come posso evitare che i problemi di spazio disco si ripetano?
- Esegui
sudo apt autoremovesettimanalmente - Controlla
/var/loge/homemensilmente - Registra l’output di
df -hper monitorare le tendenze - Pulisci regolarmente dati di Snap e Docker
- Abilita TRIM sui sistemi SSD
Q10. Quali opzioni sono disponibili per espandere lo spazio disco?
- Espandere volumi LVM
sudo lvextend -L +10G /dev/ubuntu-vg/ubuntu-lv
sudo resize2fs /dev/ubuntu-vg/ubuntu-lv - Aggiungere e montare un nuovo disco in directory come
/mnt/data - Usare storage cloud per file di grandi dimensioni e backup
Q11. Posso controllare l’utilizzo del disco senza privilegi di root?
Puoi eseguire df -h, ma du richiede permessi per ispezionare alcune directory.
Senza accesso root, limita l’analisi alla tua home directory:
du -sh ~/*
Q12. Come posso controllare lo spazio disco su un server senza GUI?
Usa il seguente set di comandi:
| Purpose | Command |
|---|---|
| Check overall usage | df -h |
| Directory-level analysis | sudo du -hsx /* |
| Find large files | sudo find / -type f -size +1G |
| Interactive analysis | sudo ncdu / |
Q13. C’è qualche rischio nel controllare l’utilizzo del disco?
Controllare semplicemente l’utilizzo del disco è sicuro.
Tuttavia, le operazioni di cancellazione o ridimensionamento richiedono cautela.
- Controlla due volte i percorsi quando usi
sudo rm -rf - Non cancellare mai directory di sistema come
/bin,/libo/etc - Crea backup se non sei sicuro
Q14. Ci sono trucchi per risparmiare spazio disco?
- Riduci la conservazione dei log in
/etc/logrotate.conf - Rimuovi i language pack inutilizzati (
sudo apt install localepurge) - Rimuovi automaticamente i kernel vecchi (
sudo apt autoremove --purge)
Q15. Quali sono gli strumenti consigliati per il monitoraggio del disco?
| Tool | Features |
|---|---|
| ncdu | Lightweight and fast CLI tool |
| Baobab | GUI-based visual analysis |
| duf | Enhanced df with readable tables |
| Netdata / Prometheus / Grafana | Advanced server monitoring and visualization |
Riepilogo Finale
Attraverso questa FAQ, i punti chiave della gestione del disco su Ubuntu possono essere riassunti come segue:
- Usa sia
df(panoramica) siadu(dettagli) - Rimuovi i dati non necessari in un ordine sicuro (APT → log → cache)
- Previeni la ricorrenza tramite automazione e monitoraggio
Adottando queste pratiche come routine, i problemi di spazio su disco diventano rari.
La gestione del disco può non essere glamour, ma è una delle attività di manutenzione più critiche per un funzionamento stabile di Ubuntu.



