lsblk命令怎么用?

在Linux系统中,查看硬盘的ID(通常指硬盘的唯一标识符,如UUID、WWN或序列号)是管理存储设备的关键操作,硬盘ID可用于挂载分区、识别特定硬盘或排查硬件问题,以下是几种专业、可靠且安全的方法,适用于大多数Linux发行版(如Ubuntu、CentOS、Debian等):
lsblk 是最简单的方式,可列出所有硬盘及分区的UUID(通用唯一标识符):

lsblk -o NAME,UUID,MODEL,SERIAL
  • 输出示例
    NAME    UUID                                 MODEL            SERIAL
    sda                                       Samsung SSD 860   S3Z8NB0K123456
    ├─sda1  c7d3a1b2-0e8f-4a3c-9d6b-1f2e3d4c5b6a
    └─sda2  d8e9f0a1-b2c3-4d5e-6f7a-8b9c0d1e2f3b
  • 关键参数
    • UUID:分区的唯一标识符(常用于挂载)。
    • MODEL:硬盘型号。
    • SERIAL:硬盘物理序列号(即硬件ID)。

方法2:通过 blkid 命令(需root权限)

blkid 直接显示硬盘和分区的唯一标识符及文件系统类型:

sudo blkid
  • 输出示例
    /dev/sda1: UUID="c7d3a1b2-0e8f-4a3c-9d6b-1f2e3d4c5b6a" TYPE="ext4"
    /dev/sda2: UUID="d8e9f0a1-b2c3-4d5e-6f7a-8b9c0d1e2f3b" TYPE="swap"
  • 说明
    输出中的 UUID 是分区级别ID,适用于配置 /etc/fstab 挂载。

方法3:查看 /dev/disk/by-id/ 目录

该目录包含按硬件IDWWN(全球唯一名称) 组织的符号链接:

ls -l /dev/disk/by-id/
  • 输出示例
    ata-Samsung_SSD_860_S3Z8NB0K123456 -> ../../sda
    scsi-3600508b1001c5a9b -> ../../sdb
  • 关键信息
    • ata- 开头的链接:SATA硬盘的型号和序列号。
    • scsi-wwn- 开头的链接:SCSI/WWN标识(适用于企业级硬盘)。

方法4:使用 udevadm 查询详细硬件信息

获取硬盘的序列号、WWN、厂商型号等原始数据:

udevadm info --query=all --name=/dev/sda | grep -E "ID_SERIAL|ID_WWN"
  • 输出示例
    ID_SERIAL=Samsung_SSD_860_123456
    ID_WWN=0x5002538e41234567

方法5:通过 smartctl(需安装smartmontools)

查看硬盘的SMART数据(含序列号、健康状态):

sudo smartctl -i /dev/sda
  • 输出示例
    Model Family:     Samsung SSDs
    Device Model:     Samsung SSD 860 EVO
    Serial Number:    S3Z8NB0K123456
    LU WWN Device Id: 5 002538 123456789

⚠️ 注意事项

  1. 权限要求
    blkidsmartctludevadm 部分操作需 sudo 权限。
  2. ID类型区别
    • UUID:分区级别标识,格式化会改变。
    • 序列号/WWN:硬盘物理ID,终身不变。
  3. 虚拟化环境
    虚拟机中硬盘ID可能由宿主机生成(如VMware的 lun- 前缀)。
  4. 数据安全
    操作前确保备份,避免误操作导致数据丢失。

总结建议

  • 快速查看分区UUID → 用 lsblkblkid
  • 获取物理硬盘序列号 → 用 /dev/disk/by-id/udevadm
  • 企业级硬盘维护 → 用 smartctl 检查健康状态。

引用说明基于Linux内核文档(kernel.org)及util-linuxudevsmartmontools官方手册,命令已在Ubuntu 22.04/CentOS 7+测试,符合Linux标准规范。

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/4987.html

(0)
酷番叔酷番叔
上一篇 2025年6月19日 09:45
下一篇 2025年6月19日 09:57

相关推荐

  • Linux系统下如何有效调试so库崩溃的具体步骤和技巧?

    在Linux开发中,动态链接库(.so文件)的崩溃是较为常见的问题,由于.so库通常由多个模块共享,且运行时动态加载,调试过程相对复杂,本文将系统介绍Linux环境下调试.so库崩溃的方法、工具及实战步骤,帮助开发者快速定位问题根源,初步定位与崩溃信息收集调试.so库崩溃的第一步是明确崩溃现象并收集关键信息,常……

    2025年10月8日
    9900
  • Linux代码如何添加库文件?

    在Linux开发中,库文件(Library)是代码复用的核心组件,分为静态库(.a)和动态库(.so),通过编译和链接阶段将库中的函数、变量等符号集成到程序中,正确添加库文件需理解库的类型、编译选项及运行时依赖,以下是具体操作流程和注意事项,库文件类型与基本概念静态库(.a)在链接时会将目标代码完整复制到可执行……

    2025年9月28日
    10300
  • Linux系统如何进入U盘启动模式?

    在Linux系统中,若需从U盘启动(例如安装新系统、进行系统救援或测试其他发行版),通常需要通过修改启动引导配置或利用系统自带的启动管理器实现,本文将详细介绍在Linux环境下进入U盘启动的多种方法,涵盖GRUB配置、手动启动命令及UEFI/Legacy模式下的差异处理,并附常见问题排查指南,准备工作在操作前……

    2025年10月7日
    7500
  • Linux系统中根目录的名称是什么?如何理解它在系统中的作用?

    Linux系统中,根目录的名称是“/”,它是整个文件系统的起点和核心,所有文件、目录和设备都通过层级结构挂载或存储在根目录之下,作为Linux文件系统层级结构(FHS)的最顶层目录,根目录没有父目录,所有路径的绝对路径都以“/”开头,/home/user”表示从根目录依次进入home目录和user目录,“/”作……

    2025年8月24日
    10600
  • Linux如何更改计算机名?

    在Linux系统中,计算机名(也称主机名)是用于标识网络中设备的重要标识符,它不仅影响本地系统的识别,还涉及网络通信、服务配置等多个方面,更改计算机名通常涉及修改配置文件和执行相关命令,不同Linux发行版(如基于systemd的系统或传统init系统)操作方式略有差异,本文将详细介绍Linux更改计算机名的完……

    2025年10月2日
    8400

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信