在没有root权限的情况下如何在Linux(Ubuntu)下获取CPU序列号?
我试过 cpuid 命令,它在没有 root 权限的情况下工作,但似乎返回全零(我相信是因为需要在 BIOS 中更改某些内容)。
您能否建议我另一种无需 root 权限且无需修改 BIOS 即可从程序中检索 CPU 序列号的方法?
最佳答案
需要根权限。答案是 dmidecode。
如果您需要 CPU ID:
dmidecode | grep -w ID | sed "s/^.ID\: //g"
这将获取 CPU ID,从输出中删除“ID:”
如果您需要接收计算机 ID:
dmidecode | grep -w UUID | sed "s/^.UUID\: //g"
如果你想在没有root权限的情况下获取内核uuid,那么:
dmesg | grep UUID | grep "Kernel" | sed "s/.*UUID=//g" | sed "s/\ ro\ quiet.*//g"
这是因为最近的评论。很久以前发生的事情,所以现在无法解释为什么这些 ID 被用作机器标识符。从 Processor Information
部分获得实际的处理器 ID。在 Debian 操作系统上提取。
pr=0; dmidecode | while read line; do [ "$line" == "Processor Information" ] && pr=1; [ $pr -eq 0 ] && continue; [ -n "$(echo $line | grep '^ID')" ] && echo $line | awk -F"ID: " '{print $2}' && break; done
关于linux - linux下如何在没有root权限的情况下获取CPU串口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5045450/