麒麟系统中硬件UUID需通过读取DMI数据获取:首选cat /sys/class/dmi/id/product_uuid;若为空则需启用UEFI SMBIOS UUID支持;可用dmidecode -t system和lshw交叉验证,整机级UUID以system表为准。

在麒麟操作系统中确认电脑主板或整机的硬件UUID号,用于授权绑定、安全审计或资产登记时,需直接读取BIOS/UEFI固件暴露的DMI数据,不能依赖网络服务或图形界面——因为系统设置里根本不显示该字段。
读取/sys/class/dmi/id/product_uuid(推荐首选)
这是最轻量、无需sudo权限的方式,适用于所有已启用DMI支持的麒麟系统版本。
打开终端,执行:cat /sys/class/dmi/id/product_uuid
输出为标准UUID格式(如a1b2c3d4-e5f6-7890-g1h2-i3j4k5l6m7n8)即为有效值;若输出None或Not Set,说明BIOS未写入真实UUID,需进入UEFI设置启用SMBIOS UUID支持。
这一步操作起来很简单,直接把命令敲进去回车就行。
用sudo dmidecode -t system验证一致性
该命令可交叉验证UUID是否与主板序列号、厂商信息一致,适合服务器或信创验收场景。
第一步:执行完整system类型扫描sudo dmidecode -t system
第二步:在输出中定位两行关键信息Serial Number:后为整机资产编号UUID:后为十六进制格式的硬件UUID(8-4-4-4-12)
【虚拟机环境常返回全零或随机值,不可作为物理设备标识依据】
使用lshw提取结构化硬件树中的UUID
当需要同时获取UUID与CPU、内存、主板型号等关联信息时,此方法能一次性输出完整拓扑。
方法一:精简模式直接过滤sudo lshw -short | grep -A 1 -B 1 "uuid"
方法二:JSON格式导出便于脚本解析sudo lshw -json -class system 2>/dev/null | jq -r '.[]?.configuration?.uuid'
若提示jq未安装,可跳过方法二,lshw -short已足够定位UUID所在行。
验证UUID合法性并确认来源层级
第一步:检查格式是否符合RFC 4122标准cat /sys/class/dmi/id/product_uuid | grep -E '^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$'
第二步:比对baseboard表UUID(部分OEM设备将UUID写在主板层)sudo dmidecode -t baseboard | grep -i uuid
第三步:若/system与/baseboard UUID不同,优先采信system表值——它代表整机级身份凭证,麒麟授权系统默认绑定此值。

















