当前位置:首页 > 行业动态 > 正文

什么是lsblk命令?它在Linux系统中有何用途?

lsblk 是一个 Linux 命令,用于列出所有可用的块设备,包括文件系统、磁盘分区等。它以树状结构显示信息,方便用户查看设备之间的层次关系。

在现代计算机系统中,磁盘和分区的管理是系统管理员日常工作的重要组成部分。lsblk(list block devices)是一个强大的命令行工具,用于显示系统中所有块设备的详细信息,本文将详细介绍lsblk的使用方法、输出结果以及如何通过该工具进行故障排查和系统管理。

什么是lsblk命令?它在Linux系统中有何用途?  第1张

什么是 `lsblk`?

lsblk 是一个Linux命令,用于列出系统中所有的块设备及其挂载点,它能够以树状结构展示设备和分区的关系,帮助用户快速了解系统的存储布局。

基本用法

lsblk

执行上述命令后,终端会输出类似以下的信息:

NAME        MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda           8:0    0   50G  0 disk 
├─sda1        8:1    0    1G  0 part /boot
├─sda2        8:2    0   20G  0 part /
└─sda3        8:3    0   29G  0 part [SWAP]

常用选项

lsblk 提供了多种选项,以便用户根据需要过滤和格式化输出结果,以下是一些常用的选项:

-a, --all:显示所有设备,包括那些没有挂载的设备。

-d, --nodeps:不显示子设备,只显示顶级设备。

-f, --fs:显示文件系统类型。

-m, --merge-paths:合并路径名以避免重复显示。

-n, --noheadings:不显示标题行。

-o, --output:自定义输出列。lsblk -o NAME,SIZE,MOUNTPOINT 只显示设备名称、大小和挂载点。

-r, --raw:使用原始设备名称而不是符号链接。

-S, --sort:按指定列排序。lsblk -S SIZE 按设备大小排序。

-t, --tree:以树状结构显示设备信息(默认启用)。

示例

显示所有设备及文件系统类型

lsblk -a -f

输出示例:

NAME        MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT     FSTYPE
sda           8:0    0   50G  0 disk             
├─sda1        8:1    0    1G  0 part /boot        ext4
├─sda2        8:2    0   20G  0 part /            ext4
└─sda3        8:3    0   29G  0 part [SWAP]       swap

仅显示顶级设备

lsblk -d

输出示例:

NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda      8:0    0    50G  0 disk

自定义输出格式

lsblk -o NAME,SIZE,MOUNTPOINT,FSTYPE

输出示例:

NAME    SIZE MOUNTPOINT FSTYPE
sda       50G            
├─sda1    1G /boot       ext4
├─sda2   20G /          ext4
└─sda3   29G [SWAP]      swap

实际应用案例

检查新硬盘是否被识别

当系统添加了一块新的硬盘时,可以使用lsblk 来检查硬盘是否被系统识别。

sudo lsblk

如果新硬盘被识别,它会出现在输出列表中,如果没有,可能需要检查硬件连接或驱动程序。

查找特定文件系统所在的设备

假设你需要查找 ext4 文件系统所在的设备,可以使用以下命令:

sudo lsblk -f | grep ext4

输出示例:

├─sda1   1G   /boot ext4 rw,relatime,data=ordered  0 0
├─sda2  20G    /     ext4 rw,relatime,data=ordered  0 0

常见问题解答 (FAQs)

Q1:lsblk 显示的设备名称是什么格式?

lsblk 显示的设备名称通常是系统分配的设备名称,如sda,sdb 等,这些名称遵循一定的命名规则:

sd 表示 SCSI 磁盘(SCSI disk)。

hd 表示 IDE 磁盘(IDE disk)。

nvme 表示 NVMe 磁盘。

mmcblk 表示 eMMC(嵌入式多媒体卡)。

Q2: 如何区分物理设备和逻辑分区?

lsblk 的输出中,物理设备通常显示为顶级设备,而逻辑分区则作为其子项显示。sda 是物理设备,而sda1,sda2 等是逻辑分区,通过这种树状结构,可以清晰地看到设备和分区的层次关系。

lsblk 是一个功能强大且灵活的工具,适用于各种系统管理任务,无论是查看存储布局、排查存储问题还是监控系统状态,lsblk 都能提供有价值的信息,通过掌握其基本用法和常用选项,系统管理员可以更高效地管理和监控计算机系统。

小伙伴们,上文介绍了“lsblk”的内容,你了解清楚吗?希望对你有所帮助,任何问题可以给我留言,让我们下期再见吧。

0