在 Linux 中,lsblk
命令用于以树状结构列出所有块设备(如磁盘、分区、LVM 逻辑卷等)的信息。以下是 lsblk
输出的详细解释和示例:
1. 示例输出
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
sda 8:0 0 238.5G 0 disk
├─sda1 8:1 0 512M 0 part /boot/efi
├─sda2 8:2 0 1G 0 part /boot
└─sda3 8:3 0 237G 0 part └─vg-root 254:0 0 237G 0 lvm /
sdb 8:16 1 14.9G 0 disk
└─sdb1 8:17 1 14.9G 0 part /media/usb
2. 各列含义解释
(1) NAME
- 含义:块设备的名称。
- 格式:
- 磁盘:
sdX
(如sda
、sdb
)。 - 分区:
sdXN
(如sda1
、sdb2
)。 - LVM 逻辑卷:
vg-lv
(如vg-root
)。
- 磁盘:
- 注意:
sr0
表示光驱设备。loopX
表示虚拟块设备(如挂载的镜像文件)。
(2) MAJ:MIN
- 含义:设备的主设备号(Major)和次设备号(Minor)。
- 示例:
8:0
表示主设备号 8(SCSI/SATA 设备),次设备号 0(第一块磁盘)。 - 用途:内核通过这两个编号唯一标识设备。
(3) RM
(Removable)
- 含义:设备是否为可移动存储。
- 取值:
1
:可移动设备(如 U 盘、SD 卡)。0
:固定设备(如内置硬盘)。
(4) SIZE
- 含义:设备或分区的容量。
- 单位:自动转换为易读格式(如 G=GiB, T=TiB)。
- 示例:
238.5G
表示 238.5 GiB。
(5) RO
(Read-Only)
- 含义:设备是否为只读。
- 取值:
1
:只读(如某些虚拟设备或写保护的 U 盘)。0
:可读写(大多数设备)。
(6) TYPE
- 含义:设备的类型。
- 常见值:
disk
:物理磁盘。part
:分区。lvm
:LVM 逻辑卷。rom
:只读设备(如光驱)。loop
:虚拟块设备(如挂载的 ISO 文件)。
(7) MOUNTPOINTS
- 含义:设备的挂载点(即文件系统中的访问路径)。
- 示例:
/
:根分区。/boot
:引导分区。/media/usb
:U 盘挂载点。
- 注意:
- 未挂载的分区此列为空。
- 如果分区有多个挂载点(如绑定挂载),会显示多个路径。
3. 示例输出解析
(1) 磁盘 sda
- 基本信息:
- 容量
238.5G
,固定设备(RM=0
),可读写(RO=0
)。
- 容量
- 子设备:
sda1
:512M 的 EFI 分区,挂载在/boot/efi
。sda2
:1G 的引导分区,挂载在/boot
。sda3
:237G 的 LVM 物理卷,属于逻辑卷vg-root
,挂载在/
。
(2) 磁盘 sdb
- 基本信息:
- 容量
14.9G
,可移动设备(RM=1
),可读写(RO=0
)。
- 容量
- 子设备:
sdb1
:整个磁盘的单个分区,挂载在/media/usb
。
4. 常见场景说明
(1) 未挂载的分区
sdc 8:32 0 1.8T 0 disk
└─sdc1 8:33 0 1.8T 0 part
sdc1
分区未挂载,因此MOUNTPOINTS
列为空。
(2) LVM 逻辑卷
sda3 8:3 0 237G 0 part
└─vg-root 254:0 0 237G 0 lvm /
sda3
是 LVM 物理卷,属于逻辑卷vg-root
,挂载为根分区。
(3) 光驱设备
sr0 11:0 1 1024M 0 rom
sr0
是光驱设备(TYPE=rom
),未挂载。
5. 常用选项
命令 | 作用 |
---|---|
lsblk -f | 显示文件系统类型(如 ext4、vfat) |
lsblk -o +UUID | 显示分区的 UUID |
lsblk -d | 仅显示磁盘,不显示分区 |
lsblk -p | 显示完整设备路径(如 /dev/sda1 ) |
6. 注意事项
- 权限问题:普通用户可能无法看到某些设备信息,需用
sudo
。 - 虚拟设备:
loop
设备通常用于挂载镜像文件(如 ISO)。 - LVM 逻辑卷:需要 LVM 工具(如
lvs
、vgs
)查看更详细信息。
通过 lsblk
,您可以快速了解系统的存储设备布局,是管理磁盘、分区和挂载的基础工具。