如何快速查看Linux磁盘唯一ID?

通过 lsblk 命令(推荐)

作用:列出块设备信息,包含设备路径、UUID 和文件系统类型。
步骤

  1. 打开终端,输入:
    lsblk -o NAME,UUID,SERIAL,MODEL
  2. 查看输出示例:
    NAME    UUID                                 SERIAL          MODEL
    sda     5f3e8a1c-01e4-4b2a-9c7d-8a1b0c9d0e7f S2HYJ9CB123456  Samsung SSD 870 EVO
    ├─sda1  8d4a5b6c-3e1f-4a2b-9c8d-7e6f5a4b3c2d
    └─sda2  a1b2c3d4-e5f6-7a8b-9c0d-1e2f3a4b5c6d

    关键字段

  • UUID:文件系统唯一标识(分区级别)
  • SERIAL:磁盘物理序列号(设备级别)
  • MODEL:磁盘型号

通过 blkid 命令

作用:直接输出磁盘和分区的唯一标识(UUID)及文件系统类型。
步骤

  1. 终端输入(需 root 权限):
    sudo blkid
  2. 输出示例:
    /dev/sda1: UUID="8d4a5b6c-3e1f-4a2b-9c8d-7e6f5a4b3c2d" TYPE="ext4"
    /dev/sda2: UUID="a1b2c3d4-e5f6-7a8b-9c0d-1e2f3a4b5c6d" TYPE="swap"

    说明

  • UUID 适用于分区挂载(如 /etc/fstab 配置)
  • 无物理序列号,需结合其他方法获取设备级 ID

通过 /dev/disk/by-id/ 目录

作用:直接访问 Linux 内核生成的磁盘唯一符号链接。
步骤

  1. 终端输入:
    ls -l /dev/disk/by-id/
  2. 输出示例:
    lrwxrwxrwx 1 root root  9 Aug 10 10:00 ata-Samsung_SSD_870_EVO_S2HYJ9CB123456 -> ../../sda
    lrwxrwxrwx 1 root root 10 Aug 10 10:00 ata-Samsung_SSD_870_EVO_S2HYJ9CB123456-part1 -> ../../sda1

    关键字段

  • ata-Samsung_SSD_870_EVO_S2HYJ9CB123456:完整的磁盘 ID(含厂商、型号、序列号)
  • 符号链接指向 /dev/sda,可直接用于挂载

通过 udevadm 命令(获取原始序列号)

作用:查询 udev 设备管理器数据库,获取硬件级序列号。
步骤

  1. 先运行 lsblk 找到磁盘名称(如 sda
  2. 终端输入:
    sudo udevadm info --query=property --name=/dev/sda | grep ID_SERIAL
  3. 输出示例:
    ID_SERIAL=Samsung_SSD_870_EVO_123456
    ID_SERIAL_SHORT=S2HYJ9CB123456

    说明

  • ID_SERIAL_SHORT 为纯序列号,适用于自动化脚本

通过 hdparm 命令(仅限 SATA 硬盘)

作用:直接查询 SATA 磁盘的序列号。
步骤

  1. 终端输入:
    sudo hdparm -I /dev/sda | grep "Serial Number"
  2. 输出示例:
    Serial Number:      S2HYJ9CB123456

常见问题解决

  1. 命令返回空值?

    • 确保磁盘已连接且未被加密(加密盘需先解锁)
    • 使用 sudo 提权执行命令
  2. NVMe 磁盘如何查看?

    • 方法通用:NVMe 设备名通常为 /dev/nvme0n1,替换命令中的 /dev/sda 即可
  3. 虚拟机中无序列号?

    • 虚拟磁盘可能无物理序列号,优先使用 UUIDby-id 路径

场景 推荐命令 获取的 ID 类型
快速查看分区 UUID blkid 文件系统 UUID
获取磁盘型号和序列号 lsblk -o SERIAL,MODEL 物理序列号/型号
精准挂载(防设备名变更) /dev/disk/by-id/ 含厂商信息的完整磁盘 ID
脚本调用 udevadm 原始序列号(ID_SERIAL)

引用说明基于 Linux 内核文档(kernel.org)、util-linux 工具手册(man7.org)及 udev 官方指南(systemd.io),命令兼容主流 Linux 发行版(Ubuntu/CentOS/Debian 等)。

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

(0)
酷番叔酷番叔
上一篇 2025年6月15日 21:59
下一篇 2025年6月15日 22:11

相关推荐

  • Linux如何全局搜索文件?

    在Linux系统中,全局搜索文件是日常管理和运维中的高频操作,无论是定位配置文件、查找日志记录,还是检索脚本程序,掌握高效的搜索工具都能极大提升工作效率,Linux提供了多种命令用于全局搜索文件,每种工具都有其特点和适用场景,本文将详细介绍这些命令的使用方法及注意事项,find命令:最强大的文件搜索工具find……

    2025年10月4日
    3400
  • Linux系统如何查看防火墙的当前运行状态?

    在Linux系统中,防火墙是保障服务器安全的重要组件,用于控制进出网络的流量,防止未授权访问,查看防火墙状态是日常运维中的常见操作,不同Linux发行版可能使用不同的防火墙管理工具(如iptables、firewalld、ufw等),本文将详细介绍如何通过这些工具查看防火墙状态,包括核心命令、参数解析及实际输出……

    2025年8月31日
    8000
  • Linux挂载硬盘如何确保安全可靠?

    准备工作识别硬盘设备使用 lsblk 或 fdisk -l 命令查看所有存储设备:sudo fdisk -l输出示例: /dev/sdb: 1.8T, 1800000000000 bytes # 新硬盘通常显示为 /dev/sdb 或 /dev/nvme0n1p1检查文件系统类型若硬盘已格式化,用 blkid……

    2025年7月17日
    7500
  • Linux系统如何安装deb文件?

    在Linux系统中,尤其是基于Debian或Ubuntu的发行版,deb文件是常见的软件包格式,安装deb文件有多种方法,可根据场景选择,以下是详细步骤及注意事项,使用dpkg命令安装(基础命令行方法)dpkg是Debian系系统的包管理工具,可直接安装deb文件,但需注意依赖问题,操作步骤:打开终端,进入de……

    2025年9月8日
    4600
  • 如何查看Linux文件目录是否存在?

    在Linux系统管理和日常操作中,判断文件或目录是否存在是基础且高频的操作,无论是编写脚本、排查问题还是执行文件管理任务,都需先确认目标路径的有效性,本文将详细介绍几种常用的查看方法,涵盖基础命令、脚本适用场景及实用技巧,帮助用户灵活应对不同需求,基础命令:ls命令ls(list)是最直观的目录查看命令,通过列……

    2025年9月13日
    4600

发表回复

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

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信