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
相关推荐
专注API从业者1 小时前
告别手动翻页!基于淘宝商品接口 + Open Claw 实现自动化选品与实时监控(附完整 Python 代码)
大数据·运维·数据库·自动化
拦路雨g1 小时前
VMware centos磁盘容量扩容
linux·运维·centos
休息一下…1 小时前
能用的Docker镜像
运维·docker·容器
Tellmeulovewho1 小时前
阿里云Linux云服务器部署Python项目——从零到生产环境的完整实战指南
linux·服务器·阿里云
Promise微笑1 小时前
智慧电力运维:局放仪分类、选型策略与深度应用实践
运维·分类·数据挖掘
我星期八休息1 小时前
Linux系统编程— Mmap实现⽂件LRU缓存
linux·运维·服务器·数据库·mysql·缓存
jiuri_12151 小时前
Linux 服务器 Codex + DeepSeek 配置
linux·运维·服务器
__Witheart__1 小时前
关于 uname 查看的内核版本号的后缀
android·linux·ubuntu·rockchip
爱吃生蚝的于勒2 小时前
QT开发第三章——常用控件
linux·服务器·开发语言·前端·javascript·c++·qt