我正试图从Linux服务器上为非root用户获得唯一的价值,例如硬件ID。
我尝试使用网络接口的mac地址,但是在venet0接口(虚拟网络接口)中没有mac地址
而ip addr
命令的输出为:
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: venet0: <BROADCAST,POINTOPOINT,NOARP,UP,LOWER_UP> mtu 1500 qdisc noqueue state UNKNOWN
link/void
inet 127.0.0.1/32 scope host venet0
inet x.x.x.x/32 brd x.x.x.x scope global venet0:0
inet6 ::2/128 scope global
valid_lft forever preferred_lft foreve
那么对于非root用户并使用适用于所有Linux发行版的Linux内置命令的最佳方法是什么?
答案 0 :(得分:0)
您可以尝试获取CPU ID, or better the general computer UUID:
$ sudo dmidecode | grep UUID
有关更多选项,请参见链接的线程。当您似乎在虚拟环境中工作时,请检查它们是否实际上是唯一的。也许还包含主机名。