lsblk -f可直接显示分区的文件系统类型、UUID和挂载点,是查看磁盘挂载结构最直观的方式;输出含NAME、FSTYPE、LABEL、UUID、MOUNTPOINT五列,LUKS加密层无UUID,映射卷才有,[SWAP]表示交换分区。

直接运行 lsblk -f 就能同时看到分区的文件系统类型、UUID 和当前挂载点,是快速掌握磁盘挂载结构最直观的方式。
理解 lsblk -f 的输出字段含义
执行后输出通常包含五列:NAME(设备名)、FSTYPE(文件系统类型)、LABEL(卷标)、UUID(唯一标识符)、MOUNTPOINT(挂载路径)。例如:
sda
├─sda1 vfat C2A5-2E9F C2A5-2E9F /boot/efi
├─sda2 ext4 — 3e7b5a0a-... /boot
└─sda3 crypto_LUKS — — —
└─sda3_crypt
├─vg-root ext4 — 1a2b3c4d-... /
└─vg-swap swap — 9f8e7d6c-... [SWAP]
注意:LUKS 加密层本身不带 UUID,其下映射出的逻辑卷(如 vg-root)才有;[SWAP] 表示该设备被用作交换空间,不是常规挂载点。
精准筛选需要的信息
如果只想看 UUID 和挂载关系,避免干扰项,可用自定义字段输出:
-
lsblk -o NAME,UUID,MOUNTPOINT—— 只显示设备名、UUID、挂载点三列 -
lsblk -o NAME,FSTYPE,UUID,MOUNTPOINT -f—— 显式启用文件系统信息(与-f效果一致,但更清晰) -
lsblk -J -o NAME,FSTYPE,UUID,MOUNTPOINT—— 输出 JSON 格式,适合脚本解析
处理 UUID 显示为空或权限受限的情况
某些加密设备、未格式化分区或权限受限设备,在普通用户下运行 lsblk -f 可能 UUID 为空或缺失。这时建议:
- 加
sudo提权再试:sudo lsblk -f - 改用
sudo blkid—— 更底层、更全面,连未挂载或未识别的已格式化分区也能列出 UUID - 验证某 UUID 是否有效:用
readlink -f /dev/disk/by-uuid/你的-uuid看是否指向真实设备节点
结合其他命令交叉验证更可靠
单靠 lsblk -f 有时不够,尤其在排查挂载异常或配置不一致时:
- 查
/etc/fstab中实际使用的 UUID:grep UUID /etc/fstab - 按 UUID 反查挂载位置:
findmnt -D UUID=1a2b3c4d-5e6f-7a8b-9c0d-1e2f3a4b5c6d - 确认设备是否被内核识别为指定文件系统:
sudo udevadm info --name=/dev/sda2 | grep ID_FS_UUID


















