Linux的lsblk

Linux的lsblk

lsblk

注意:不同版本的参数可能不太一样

作用

lsblk(list block devices)命令用于列出系统中所有块设备(如硬盘、分区、U 盘、光盘等)的信息,包括设备名称、大小、挂载点等,以树状结构显示,是查看存储设备结构的常用工具。

格式

bash 复制代码
lsblk [参数] [设备]
# 输出
NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda      8:0    0  100G  0 disk 
├─sda1   8:1    0   50G  0 part /
└─sda2   8:2    0   50G  0 part /data
sdb      8:16   1   16G  0 disk 
└─sdb1   8:17   1   16G  0 part /mnt/usb

参数

-a, --all:显示所有设备,包括空设备、未挂载分区等。

-b, --bytes:SIZE 列以字节为单位显示(默认是 K/M/G 可读格式)。

-d, --nodeps:不显示从属设备(即不显示分区或逻辑卷,只显示顶层磁盘)。

-D, --discard:显示设备的 discard(TRIM)能力信息。

-e, --exclude :排除指定主设备号的设备(默认排除 RAM 磁盘)。

-I, --include :仅显示指定主设备号的设备。

-f, --fs:输出文件系统信息(UUID、类型、标签、挂载点)。

-h, --help:显示帮助信息(此条)。

-i, --ascii:使用 ASCII 字符绘制树形结构(而不是 Unicode 连线)。

-m, --perms:输出权限信息(所有者、组、模式)。

-l, --list:使用列表格式输出(非树形,每行一个设备)。

-n, --noheadings:不打印列标题。

-o, --output :自定义输出列(如 NAME,SIZE,TYPE)。

-p, --paths:打印完整设备路径(如 /dev/sda1)。

-P, --pairs:使用 key="value" 格式输出。

-r, --raw:使用原始格式输出(无转义字符,默认树形时禁用连线)。

-s, --inverse:显示反向依赖(例如从分区反查所属磁盘)。

-t, --topology:输出设备的拓扑信息(I/O 对齐、最优传输大小等)。

-S, --scsi:输出关于 SCSI 设备的信息(包括 SATA、SAS、USB 等底层为 SCSI 的设备)。

-h, --help:显示帮助信息并退出(重复项,同上)。

-V, --version:输出版本信息并退出。

输出字段

NAME:设备名称

MAJ:MIN:主设备号和次设备号

RM:是否为可移动设备(1表示是,0表示否)

SIZE:设备大小

RO:是否为只读设备(1表示是,0表示否)

TYPE:设备类型(disk, part, rom等)

  • disk:物理磁盘(如 /dev/sda、/dev/nvme0n1),即实际的硬盘、SSD 或虚拟磁盘。
  • part:磁盘上的分区(如 /dev/sda1、/dev/sdb2),是磁盘的一部分,通常包含文件系统或 LVM 物理卷等。
  • lvm:LVM 逻辑卷(如 /dev/centos/root),是 LVM 管理的块设备,位于卷组之上,可动态调整大小。
  • rom:只读存储设备(如光驱 /dev/sr0、虚拟 CD-ROM),通常是光盘或 ISO 镜像挂载的设备。
  • loop:回环设备(如 /dev/loop0),由 losetup 创建,用于挂载镜像文件(如 .iso、.img)或 snap 应用。
  • crypt:加密设备(如 LUKS 容器),需要通过解密才能访问数据。

MOUNTPOINT:设备的挂载点

常用命令

lsblk

默认树形显示所有块设备(不含空设备、不含文件系统详情)

bash 复制代码
[root@localhost ~]# lsblk
NAME            MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda               8:0    0   40G  0 disk
├─sda1            8:1    0    1G  0 part /boot
└─sda2            8:2    0   39G  0 part
  ├─centos-root 253:0    0 35.1G  0 lvm  /
  └─centos-swap 253:1    0  3.9G  0 lvm  [SWAP]
sdb               8:16   0   20G  0 disk
└─sdb1            8:17   0   20G  0 part
sr0              11:0    1  4.4G  0 rom

centos-root:存放操作系统、应用程序、用户数据等(相当于 Windows 的 C 盘)。需要较大空间且需持久化。

centos-swap:充当虚拟内存,当物理内存不足时,内核会将不常用的内存页交换到 swap 空间。swap 不需要文件系统,也不能存放用户文件,且对读写模式有特殊要求(随机读写)。

lsblk -f

显示文件系统信息(UUID、FSTYPE、LABEL、MOUNTPOINT)

bash 复制代码
[root@localhost ~]# lsblk -f
NAME            FSTYPE      LABEL           UUID                                   MOUNTPOINT
sda
├─sda1          xfs                         ee19857f-178b-45a8-a930-e3aceb5cc4df   /boot
└─sda2          LVM2_member                 d7ZNsh-f3oe-mTMh-nIR3-CxFI-qa8L-phAMhj
  ├─centos-root xfs                         313d96df-aa31-4335-beb1-fb52686a5afd   /
  └─centos-swap swap                        5dbb0d1c-3af2-4a07-a328-ad1558b45b6e   [SWAP]
sdb
└─sdb1          ext4                        30d9f00f-96c2-4db0-9616-de6c54f32f39
sr0             iso9660     CentOS 7 x86_64 2020-11-04-11-36-43-00

lsblk -a

显示所有设备,包括空设备(如未分区的磁盘、未挂载的分区)

bash 复制代码
NAME            MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda               8:0    0   40G  0 disk
├─sda1            8:1    0    1G  0 part /boot
└─sda2            8:2    0   39G  0 part
  ├─centos-root 253:0    0 35.1G  0 lvm  /
  └─centos-swap 253:1    0  3.9G  0 lvm  [SWAP]
sdb               8:16   0   20G  0 disk
└─sdb1            8:17   0   20G  0 part
sr0              11:0    1  4.4G  0 rom

lsblk -V

查看版本

bash 复制代码
lsblk from util-linux 2.23.2
相关推荐
orion572 小时前
Missing Semester Class1:course overview and introduction of shell
linux
SkyWalking中文站7 小时前
认识 Horizon UI · 6/17:Trace 探索器
运维·监控·自动化运维
用户120487221619 小时前
Linux驱动编译与加载
linux·嵌入式
程序员老赵10 小时前
服务器文件不想 SFTP 上传?Docker 跑个 File Browser,浏览器就能管理
服务器·docker·开源
火车叼位10 小时前
写给初级开发者:SSL、SSH、HTTPS 与证书体系全解析
运维
vivo互联网技术14 小时前
从 10 分钟到 1 秒:ES 深度分页任意跳页的三轮优化实战
服务器·数据库·redis·elasticsearch·深度分页
用户8055336980315 小时前
Input 子系统架构:Core、Handler、Driver 三层是怎么协作的
linux·嵌入式
用户8055336980315 小时前
RK-Forge外设系列开篇 - 把板子从「能启动」变成「能用」:Ethernet/SPI/MMC 三个纯接线外设
linux·github·嵌入式
小猿姐1 天前
唯品会大规模数据库云原生实践:基于 KubeBlocks 管理数千实例的统一运维之路
运维·elasticsearch·云原生