如何在没有root权限的Linux下获取CPU串行

Ale*_*xey 7 linux cpu serial-number

如何在没有root权限的情况下获取Linux(Ubuntu)下的CPU序列号?

我尝试了cpuid命令,它没有root权限,但似乎返回所有零(我相信因为需要在BIOS中更改某些内容).

你能否建议我从没有root权限的程序中检索CPU串行的另一种方法,而不必修改BIOS?

Mar*_*c B 6

处理器序列号基本上只出现在奔腾 III 处理器中。由于提出的隐私问题,英特尔将其从后来的模型中删除。因此,除非您使用的是 PIII并且您的 BIOS 设置允许您读取序列号,否则您将得到的只是 0。


ETe*_*ech 5

需要根权限。答案是dmidecode。
如果需要CPU ID:

dmidecode | grep -w ID | sed "s/^.ID\: //g"
Run Code Online (Sandbox Code Playgroud)

这将获取CPU ID,从输出中删除“ ID:”
如果您需要接收计算机ID:

dmidecode | grep -w UUID | sed "s/^.UUID\: //g"
Run Code Online (Sandbox Code Playgroud)

如果您希望获得没有root权限的内核uuid,则:

dmesg | grep UUID | grep "Kernel" | sed "s/.*UUID=//g" | sed "s/\ ro\ quiet.*//g"
Run Code Online (Sandbox Code Playgroud)


Foo*_*Bah -2

你检查了吗dmesg?在里面/bin