登录
首页 >  文章 >  linux

blkid命令用途及使用教程

时间:2025-07-02 09:22:43 139浏览 收藏

想要高效管理Linux系统中的存储设备吗?`blkid`命令绝对是你的得力助手!本文将深入解析`blkid`命令的强大功能与实用技巧,助你轻松识别硬盘、分区、USB存储设备等块设备的属性。通过本文,你将掌握如何使用`blkid`命令查看文件系统类型、UUID(唯一标识符)、卷标(LABEL)等关键信息,并了解如何通过UUID或LABEL定位设备。更有fstab中使用UUID挂载设备、脚本中自动识别设备路径等典型应用场景,以及常见问题解答,让你快速上手,提升Linux系统存储设备管理效率。掌握`blkid`命令,让你的Linux系统管理更上一层楼!

linux显示块设备信息是什么-blkid 命令使用与实例

Linux blkid 命令


blkid 命令简介

blkid 是 Linux 系统中用来识别和展示块设备属性的工具。它能够显示硬盘、分区以及 USB 存储设备等块设备的文件系统类型、UUID(唯一标识符)、卷标(LABEL)以及其他相关属性。

核心功能

  • 识别设备所使用的文件系统类型
  • 获取设备的唯一标识 UUID
  • 查看设备的标签信息 LABEL
  • 展示设备容量及其他属性

基本命令格式

blkid [参数] [设备路径...]

常用参数说明

参数描述
`-c `指定缓存文件路径,默认为 /etc/blkid.tab
`-g`清理并更新缓存数据
`-o `定义输出样式(支持 full, value, list, device, udev)
`-p`执行底层超级块检测,跳过缓存读取
`-s `仅显示特定字段内容(例如 UUID, TYPE, LABEL)
`-U `通过 UUID 查询对应设备名称
`-L `通过 LABEL 查询对应的设备路径
`-i`显示 I/O 限制相关信息
`-h`查看帮助文档
`-V`显示程序版本号

操作案例

1. 显示所有存储设备详细信息

示例

sudo blkid
结果样例:

/dev/sda1: UUID="5a3a1e7b-1a2b-4c3d-8e9f-0a1b2c3d4e5f" TYPE="ext4" 
/dev/sda2: UUID="6b4c5d6e-7f8g-9h0i-1j2k-3l4m5n6o7p8q" TYPE="swap" 
/dev/sdb1: LABEL="DATA" UUID="9a8b7c6d-5e4f-3g2h-1i0j-9k8l7m6n5o4p" TYPE="xfs"

2. 查看某个具体设备的信息

示例

sudo blkid /dev/sda1
输出参考:

/dev/sda1: UUID="5a3a1e7b-1a2b-4c3d-8e9f-0a1b2c3d4e5f" TYPE="ext4"

3. 只获取某设备的 UUID 值

示例

sudo blkid -s UUID -o value /dev/sda1
输出参考:

5a3a1e7b-1a2b-4c3d-8e9f-0a1b2c3d4e5f

4. 通过 UUID 定位设备名称

示例

sudo blkid -U 5a3a1e7b-1a2b-4c3d-8e9f-0a1b2c3d4e5f
输出参考:

/dev/sda1

5. 以列表方式展示设备信息

示例

sudo blkid -o list
输出参考:

device     fs_type label    mount point    UUID
-------------------------------------------------------------------------------
/dev/sda1  ext4             /              5a3a1e7b-1a2b-4c3d-8e9f-0a1b2c3d4e5f
/dev/sda2  swap             [SWAP]         6b4c5d6e-7f8g-9h0i-1j2k-3l4m5n6o7p8q
/dev/sdb1  xfs    DATA      /mnt/data      9a8b7c6d-5e4f-3g2h-1i0j-9k8l7m6n5o4p

典型应用场合

1. 在 fstab 文件中使用 UUID 挂载设备

编辑 /etc/fstab 时建议使用 UUID 而非设备名进行挂载,因为设备名可能在重启后发生变化:

示例

UUID=5a3a1e7b-1a2b-4c3d-8e9f-0a1b2c3d4e5f / ext4 defaults 0 1

2. 在脚本中自动识别设备路径

可以在自动化脚本中调用 blkid 实现动态查找设备:

示例

#!/bin/bash

DATA_PARTITION=$(sudo blkid -L "DATA")
if [ -n "$DATA_PARTITION" ]; then
echo "找到数据分区: $DATA_PARTITION"
mount $DATA_PARTITION /mnt/data
else
echo "未找到数据分区"
fi

3. 找出尚未挂载的文件系统

示例

sudo blkid | grep -v "$(mount | awk '{print $1}')"


常见疑问解答

Q1: 为什么要用 sudo 运行 blkid?

A: 普通用户权限不足以访问全部设备信息,使用 sudo 可确保完整获取设备属性。

Q2: blkid 和 lsblk 的区别?

A:

  • lsblk 主要用于查看设备结构及基础信息(如设备名、大小、挂载点)
  • blkid 更侧重于展示文件系统的细节(包括 UUID、文件系统类型、卷标等)

Q3: 如何刷新 blkid 缓存?

A: 使用如下命令刷新缓存:

示例

sudo blkid -g
或者直接绕过缓存进行低级探测:

示例

sudo blkid -p


总结

blkid 是 Linux 系统管理过程中非常实用的命令,尤其适用于处理磁盘和文件系统相关的任务。通过学习本文内容,你将能够:

  1. 掌握 blkid 的主要用途和命令格式
  2. 使用不同参数获取所需的设备详情
  3. 将该命令应用于实际运维场景
  4. 解决常见的设备识别问题

熟练使用 blkid 命令有助于提升你在 Linux 系统中对存储设备的管理效率。

以上就是《blkid命令用途及使用教程》的详细内容,更多关于Linux,文件系统,块设备,UUID,blkid的资料请关注golang学习网公众号!

相关阅读
更多>
最新阅读
更多>
课程推荐
更多>