lsblk 与 blkid 是什么
lsblk 以树形结构列出块设备、分区、容量、挂载点与文件系统,blkid 直接读取设备上的超级块给出 UUID、LABEL 与类型。接新盘、做迁移、写 fstab 之前,先用这两条命令把设备认清楚。它们属于 util-linux,所有 Linux 发行版都自带,麒麟与 UOS、openEuler 同样如此。
基本信息
| 适用平台 | Linux 全发行版(util-linux) |
|---|---|
| 树形列表 | lsblk -f |
| 查看 UUID | blkid,或 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 |
| TYPE | disk、part、lvm、raid 等 | FSTYPE 为空时看这里判断用途 |
| FSTYPE | 文件系统类型 | 空值多为未格式化或属于阵列与 LVM |
| MOUNTPOINT | 当前挂载点 | 有值表示已挂载,操作前确认无业务 |
| UUID | 设备唯一标识 | 写 fstab 与备份脚本的首选标识 |
云主机与热插拔场景下设备名顺序会变化,配置挂载、阵列成员与备份脚本时优先使用 UUID 或 LABEL,文件系统也有 LABEL 可读性更好。
格式化、分区与写盘之前,必须用 lsblk 二次核对设备名:这类操作不可逆,写错设备等于直接毁掉上面的数据。
新盘上架流程
- 用 lsblk 与 blkid 确认设备名、容量与是否已有分区
- 分区后执行 partprobe 让内核重读分区表
- 格式化前再次核对设备名,避免选错目标盘
- 写入 fstab 时使用 UUID 并配合 _netdev 与 nofail
- mount -a 验证通过后纳入备份与监控范围