Comando mkfs in Linux: creare un file system e verificare il dispositivo

mkfs crea un nuovo file system su un dispositivo o una partizione. Può sovrascrivere quello esistente e rendere inaccessibili i dati: prima di eseguirlo occorre identificare il bersaglio, verificarne l'utilizzo e preparare un backup ripristinabile.

Il comando generico è un front-end, cioè un programma che richiama il creatore specifico del formato. Il manuale di util-linux considera deprecato questo front-end e privilegia strumenti come mkfs.ext4 e mkfs.xfs. Creare una partizione, creare il file system al suo interno e montarlo sono tre operazioni diverse.

Sintassi e scelta del formato

sudo mkfs -t filesystem_type device

Questa è una sintassi descrittiva, non un comando pronto all'uso: filesystem_type e device sono segnaposto. Il tipo deve essere supportato dallo strumento installato e dal sistema che userà il volume. Confronta man mkfs e il manuale del creatore specifico; non presumere che tutti i formati accettino le stesse opzioni.

Per ext4, mkfs.ext4 richiama mke2fs selezionando il formato ext4. Per XFS viene usato un programma diverso. Anche impostazioni predefinite, funzionalità del file system e compatibilità con i sistemi che lo monteranno vanno verificate prima della creazione.

Identificare il bersaglio e leggere i risultati

Controllare il file system esistente

lsblk -f

Confronta nome del dispositivo, formato, UUID e punti di montaggio. UUID significa Universally Unique Identifier ed è un identificatore del file system; non è il nome del dispositivo. Le colonne effettive dipendono dalla versione di lsblk. Per la capacità e l'identità dell'unità confronta anche la vista normale di lsblk e l'inventario del sistema: il solo nome /dev/sdb non identifica in modo permanente un disco.

Verifica anche con findmnt i montaggi del dispositivo e dei volumi che lo utilizzano. L'assenza di un punto di montaggio non prova che il dispositivo sia vuoto o inutilizzato: può far parte di swap, cifratura, RAID o LVM, il gestore dei volumi logici. Non formattare direttamente un componente di un insieme senza averne compreso la struttura. Consulta la guida a mount se devi soltanto collegare un file system già presente.

Riconoscere la sintassi di creazione

Il comando seguente è distruttivo. /dev/device_name è un segnaposto: non sostituirlo con un dispositivo reale prima di aver completato verifica, manutenzione e backup. sudo concede privilegi, ma non controlla la correttezza del bersaglio.

sudo mkfs.ext4 /dev/device_name

Quando il bersaglio è una partizione appena predisposta, si usa il percorso della partizione verificata, non quello del disco intero per semplice somiglianza. Per esempio /dev/sdb e /dev/sdb1 hanno ruoli diversi. Formattare un disco intero può sovrascriverne la struttura esistente.

Leggere gli identificatori dopo la creazione

sudo blkid /dev/device_name

Dopo il completamento controlla il tipo riconosciuto e l'UUID effettivo con blkid. Una firma riconosciuta non è una verifica completa dell'integrità del file system né dei dati precedenti.

Interpretare la sequenza di formattazione

Queste tre righe descrivono una sola sequenza su una partizione già scelta e verificata. Non sono un test innocuo e non vanno ripetute dopo il comando di creazione precedente: ogni nuova creazione può sovrascrivere il file system. Il nome /dev/sdb1 è soltanto un esempio.

lsblk -f
sudo mkfs.ext4 /dev/sdb1
sudo blkid /dev/sdb1

Prima della seconda riga il dispositivo deve essere identificato, fuori uso per le applicazioni e non montato, con backup verificato su un altro supporto. La prima riga da sola non impone questi requisiti. Se la creazione segnala un errore, fermati e verifica il motivo: non aggiungere opzioni di forzatura per superare una protezione e non presumere che il mancato completamento escluda scritture parziali.

Solo dopo una creazione conclusa correttamente, l'ultima query può mostrare un risultato con questa struttura illustrativa:

/dev/sdb1: UUID="..." TYPE="ext4"

I puntini sostituiscono un valore reale e non devono essere copiati nelle impostazioni. Nella normale creazione di un nuovo ext4 viene generato un UUID; le opzioni specifiche possono influenzarlo. Controlla sempre il valore risultante e le eventuali configurazioni che facevano riferimento al vecchio UUID, per esempio /etc/fstab, prima di attenderti un montaggio automatico.

La creazione riuscita non certifica la recuperabilità dei dati precedenti e non è una procedura di cancellazione sicura. Se devi recuperare un volume o montarne uno esistente, fermati prima di usare mkfs. Creare di nuovo il file system non risolve un problema di montaggio conservando i file.

Opzioni e strumenti principali

Opzione o strumento Significato
-t tipo Nel front-end mkfs seleziona il formato e il creatore specifico da richiamare.
mkfs.ext4 Crea un file system ext4 tramite mke2fs.
mkfs.xfs Crea un file system XFS con opzioni e requisiti propri.
-L etichetta Imposta l'etichetta nei creatori che la supportano, tra cui mkfs.ext4 e mkfs.xfs; controlla i rispettivi limiti.

L'etichetta è un nome del volume e non sostituisce l'identificazione del dispositivo. Non trasferire automaticamente un'opzione da un formato all'altro: anche una lettera uguale può avere un significato diverso. La sola scelta del formato non verifica che il dispositivo sia quello giusto o che i sistemi destinatari supportino tutte le funzionalità abilitate.

Controlli prima di formattare

  1. Identifica host, disco e partizione, confrontando struttura, capacità e inventario. Verifica che non si tratti del sistema operativo o dell'unica copia di backup.
  2. Controlla file system, montaggi e altri utilizzi del dispositivo. Pianifica l'arresto delle applicazioni e la manutenzione dei livelli di storage coinvolti; non procedere su un volume in uso.
  3. Prepara e verifica una copia ripristinabile su un supporto diverso. Conservare il nome del volume o l'UUID non equivale a salvare i dati.
  4. Leggi il manuale dello strumento specifico e verifica formato, opzioni e compatibilità. Dopo la creazione controlla tipo e identificatori prima di configurare il montaggio.

Non esiste un semplice comando generale per annullare la formattazione. Alcuni strumenti offrono funzioni particolari di recupero o registrazione, ma non sostituiscono un backup verificato. Se formatti il dispositivo sbagliato, evita altre scritture e valuta il recupero prima di tentare una nuova creazione o un montaggio in scrittura.

Domande frequenti

mkfs crea anche la partizione?

No. Crea un file system nel bersaglio selezionato. Scrivere la tabella e creare le partizioni sono attività separate, eseguite con strumenti come fdisk o parted. La presenza di una partizione non implica che contenga già ext4 o XFS.

Documentazione di riferimento

Il manuale mkfs di util-linux spiega il ruolo del front-end. Il manuale mke2fs di e2fsprogs descrive la creazione di ext4, le etichette e gli UUID; il manuale mkfs.xfs documenta le opzioni per XFS.