Comando blkid in Linux: trovare UUID e tipo di file system

blkid legge informazioni identificative registrate nei dispositivi a blocchi, come tipo di file system, UUID ed etichetta. Serve a verificare gli identificatori usati nelle impostazioni di montaggio; non modifica l'UUID e non formatta il dispositivo.

UUID significa Universally Unique Identifier, identificatore univoco universale. È meno sensibile del percorso del dispositivo ai cambiamenti nell'ordine di collegamento, ma una copia del file system può duplicarlo. TYPE indica il tipo di contenuto riconosciuto, per esempio ext4 o swap; LABEL è l'etichetta assegnata.

Sintassi e preparazione

blkid [opzioni] [dispositivo]

Le parentesi descrivono parti facoltative e non vanno digitate. Gli esempi riguardano il comando di util-linux: verifica opzioni e comportamento con man blkid e blkid --help del sistema. Prima della query identifica il percorso con lsblk e la sua gerarchia dei dispositivi.

Negli esempi sudo consente la lettura del dispositivo secondo le autorizzazioni della macchina. Una query senza privilegi può restituire informazioni di cache non verificate: una risposta vuota o vecchia non dimostra che il file system sia assente. Per una panoramica leggibile dei dispositivi puoi iniziare da lsblk -f.

Esempi di interrogazione

Elencare i dispositivi riconoscibili

sudo blkid

Mostra gli attributi dei dispositivi riconosciuti che il comando riesce a esaminare. Non considerare questo elenco una prova che ogni disco sia stato identificato: permessi, cache e firme non riconosciute o ambigue possono influenzare il risultato.

Interrogare una partizione specifica

sudo blkid /dev/sdb1

Sostituisci /dev/sdb1 con il percorso effettivo della partizione da controllare. Confronta host, dimensione e montaggi prima di usare l'identificatore in una configurazione. Il nome qui usato è un esempio, non un disco da cercare obbligatoriamente.

Estrarre il valore UUID

sudo blkid -s UUID -o value /dev/sdb1

-s UUID seleziona l'attributo e -o value ne stampa il valore senza il nome del campo. Se è presente, puoi confrontarlo con quello riportato dalla query completa. Se l'output è vuoto, non inserirlo in un file di configurazione: controlla il risultato completo, gli errori e i privilegi.

Il filtro -s non modifica il criterio del codice di uscita: anche un esito 0 non garantisce che proprio il tag UUID selezionato abbia prodotto un valore. Negli script verifica sia l'esito della query sia la presenza del valore richiesto; non trasformare automaticamente un output vuoto in una nuova impostazione.

Leggere UUID, TYPE e LABEL

Un altro esempio di query su una partizione è:

sudo blkid /dev/sda2

Output illustrativo: il seguente UUID è un valore dimostrativo, non un identificatore da copiare nella tua macchina.

/dev/sda2: UUID="11111111-2222-3333-4444-555555555555" TYPE="ext4"

Il percorso prima dei due punti è il dispositivo interrogato. UUID identifica qui il file system e TYPE="ext4" ne indica il formato. L'assenza di LABEL in questa riga non implica che manchino anche il file system o i dati.

Gli UUID sono spesso usati in /etc/fstab, che descrive i montaggi configurati. Creare un nuovo file system può cambiarne l'UUID; clonarne uno può produrre lo stesso UUID su due dispositivi. Prima di riutilizzare una riga di configurazione confronta identificatore, percorso reale e relazione di montaggio. Questa guida descrive la consultazione: non richiede di modificare fstab.

Opzioni principali

Opzione o formato Funzione in util-linux
-s tag Seleziona un attributo come UUID o TYPE.
-o formato Sceglie il formato; value mostra soltanto i valori.
-L etichetta Cerca un dispositivo con l'etichetta del file system indicata.
-U UUID Cerca un dispositivo con l'UUID del file system indicato.
-p Esegue una lettura a basso livello delle firme, senza usare la cache.

-L e -U sono ricerche di un dispositivo, non certificazioni di unicità dell'etichetta o dell'UUID. Se sospetti duplicati, controlla la configurazione e i dispositivi coinvolti prima di qualsiasi scrittura. Le etichette sono nomi assegnati e possono anch'esse essere ripetute.

La modalità -p è una verifica delle firme, non una riparazione. Può usare nomi di tag diversi dalla query normale, per esempio PART_ENTRY_UUID invece di PARTUUID. Non sostituire un formato all'altro in uno script senza adattarne la lettura.

Risultati mancanti o ambigui

Un output vuoto con un utente ordinario non prova che il dispositivo sia libero. Il comando normale può anche omettere dispositivi con firme in conflitto. In modalità a basso livello l'esito 8 segnala un rilevamento ambiguo: fermati a chiarire la situazione, senza cancellare firme per far sparire il messaggio.

Il codice 2 può indicare un identificatore non trovato oppure l'impossibilità di riconoscere o ricavare informazioni dal dispositivo; il codice 4 segnala errori d'uso o altri errori. Leggi anche i messaggi diagnostici. Nessuno di questi risultati, da solo, autorizza una formattazione o conferma che un backup esista.

Prima di montare o modificare un dispositivo controlla nuovamente dimensione, montaggi e identità della macchina. Usa findmnt per i montaggi già presenti e non affidarti soltanto all'UUID quando hai appena collegato una copia di un disco.

Domande frequenti

UUID e PARTUUID sono la stessa cosa?

No. UUID identifica normalmente il file system o un altro contenuto del dispositivo; PARTUUID identifica la partizione nella tabella delle partizioni. Appartengono a livelli diversi: controlla quale identificatore richiede la configurazione e non scambiarli solo perché entrambi sono stringhe identificative.

Documentazione di riferimento

Il manuale blkid di util-linux documenta cache, opzioni di ricerca, lettura a basso livello e codici di uscita. Verifica le differenze con la versione installata prima di automatizzare la consultazione.