首页/系统/信创系统运维速查/块设备识别:lsblk 与 blkid
服务与运维65 条

块设备识别:lsblk 与 blkid

接盘、加盘、迁移挂载前先认设备:lsblk -f 显示树形结构与文件系统/UUID,blkid 给出 UUID 与类型;用 UUID 写 fstab 避免设备名漂移。

信创系统运维速查系统更新于 2026-10-13

lsblk 与 blkid 是什么

lsblk 以树形结构列出块设备、分区、容量、挂载点与文件系统,blkid 直接读取设备上的超级块给出 UUID、LABEL 与类型。接新盘、做迁移、写 fstab 之前,先用这两条命令把设备认清楚。它们属于 util-linux,所有 Linux 发行版都自带,麒麟与 UOS、openEuler 同样如此。

基本信息

适用平台Linux 全发行版(util-linux)
树形列表lsblk -f
查看 UUIDblkid,或 lsblk -o NAME,UUID
自定义列lsblk -o NAME,SIZE,TYPE,FSTYPE,MOUNTPOINT,UUID
重读分区表partprobe /dev/sdX

典型使用场景

  • 服务器加盘后确认新设备名与容量,避免写错目标
  • 写 fstab 时取 UUID,防止重启后设备名漂移
  • 迁移或换盘前核对分区结构与文件系统类型
  • 排查挂载失败:确认文件系统类型与是否存在分区表
  • 阵列与 LVM 场景下区分物理盘、分区与逻辑卷

识别命令

识别命令
lsblk                              # 树形结构,快速看盘与分区
lsblk -f                           # 附带文件系统、UUID 与挂载点
lsblk -o NAME,SIZE,TYPE,FSTYPE,MOUNTPOINT,UUID
blkid                              # 列出所有块设备的 UUID 与类型
blkid /dev/sdb1                    # 查询指定设备
partprobe /dev/sdb                 # 分区表变更后让内核重读
findmnt /data                      # 反查某挂载点对应的设备

输出怎么读

字段含义注意点
NAME设备名,缩进表示层级设备名顺序可能变,写配置用 UUID
TYPEdisk、part、lvm、raid 等FSTYPE 为空时看这里判断用途
FSTYPE文件系统类型空值多为未格式化或属于阵列与 LVM
MOUNTPOINT当前挂载点有值表示已挂载,操作前确认无业务
UUID设备唯一标识写 fstab 与备份脚本的首选标识
云主机与热插拔场景下设备名顺序会变化,配置挂载、阵列成员与备份脚本时优先使用 UUID 或 LABEL,文件系统也有 LABEL 可读性更好。
格式化、分区与写盘之前,必须用 lsblk 二次核对设备名:这类操作不可逆,写错设备等于直接毁掉上面的数据。

新盘上架流程

  • 用 lsblk 与 blkid 确认设备名、容量与是否已有分区
  • 分区后执行 partprobe 让内核重读分区表
  • 格式化前再次核对设备名,避免选错目标盘
  • 写入 fstab 时使用 UUID 并配合 _netdev 与 nofail
  • mount -a 验证通过后纳入备份与监控范围

易错点

  • fstab 直接写设备名:换盘或加盘后编号变化会导致开机挂载失败甚至进入紧急模式,应改用 UUID
  • 在已挂载的设备上执行 partprobe 或改分区表:可能返回设备忙,先卸载或确认没有写入再操作
  • 把 FSTYPE 为空判断成没有分区或未格式化:阵列成员与 LVM 物理卷显示为空属正常
  • 只看 lsblk 简洁输出就动手:容量接近的盘容易混淆,配合序列号与挂载点信息一起确认
  • 跳过分区直接格式化整盘:后续扩容、镜像与引导管理都会受限,按规划先分区再格式化

数据来源与参考

  • man 8 lsblk(util-linux)
  • man 8 blkid
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌