Linux Commands · 6 min read · Dec 24, 2025
Tutorial sul comando Linux lsblk per principianti (8 esempi)

In Linux, i dispositivi a blocchi sono file speciali che si riferiscono o rappresentano un dispositivo (che potrebbe essere qualsiasi cosa, da un disco rigido a un’unità USB). Quindi, naturalmente, ci sono strumenti da riga di comando che ti aiutano con il lavoro relativo ai dispositivi a blocchi. Una di queste utilità è lsblk.
In questo tutorial, discuteremo di questo comando utilizzando alcuni esempi facili da comprendere. Ma prima di farlo, vale la pena menzionare che tutti gli esempi menzionati qui sono stati testati su una macchina Ubuntu 18.04 LTS.
Comando lsblk di Linux
Il comando lsblk in Linux elenca i dispositivi a blocchi. Di seguito è riportata la sua sintassi:
lsblk [opzioni] [dispositivo...]Ecco come la pagina man dello strumento lo spiega:
**** lsblk elenca informazioni su tutti i dispositivi a blocchi disponibili o specificati. Il comando lsblk legge il filesystem sysfs e il db udev per raccogliere informazioni. Se il db udev non è disponibile o lsblk è compilato senza supporto udev, allora cerca di leggere LABEL, UUID e tipi di filesystem dal dispositivo a blocchi. In questo caso sono necessari i permessi di root.
Il comando stampa tutti i dispositivi a blocchi (eccetto i dischi RAM) in un formato ad albero per impostazione predefinita. Usa lsblk --help per ottenere un elenco di tutte le colonne disponibili.
L'output predefinito, così come l'output predefinito da opzioni come --fs e --topology, è soggetto a modifiche. Quindi, ogni volta che è possibile, dovresti evitare di utilizzare output predefiniti nei tuoi script. Definisci sempre esplicitamente le colonne attese utilizzando --output columns-list in ambienti dove è richiesto un output stabile.
Nota che lsblk potrebbe essere eseguito in un momento in cui udev non ha ancora tutte le informazioni sui dispositivi recentemente aggiunti o modificati. In questo caso è consigliabile utilizzare udevadm settle prima di lsblk per sincronizzarsi con udevDi seguito sono riportati alcuni esempi in stile Q&A che dovrebbero darti un’idea migliore di come funziona lsblk.
D1. Come utilizzare il comando lsblk?
L’uso di base è piuttosto semplice: basta eseguire ‘lsblk’ senza alcuna opzione.
lsblkDi seguito è riportato l’output che questo comando ha prodotto sul mio sistema:

La prima colonna elenca i nomi dei dispositivi, seguita dai corrispondenti numeri di dispositivo maggiori e minori, se il dispositivo è rimovibile o meno (1 nel caso lo sia), la dimensione del dispositivo, se il dispositivo è in sola lettura o meno, il tipo di dispositivo (disco, partizione, ecc.) e infine il punto di montaggio del dispositivo (se disponibile).
D2. Come fare in modo che lsblk visualizzi anche i dispositivi vuoti?
Per impostazione predefinita, il comando lsblk visualizza solo i dispositivi non vuoti. Tuttavia, puoi forzare lo strumento a visualizzare anche i dispositivi vuoti. Per questo, usa l’opzione da riga di comando -a.
lsblk -aAd esempio, nel mio caso, il comando sopra ha prodotto il seguente output:

La riga ‘loop 13’ è la nuova aggiunta in questo caso.
D3. Come fare in modo che lsblk stampi informazioni sulla dimensione in byte?
Per impostazione predefinita, lsblk stampa informazioni sulla dimensione in un formato leggibile dall’uomo. Anche se questo è buono, ci sono momenti in cui potresti aver bisogno della dimensione in byte. La cosa buona è che c’è un’opzione (-b) che fa questo.
lsblk -bDi seguito è riportato un esempio di output:

Quindi puoi vedere che la colonna ‘Size’ ora contiene voci in byte.
D4. Come fare in modo che lsblk stampi il modello di zona per ogni dispositivo?
Questo puoi farlo utilizzando l’opzione da riga di comando -z.
lsblk -zAd esempio, ecco l’output che il comando sopra menzionato ha prodotto sul mio sistema:
NAME ZONED
loop0 none
loop1 none
loop2 none
loop3 none
loop4 none
loop5 none
loop6 none
loop7 none
loop8 none
loop9 none
loop10 none
loop11 none
loop12 none
sda none
??sda1 none
??sda2 none
??sda3 none
??sda4 none
??sda5 none
??sda6 none
??sda7 none
??sda8 none
sdb none
??sdb1 none
??sdb2 noneD5. Come fare in modo che lsblk salti le voci per i dispositivi schiavi?
Per questo, devi usare l’opzione da riga di comando -d, che dice a lsblk di non stampare informazioni relative ai dispositivi holder o schiavi.
lsblk -dEcco un esempio di output:
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
loop0 7:0 0 3.3M 1 loop /snap/gnome-system-monitor/36
loop1 7:1 0 86.6M 1 loop /snap/core/4486
loop2 7:2 0 140M 1 loop /snap/gnome-3-26-1604/59
loop3 7:3 0 21M 1 loop /snap/gnome-logs/25
loop4 7:4 0 87M 1 loop /snap/core/5145
loop5 7:5 0 1.6M 1 loop /snap/gnome-calculator/154
loop6 7:6 0 2.3M 1 loop /snap/gnome-calculator/180
loop7 7:7 0 14.5M 1 loop /snap/gnome-logs/37
loop8 7:8 0 3.7M 1 loop /snap/gnome-system-monitor/51
loop9 7:9 0 12.2M 1 loop /snap/gnome-characters/69
loop10 7:10 0 13M 1 loop /snap/gnome-characters/103
loop11 7:11 0 140.9M 1 loop /snap/gnome-3-26-1604/70
loop12 7:12 0 86.9M 1 loop /snap/core/4917
sda 8:0 0 931.5G 0 disk
sdb 8:16 1 14.7G 0 diskSe confronti con l’output prodotto nei casi precedenti, puoi vedere che non vengono prodotte voci slave nell’output in questo caso.
D6. Come fare in modo che lsblk utilizzi caratteri ascii per il formato ad albero?
Per impostazione predefinita, il tipo di formato ad albero utilizzato da lsblk potrebbe non essere user-friendly in molti casi. Ad esempio, copiare e incollare potrebbe causare problemi di formattazione. Quindi, se vuoi, puoi forzare lo strumento a utilizzare caratteri ascii per il formato ad albero, qualcosa che puoi fare utilizzando l’opzione da riga di comando -i.
lsblk -iEcco un esempio di output:
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
loop0 7:0 0 3.3M 1 loop /snap/gnome-system-monitor/36
loop1 7:1 0 86.6M 1 loop /snap/core/4486
loop2 7:2 0 140M 1 loop /snap/gnome-3-26-1604/59
loop3 7:3 0 21M 1 loop /snap/gnome-logs/25
loop4 7:4 0 87M 1 loop /snap/core/5145
loop5 7:5 0 1.6M 1 loop /snap/gnome-calculator/154
loop6 7:6 0 2.3M 1 loop /snap/gnome-calculator/180
loop7 7:7 0 14.5M 1 loop /snap/gnome-logs/37
loop8 7:8 0 3.7M 1 loop /snap/gnome-system-monitor/51
loop9 7:9 0 12.2M 1 loop /snap/gnome-characters/69
loop10 7:10 0 13M 1 loop /snap/gnome-characters/103
loop11 7:11 0 140.9M 1 loop /snap/gnome-3-26-1604/70
loop12 7:12 0 86.9M 1 loop /snap/core/4917
sda 8:0 0 931.5G 0 disk
|-sda1 8:1 0 100M 0 part
|-sda2 8:2 0 52.5G 0 part
|-sda3 8:3 0 293G 0 part
|-sda4 8:4 0 1K 0 part
|-sda5 8:5 0 93.4G 0 part
|-sda6 8:6 0 293G 0 part
|-sda7 8:7 0 3.9G 0 part
`-sda8 8:8 0 195.8G 0 part /
sdb 8:16 1 14.7G 0 disk
|-sdb1 8:17 1 200M 0 part
`-sdb2 8:18 1 14.5G 0 partQuindi puoi vedere che l’output (vedi le voci sda) ora contiene caratteri ASCII nel formato ad albero.
D7. Come fare in modo che lsblk visualizzi informazioni su proprietario, gruppo e modalità del dispositivo?
Questo può essere ottenuto utilizzando l’opzione da riga di comando -m.
lsblk -mEcco l’output che il comando sopra menzionato ha prodotto nel mio caso:

D8. Come fare in modo che lsblk produca colonne selezionate?
Se vuoi, puoi anche indirizzare lsblk a produrre solo colonne selezionate, qualcosa che puoi fare utilizzando l’opzione da riga di comando -o (che richiede di passare un elenco di colonne separate da virgole che desideri visualizzare).
Ad esempio:
lsblk -o NAME,SIZEIl comando sopra menzionato ha prodotto il seguente output:

Conclusione
Se il tuo lavoro su Linux comporta l’accesso a informazioni relative ai dispositivi a blocchi, allora lsblk è un comando che devi conoscere. Qui, in questo tutorial, abbiamo discusso di diverse opzioni da riga di comando che questo strumento offre. Per saperne di più su lsblk, vai alla sua pagina man.
Ricevi i nuovi post nella tua casella di posta.
Nessuno spam. Disiscriviti in qualsiasi momento.