首页 帮助中心 通过lsblk命令查看Linux镜像的相关信息
通过lsblk命令查看Linux镜像的相关信息
时间 : 2025-04-17 11:11:28 编辑 : 华纳云 阅读量 : 49

Linux世界纷繁复杂,从高耸的内核代码到底层的磁盘分区,一切都隐藏在平静的命令行之下。而lsblk,一个看似简单的命令,正是揭开这层神秘面纱的钥匙。lsblk顾名思义,是一个用于列出系统中块设备的命令。块设备是Linux存储架构的核心,它涵盖了硬盘、SSD、USB设备、CD-ROM甚至是某些虚拟镜像文件所映射的逻辑设备。

常见的块设备:

/dev/sda, /dev/sdb:物理磁盘或虚拟磁盘

/dev/loopX:镜像文件映射成的虚拟块设备

/dev/nvmeXn1:NVMe 固态硬盘

/dev/mapper/:LVM 或加密设备映射路径

基本用法预览:简单不代表简单

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   30G  0 part /
└─sda3   8:3    0    9G  0 part [SWAP]
loop0    7:0    0  640M  1 loop /mnt/image

你没看错!loop0就是一个挂载的镜像文件。

镜像的真相:loop设备背后的世界

我们经常使用 .iso、.img 或 .qcow2 等格式的镜像文件用于测试系统、搭建虚拟环境或备份数据。通过 losetup 工具将这些镜像绑定到 loop 设备后,就能用 lsblk 看到其结构。

示例:挂载镜像并查看结构

创建一个测试镜像(模拟安装镜像):

dd if=/dev/zero of=test.img bs=1M count=100
mkfs.ext4 test.img

绑定 loop 设备:

sudo losetup /dev/loop10 test.img

查看结构:

lsblk

输出示例:

loop10 7:10 0 100M 0 loop

此时你看到的 /dev/loop10 就是 test.img 镜像映射出的块设备。进一步格式化和挂载即可操作文件系统。

深入分析:默认的 lsblk 输出较为简洁,我们可以通过 -f、-o 参数输出更多细节。

添加文件系统信息:

lsblk -f

输出:

NAME   FSTYPE LABEL UUID                                 MOUNTPOINT
loop10 ext4         2f58c1a3-2a49-4d08-8244-14f82f15274f  /mnt/test

自定义字段输出:

lsblk -o NAME,TYPE,SIZE,RO,MOUNTPOINT,FSTYPE,UUID,MODEL

这样可以看到每个设备的挂载点、只读状态、文件系统类型等,特别适用于分析镜像内容。

镜像嵌套结构:多分区镜像也能识别

对于更复杂的镜像,比如包含多个分区的 .img 文件,lsblk 同样适用。

示例:

使用 fdisk 为 test.img 创建多个分区。

重新绑定 loop 并使用分区探测:

losetup -P /dev/loop10 test.img

其中 -P 表示自动探测分区,生成 /dev/loop10p1, /dev/loop10p2 等。

查看结构:

lsblk /dev/loop10

输出:

NAME        MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
loop10       7:10   0  200M  0 loop
├─loop10p1 259:1    0   50M  0 part /mnt/p1
└─loop10p2 259:2    0  150M  0 part /mnt/p2

lsblk 自动解析了镜像的分区结构,无需挂载就能看到全貌。

调试虚拟机镜像,KVM 用户常用 .qcow2 虚拟磁盘镜像,同样可通过 qemu-nbd 映射为块设备后用 lsblk 分析:

modprobe nbd
qemu-nbd --connect=/dev/nbd0 disk.qcow2
lsblk /dev/nbd0

支持复杂的分区结构、LVM 等信息显示。

lsblk虽然不是专门为镜像设计的工具,但它用一种“非侵入式”的方式帮助我们快速掌握块设备的结构,尤其是在处理镜像文件时尤为重要。无论是日常排查挂载问题,还是深入剖析虚拟机镜像结构,lsblk都是系统管理员和开发者不可或缺的利器。

华纳云 推荐文章
Linux镜像中的环境变量应该如何配置 如何有效利用CI管理Linux镜像,省时又省心? 服务器Linux系统中如何使用Chroot环境进行镜像维护 服务器镜像崩了别慌!教你在Linux系统中恢复损坏的镜像 在Linux环境下如何利用LVM管理镜像 Linux镜像和ISO文件有什么关系 如何解决Linux服务器镜像启动失败的问题 简单教你使用rsync命令备份Linux服务器镜像 Linux镜像存放在云端和本地各有什么优缺点 详解Linux日志如何提升系统性能和安全性
活动
客服咨询
7*24小时技术支持
技术支持
渠道支持