LSBLK(8) Systemadministration LSBLK(8)

lsblk - lista blockenheter

lsblk [flaggor] [enhet...]

lsblk listar information om alla tillgängliga eller de angivna blockenheterna. Kommandot lsblk läser filsystemet sysfs och udev db för att samla information. Om udev db inte är tillgänglig eller om lsblk är kompilerat utan udev-stöd försöker det läsa LABELs, UUIDs och filsystemtyper från blockenheten. I det här fallet krävs root-behörighet.

Som standard skriver kommandot ut alla blockenheter (utom RAM-diskar) i ett trädliknande format. Samma enhet kan upprepas i trädet om den är relaterad till andra enheter. Flaggan --merge rekommenderas för mer komplicerade konfigurationer för att samla grupper av enheter och beskriva komplexa N:M-relationer.

Den trädliknande utmatningen (eller children[]-arrayen i JSON-utmatningen) aktiveras endast om NAME-kolumnen finns i utmatningen eller när kommandoradsflaggan --tree används. Se även --nodeps och --list för att styra trädformateringen.

Standardutdata, liksom standardutdata från flaggor som --fs och --topology, kan komma att ändras. Så när det är möjligt bör du undvika att använda standardutdata i dina skript. Definiera alltid förväntade kolumner explicit genom att använda --output columns-list och --list i miljöer där en stabil utdata krävs.

Använd lsblk --list-columns för att få en lista över alla tillgängliga kolumner.

Observera att lsblk kan utföras vid en tidpunkt då udev ännu inte har all information om nyligen tillagda eller ändrade enheter. I det här fallet rekommenderas att du använder udevadm settle före lsblk för att synkronisera med udev.

Förhållandet mellan blockenheter och filsystem är inte alltid ett till ett. Filsystemet kan använda fler blockenheter, eller så kan samma filsystem vara tillgängligt via fler sökvägar. Detta är anledningen till att lsblk tillhandahåller kolumnerna MOUNTPOINT och MOUNTPOINTS (pl.). Kolumnen MOUNTPOINT visar bara en monteringspunkt (vanligtvis den senast monterade instansen av filsystemet), och kolumnen MOUNTPOINTS visar med cell med flera rader alla monteringspunkter som är associerade med enheten.

-A, --noempty

Skriv inte ut tomma enheter.

-a, --all

Inaktivera alla inbyggda filter och lista alla tomma enheter och RAM-disk-enheter också.

-b, --bytes

Print sizes in bytes rather than in human-readable form.

By default, sizes are shown in units that are powers of 1024 bytes. The formal abbreviations for these units (KiB, MiB, GiB, ...) are further shortened to just their first letter: K, M, G, ....

-H, --list-columns

List the columns that can be specified with the --output option. Can be used with --json or --raw to get the list in a machine-readable format.

-D, --discard

Skriv ut information om borttagningsfunktionerna (TRIM, UNMAP) för varje enhet.

-d, --nodeps

Skriv inte ut innehavarenheter eller slavar. Exempel: lsblk --nodeps /dev/sda skriver endast ut information om enheten sda.

-E, --dedup column

Använd kolumn som en avdupliceringsnyckel för att avduplicera utdataträdet. Om nyckeln inte är tillgänglig för enheten, eller om enheten är en partition och föräldrars enhet för hela disken har samma nyckel, skrivs enheten alltid ut.

Det vanliga användningsområdet är att avdubbla utdata på systemets enheter med flera vägar, t.ex. genom -E WWN.

-e, --exclude lista

Uteslut de enheter som anges i den kommaseparerade listan med större enhetsnummer. Observera att RAM-diskar (major=1) utesluts som standard om --all inte anges. Filtret tillämpas endast på enheterna på den översta nivån. Detta kan vara förvirrande för --list-utdataformat där enheternas hierarki inte är uppenbar.

-f, --fs

Skriv ut information om filsystem. Denna flagga är likvärdigt med -o NAME,FSTYPE,FSVER,LABEL,UUID,FSAVAIL,FSUSE%,MOUNTPOINTS. Den auktoritativa informationen om filsystem och raider tillhandahålls av kommandot blkid(8).

--hyperlink[=when]

Print paths as terminal hyperlinks. The optional when argument can be always, never, or auto. If the argument is omitted, it defaults to auto, which means that hyperlinks will only be used when the output goes to a terminal.

-I, --include lista

Inkludera enheter som specificeras av den kommaseparerade listan med större enhetsnummer. Filtret tillämpas endast på enheterna på den översta nivån. Detta kan vara förvirrande för utdataformatet --list där enheternas hierarki inte är uppenbar.

-i, --ascii

Använd ASCII-tecken för trädformatering.

-J, --json

Använd JSON-utdataformat. Vi rekommenderar starkt att du använder --output och även --tree om det behövs. Observera att children[] endast används om NAME-kolumnen eller --tree används.

-l, --list

Producerar utdata i form av en lista. Utdata ger ingen information om relationer mellan enheter och sedan version 2.34 skrivs varje enhet ut endast en gång om --pairs eller --raw inte anges (de tolkningsbara utdata bibehålls på ett bakåtkompatibelt sätt).

-M, --merge

Gruppera föräldrar till underträd för att ge mer läsbar utdata för RAID och Multi-path-enheter. Den trädliknande utmatningen är nödvändig.

-m, --perms

Skriv ut information om enhetens ägare, grupp och läge. Denna flagga är likvärdigt med -o NAME,SIZE,OWNER,GROUP,MODE.

-N, --nvme

Utmatar endast information om NVMe-enheter.

-v, --virtio

Utmatar endast information om virtio-enheter.

-n, --noheadings

Skriv inte ut någon rubrikrad.

-o, --output lista

Ange vilka utdatakolumner som ska skrivas ut. Använd --list-columns för att få en lista över alla kolumner som stöds. Kolumnerna kan påverka trädliknande utdata. Standardinställningen är att använda tree för kolumnen 'NAME' (se även --tree).

Standardlistan med kolumner kan utökas om lista anges i formatet +list (t.ex. lsblk -o +UUID).

-O, --output-all

Skriv ut alla tillgängliga kolumner.

-P, --pairs

Producerar utdata i form av nyckel="värde"-par. Utdataraderna är fortfarande ordnade efter beroenden. Alla potentiellt osäkra värde-tecken är hexadecalerade (\x<code>). Se även flaggan --shell.

-p, --paths

Skriv ut fullständiga enhetssökvägar.

-Q, --filter expression

Print only the devices that meet the conditions specified by expression. The filter is assessed prior to lsblk collecting data for all output columns. Only the necessary data for the lazy evaluation of the expression is retrieved from the system. This approach can enhance performance when compared to post-filtering, as commonly done by tools such as grep(1).

This feature is EXPERIMENTAL. See also scols-filter(5).

For example, to exclude sda and sdb, but print everything else ('!~' is a negative regular-expression matching operator):

lsblk --filter 'NAME !~ "sd[ab]"'

--highlight expression

Colorize lines matching expression.

This feature is EXPERIMENTAL. See also scols-filter(5).

--ct name[:parameter[:function]]

Define a custom counter. Custom counters are printed after the standard output. The name is the custom name of the counter, the optional parameter is the name of the column to be used for the counter, and the optional function specifies the aggregation function. Supported functions are: count, min, max, sum. The default function is count. If parameter is not specified, then the counter counts the number of lines.

This feature is EXPERIMENTAL. See also --ct-filter.

For example, --ct MyCounter:SIZE:sum reports the total of the SIZE values. To report the number of SATA disks, one can use:

lsblk --ct-filter 'TYPE=="disk" && TRAN=="sata"' \
      --ct "Number of SATA devices"

--ct-filter expression

Define a restriction for the next counter.

This feature is EXPERIMENTAL. See also --ct and scols-filter(5).

For example, to aggregate sizes by device type:

lsblk --ct-filter 'TYPE=="part"' --ct Partitions:SIZE:sum \
      --ct-filter 'TYPE=="disk"' --ct WholeDisks:SIZE:sum

-r, --raw

Producerar utdata i råformat. Utdataraderna är fortfarande ordnade efter beroenden. Alla potentiellt osäkra tecken är hexadecalerade (\x<code>) i kolumnerna NAME, KNAME, LABEL, PARTLABEL och MOUNTPOINT.

-S, --scsi

Utmatar endast information om SCSI-enheter. Alla partitioner, slavar och innehavarenheter ignoreras.

-s, --inverse

Skriv ut beroenden i omvänd ordning. Om utskriften --list begärs är raderna fortfarande ordnade efter beroenden.

-T, --tree[=column]

Tvinga fram ett trädliknande utdataformat. Om column anges skrivs ett träd ut i kolumnen. Standard är NAME-kolumnen.

-t, --topology

Utmatar information om blockenhetens topologi. Denna flagga är likvärdigt med

-o NAMN,INRIKTNING,MIN-IO,OPT-IO,PHY-SEC,LOG-SEC,ROTA,SCHED,RQ-SIZE,RA,WSAME.

-w, --width nummer

Anger utmatningsbredd som ett antal tecken. Standardvärdet är antalet terminalkolumner, och om det inte körs på en terminal begränsas inte utmatningsbredden alls som standard. Den här flaggan tvingar också lsblk att anta att terminalens kontrolltecken och osäkra tecken inte är tillåtna. Det förväntade användningsfallet är t.ex. när lsblk används av kommandot watch(1).

-x, --sort column

Sortera utdatarader efter kolumn. Denna flagga aktiverar --list utdataformat som standard. Det är möjligt att använda flaggan --tree för att tvinga fram trädliknande utdata och då sorteras trädgrenarna efter kolumn.

-y, --shell

Kolumnnamnet ändras så att det endast innehåller tecken som är tillåtna för identifiering av skalvariabler, t.ex. MIN_IO och FSUSE_PCT i stället för MIN-IO och FSUSE%. Detta kan t.ex. användas med --pairs. Observera att den här funktionen aktiverades automatiskt för --pairs i version 2.37, men på grund av kompatibilitetsproblem är det nu nödvändigt att begära detta beteende med --shell.

-z, --zoned

Skriv ut zonrelaterad information för varje enhet.

--sysroot katalog

Samlar in data för en annan Linux-instans än den instans från vilken kommandot lsblk utfärdades. Den angivna katalogen är systemroten för den Linux-instans som ska inspekteras. De verkliga enhetsnoderna i målkatalogen kan ersättas av textfiler med udev-attribut.

--properties-by lista

Den här flaggan anger de metoder som lsblk använder för att samla in information om filsystem och partitionstabeller. Listan är en kommaseparerad lista med metodnamn. Standardinställningen är "file,udev,blkid". De metoder som stöds är:

udev

Läser data från udev DB. Om det inte lyckas går den vidare till nästa sonderingsmetod.

blkid

Läser data direkt från enheten med hjälp av libblkid. Om det inte lyckas går den vidare till nästa probningsmetod.

fil

Läser data från en fil. Den här metoden används endast om flaggan --sysroot har angetts. Denna metod stoppar alltid probing om den används.

ingen

Sondar inte. Denna metod stoppar alltid sonderingen.

-h, --help

Visa hjälptext och avsluta.

-V, --version

Visa version och avsluta.

0

lyckades

1

misslyckande

32

ingen av de angivna enheterna hittades

64

vissa specificerade enheter hittades, andra hittades inte

Färgläggningen av utdata implementeras av terminal-colors.d(5) funktionalitet. Implicit färgläggning kan inaktiveras med en tom fil

/etc/terminal-colors.d/lsblk.disable

för kommandot lsblk eller för alla verktyg med

/etc/terminal-colors.d/disable

Sedan version 2.41 stöds även miljövariabeln $NO_COLOR som inaktiverar färgläggning av utdata om den inte uttryckligen aktiveras med en kommandoradsflagga.

Den användarspecifika $XDG_CONFIG_HOME/terminal-colors.d eller $HOME/.config/terminal-colors.d åsidosätter den globala inställningen.

Observera att färgläggningen av utdata kan vara aktiverad som standard, och i så fall behöver inte terminal-colors.d-katalogerna finnas ännu.

LSBLK_DEBUG=all

aktiverar lsblk felsökningsutdata.

LIBBLKID_DEBUG=all

aktiverar libblkid felsökningsutdata.

LIBMOUNT_DEBUG=all

aktiverar libmount felsökningsutdata.

LIBSMARTCOLS_DEBUG=all

aktiverar libsmartcols felsökningsutdata.

LIBSMARTCOLS_DEBUG_PADDING=on

använda synliga utfyllnadstecken.

LSBLK_COLUMNS=

specifies a comma-separated list of output columns to print. All columns listed by --list-columns can be used.

För partitioner ärvs viss information (t.ex. köattribut) från den överordnade enheten.

Kommandot lsblk måste kunna slå upp varje blockenhet med major- och minor-nummer, vilket görs med hjälp av /sys/dev/block. Denna sysfs-blockkatalog dök upp i kärnan 2.6.27 (oktober 2008). Om du får problem med en tillräckligt ny kärna, kontrollera att CONFIG_SYSFS var aktiverat när kärnan byggdes.

Milan Broz <gmazyland@gmail.com>, Karel Zak <kzak@redhat.com>

blkid(8), findmnt(8) ls(1), scols-filter(5)

För felrapporter, använd felhanteraren https://github.com/util-linux/util-linux/issues.

Kommandot lsblk ingår i paketet util-linux som kan hämtas från Linux Kernel Archive https://www.kernel.org/pub/linux/utils/util-linux/.

2026-05-18 util-linux 2.42.1