LSBLK(8)

NAME
lsblk - list block devices

SYNOPSIS
lsblk [options]

lsblk [options] device...

DESCRIPTION
lsblk lists information about all or the specified block devices. The lsblk command reads the sysfs filesystem to gather information.

The command prints all block devices (except RAM disks) in a tree-like format by default. Use lsblk --help to get a list of all available columns.

The default output as well as default output from options like --topology and --fs is subject to change, so whenever possible you should avoid using default outputs in your scripts. Always explicitly define expected columns by --output columns in environment where a stable output is required.

OPTIONS

-a, --all
    lsblk does not list empty devices by default. This option disables this restriction.

-b, --bytes
    Print the SIZE column in bytes rather than in human-readable format.

-d, --nodeps
    Don't print device holders or slaves. For example "lsblk --nodeps /dev/sda" prints information about the sda device only.

-D, --discard
    Print information about the discard (TRIM, UNMAP) capabilities for each device.

-e, --exclude list
    Exclude the devices specified by a comma-separated list of major device numbers. Note that RAM disks (major=1) are excluded by default. The filter is applied to the top-level devices only.

-I, --include list
    Include devices specified by a comma-separated list of major device numbers only. The filter is applied to the top-level devices.

-f, --fs
    Output info about filesystems. This option is equivalent to "-o NAME,FSTYPE,LABEL,MOUNTPOINT". The authoritative information about filesystems and raids is provided by the blkid(8) command.

-h, --help
    Print a help text and exit.

-i, --ascii
    Use ASCII characters for tree formatting.

-m, --perms
    Output info about device owner, group and mode. This option is equivalent to "-o NAME,SIZE,OWNER,GROUP,MODE".

-l, --list
    Use the list output format.

-n, --noheadings
    Do not print a header line.

-o, --output list
    Specify which output columns to print. Use --help to get a list of all supported columns.

-P, --pairs
    Use key="value" output format. All potentially unsafe characters are hex-escaped (\x<code>).

-r, --raw
    Use the raw output format. All potentially unsafe characters are hex-escaped (\x<code>) in NAME, KNAME, LABEL, PARTLABEL and MOUNTPOINT columns.

-s, --inverse
    Print dependencies in inverse order.

-t, --topology
    Output info about block device topology. This option is equivalent to "-o NAME,ALIGNMENT,MIN-IO,OPT-IO,PHY-SEC,LOG-SEC,ROTA,SCHED,RQ-SIZE".

-V, --version
    Output version information and exit.

NOTES
For partitions, some information (e.g. queue attributes) is inherited from the parent device.

The lsblk needs to be able to lookup sysfs path by major:minor, which is done done by using /sys/dev/block. The block sysfs appeared in kernel 2.6.27 (October 2008). In case of problem with new enough kernel check that CONFIG_SYSFS was enabled at the time of kernel build.

AUTHORS
Milan Broz <mbroz@redhat.com>
Karel Zak <kzak@redhat.com>

ENVIRONMENT

LIBMOUNT_DEBUG=0xffff
    enables debug output.

SEE ALSO
findmnt(8), blkid(8), ls(1)

AVAILABILITY
The lsblk command is part of the util-linux package and is available from ftp://ftp.kernel.org/pub/linux/utils/util-linux/.