Partizioni del disco: come funzionano e come gestirle
Come funzionano le partizioni del disco: MBR e GPT, i file system ext4, NTFS ed exFAT, lo schema giusto per Linux e come ridimensionare senza perdere dati.
Arrivi alla schermata di installazione di Linux, ti chiede come vuoi partizionare il disco e per la prima volta capisci che non hai idea di cosa rispondere. Oppure hai un hard disk esterno che su Windows funziona e sul Mac è in sola lettura. Sono lo stesso argomento. In questo articolo trovi cosa sono le partizioni, che differenza c'è tra MBR e GPT, quale file system usare per cosa, come montare i dischi su Linux e come ridimensionare senza fare disastri.
Cos'è
Una partizione è una porzione di un disco fisico che il sistema operativo tratta come se fosse un disco a sé, con un proprio file system e un proprio contenuto.
Un disco da 1 TB può presentarsi come un unico spazio da 1 TB, oppure come tre spazi separati da 500, 400 e 100 GB. Fisicamente è sempre lo stesso pezzo di hardware: la divisione è scritta in una tabella all'inizio del disco.
Perché dividerlo? Per tenere sistema e dati separati, per installare più sistemi operativi sulla stessa macchina, per usare file system diversi, o per limitare il danno quando qualcosa riempie il disco.
La tabella delle partizioni: MBR e GPT
I primi settori del disco contengono la mappa: dove inizia e dove finisce ogni partizione. Esistono due formati.
| MBR | GPT | |
|---|---|---|
| Età | 1983 | Fine anni '90, standard oggi |
| Dimensione massima disco | 2 TB | 8 ZB (di fatto nessun limite) |
| Partizioni | 4 primarie (o 3 + estesa) | 128 |
| Copie della tabella | Una sola | Una all'inizio e una alla fine |
| Firmware | BIOS legacy | UEFI |
| Checksum di integrità | No | Sì (CRC32) |
La copia di riserva di GPT non è un dettaglio. Con MBR, se i primi settori si corrompono, la mappa del disco è persa e i dati ci sono ancora ma nessuno sa più dove. GPT tiene una seconda copia in fondo al disco e può ricostruirsi.
La regola pratica è breve: su qualsiasi macchina degli ultimi dieci anni, GPT. MBR ha senso solo per compatibilità con hardware o sistemi molto vecchi. Il legame con il firmware è spiegato in BIOS e UEFI.
Per vedere com'è messo un disco su Linux:
lsblk -f # dischi, partizioni, file system, punti di montaggio
sudo fdisk -l /dev/sda # tabella delle partizioni
sudo parted /dev/sda print # mostra anche il tipo di tabella (msdos o gpt)
Su Windows, diskmgmt.msc mostra la stessa cosa in forma grafica; il tipo di tabella si legge nelle proprietà del disco, scheda Volumi.
I file system: quale usare per cosa
La partizione è il contenitore, il file system è il modo in cui i file vengono organizzati dentro. Sono due decisioni diverse.
| File system | Dove nasce | Usalo per | Attenzione |
|---|---|---|---|
| ext4 | Linux | Il sistema Linux, sempre | Windows non lo legge senza software aggiuntivo |
| btrfs | Linux | Snapshot, compressione, dischi grandi | Più complesso, RAID 5/6 ancora sconsigliato |
| XFS | Linux | Server, file molto grandi | Non si può rimpicciolire |
| NTFS | Windows | Il disco di Windows, dischi esterni usati con Windows | macOS lo legge ma non ci scrive |
| exFAT | Multipiattaforma | Chiavette e dischi esterni condivisi | Nessun journaling: staccare male corrompe |
| APFS | macOS | Il disco del Mac | Illeggibile fuori da macOS |
| FAT32 | Ovunque | Solo la partizione EFI e vecchie chiavette | File singoli massimo 4 GB |
Le due scelte che risolvono il 90% dei casi:
- Disco interno con Linux → ext4. È noioso, maturo e non ti tradisce. btrfs vale la pena solo se vuoi davvero gli snapshot.
- Disco esterno che gira tra Windows, Mac e Linux → exFAT. È l'unico che scrivono tutti senza installare nulla. Smontalo sempre in modo pulito prima di staccarlo: senza journaling, un'estrazione a caldo durante una scrittura può rendere illeggibile l'intero volume.
Il limite dei 4 GB di FAT32 è il motivo per cui una chiavetta si rifiuta di accettare un film o un'immagine ISO: non è piena, è il file system.
Uno schema sensato per Linux
Ecco la parte dove circolano più consigli obsoleti. Uno schema che funziona bene su un desktop o portatile moderno:
| Partizione | Dimensione | File system |
|---|---|---|
EFI (/boot/efi) | 512 MB – 1 GB | FAT32 |
root (/) | Tutto il resto | ext4 |
| swap | file di swap, non partizione | — |
Sì, è quasi tutto in una partizione sola. Ed è la scelta giusta per la maggior parte delle persone.
Serve una partizione separata per /home?
Quasi mai, se sei un utente normale. Il vantaggio classico — reinstallo il sistema e tengo i dati — funziona, ma ha un costo concreto: devi decidere oggi quanto spazio dare a ciascuna. Sbagli la stima, e ti ritrovi con / pieno e 300 GB liberi in /home che non puoi usare. Riempire / su Linux significa aggiornamenti che falliscono e servizi che si fermano.
Ha senso se: reinstalli spesso il sistema per lavoro, oppure vuoi tenere /home cifrata separatamente, oppure /home sta su un disco fisico diverso (SSD per il sistema, HDD grande per i dati). Altrimenti, una partizione sola e un backup fatto bene ti coprono meglio.
Serve ancora la swap?
Sì, ma non come partizione dedicata. Un file di swap fa esattamente lo stesso lavoro e puoi ridimensionarlo in trenta secondi, invece di dover ripartizionare il disco.
sudo fallocate -l 4G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
free -h # verifica
Quanta: con 16 GB di RAM o più bastano 2–4 GB, giusto per non far intervenire il killer della memoria quando qualcosa sfugge di mano. L'unica eccezione seria è l'ibernazione, che richiede swap almeno pari alla RAM perché deve scriverci dentro tutta la memoria.
Il chmod 600 non è decorativo: il file di swap contiene pezzi di memoria del sistema e non deve essere leggibile da chiunque. Sui permessi c'è la guida a chmod.
Montare i dischi e /etc/fstab
Su Linux una partizione non ha una lettera: viene montata in una directory. Manualmente:
sudo mkdir -p /mnt/dati
sudo mount /dev/sdb1 /mnt/dati
Al riavvio sparisce. Per renderlo permanente si scrive in /etc/fstab, e qui serve una regola: usa sempre l'UUID, mai /dev/sdb1. I nomi dei dispositivi dipendono dall'ordine di rilevamento e cambiano quando aggiungi un disco o cambi porta; l'UUID resta attaccato al file system.
sudo blkid /dev/sdb1
# /dev/sdb1: UUID="a1b2c3d4-..." TYPE="ext4"
Riga da aggiungere in /etc/fstab:
UUID=a1b2c3d4-e5f6-7890-abcd-ef1234567890 /mnt/dati ext4 defaults,nofail 0 2
nofail è l'opzione che ti salva. Senza, se quel disco un giorno non c'è — esterno scollegato, cavo allentato — l'avvio si ferma in modalità di emergenza. Con nofail, il sistema salta il montaggio e parte lo stesso.
Prova sempre prima di riavviare:
sudo mount -a # monta tutto ciò che è in fstab: se sbaglia, sbaglia adesso
Un fstab rotto è una delle poche cose che rendono un server irraggiungibile dopo un riavvio, ed è un errore fastidioso da correggere su un VPS senza accesso alla console. Il montaggio è gestito da systemd, che genera unità a partire da fstab: per questo un errore lì blocca l'avvio anziché essere ignorato.
Ridimensionare senza perdere dati
Si può fare, e nella maggior parte dei casi va bene. Ma è l'operazione in cui si perdono più dati, quindi in ordine:
- Fai un backup. Non "ho quasi tutto su Drive": un backup vero, verificato. Vale la pena rileggere come fare un backup prima di partire.
- Non ridimensionare una partizione montata. Avvia da una live USB (GParted Live, o l'ISO di Ubuntu in modalità prova).
- Controlla il file system prima, altrimenti stai spostando dati già danneggiati:
sudo e2fsck -f /dev/sda2 - Ridimensiona, con GParted se preferisci l'interfaccia grafica, o da riga di comando.
- Non interrompere. Uno spostamento di partizione su un disco grande può durare ore. Se sei su un portatile, tienilo attaccato alla corrente.
Le insidie principali:
- Crescere è quasi sempre sicuro, rimpicciolire no. Ridurre significa spostare dati reali, ed è lì che le cose vanno storte.
- Puoi estendere una partizione solo verso spazio non allocato adiacente. Se lo spazio libero è dall'altra parte del disco, serve prima spostare qualcosa — cioè l'operazione più rischiosa.
- XFS non si rimpicciolisce, in nessun modo. Unica via: copiare, ricreare, ripristinare.
- Un'interruzione di corrente a metà di uno spostamento è il classico caso in cui il backup smette di essere teoria.
Se il disco è già pieno di dati importanti e serve solo più spazio, spesso la soluzione onesta è aggiungere un secondo disco e montarlo, non ridisegnare la geometria di quello che hai.
Errori comuni
- Formattare la partizione sbagliata.
/dev/sdbnon è sempre lo stesso disco tra un riavvio e l'altro. Prima di ogni comando distruttivo,lsblk -fe conferma con la dimensione e l'etichetta, non con la lettera. ddcon l'output invertito. Scrivere una ISO sul disco di sistema invece che sulla chiavetta cancella tutto in silenzio, senza chiedere conferma. Rileggi la riga due volte prima di premere invio.- Cancellare la partizione EFI perché "è piccola e non so cosa sia". Il computer non si avvia più.
- Cancellare la partizione di ripristino del produttore durante un dual boot: recuperabile, ma perdi il ripristino di fabbrica.
- Convertire MBR in GPT su un disco con Windows installato senza poi sistemare l'avvio: il sistema non parte più.
Il denominatore comune è sempre lo stesso: nessuno di questi errori dà problemi se hai un backup recente. Se ti stai avvicinando ora alla riga di comando, i comandi Linux essenziali sono il punto di partenza.
In sintesi
Una partizione è una fetta di disco trattata come un disco a sé. La tabella dice dove stanno le fette, il file system decide come sono organizzati i file dentro.
Usa GPT, sempre, su qualsiasi macchina moderna: nessun limite di 2 TB, 128 partizioni e una copia di riserva della tabella.
Le scelte pratiche di file system sono due: ext4 per il disco Linux, exFAT per i dischi esterni che devono girare tra sistemi diversi.
Non complicare lo schema di partizionamento: EFI più una root sola vanno benissimo, /home separata serve raramente, e la swap oggi è un file — che puoi cambiare in trenta secondi invece di ripartizionare.
In /etc/fstab usa l'UUID, aggiungi nofail e prova con mount -a prima di riavviare.
E la regola che vale più di tutte le altre messe insieme: backup prima di toccare le partizioni. Il ridimensionamento funziona quasi sempre — ed è proprio quel "quasi" il motivo per cui il backup esiste.
Se stai partizionando per installare Linux, il passo precedente è scegliere la distribuzione: lo trovi in cos'è una distro Linux. Se invece stai pensando a più dischi per la ridondanza, leggi prima RAID: cosa significa — e in particolare la parte sul perché non sostituisce un backup.