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 udev

Di 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.

lsblk

Di seguito è riportato l’output che questo comando ha prodotto sul mio sistema:

Come utilizzare il comando lsblk

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 -a

Ad esempio, nel mio caso, il comando sopra ha prodotto il seguente output:

Come fare in modo che lsblk visualizzi anche i dispositivi vuoti

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 -b

Di seguito è riportato un esempio di output:

Come fare in modo che lsblk stampi informazioni sulla dimensione in byte

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 -z

Ad 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 none

D5. 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 -d

Ecco 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 disk

Se 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 -i

Ecco 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 part

Quindi 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 -m

Ecco l’output che il comando sopra menzionato ha prodotto nel mio caso:

Come fare in modo che lsblk visualizzi informazioni su proprietario, gruppo e modalità del dispositivo

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,SIZE

Il comando sopra menzionato ha prodotto il seguente output:

Come fare in modo che lsblk produca colonne selezionate

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.

Share: X/Twitter LinkedIn

Ricevi i nuovi post nella tua casella di posta.

Nessuno spam. Disiscriviti in qualsiasi momento.