2012-11-29 132 views
1


我的应用程序需要使用python为运行机器生成一个常量唯一标识。
这个常量唯一标识的意思是:
随时在同一台机器上生成唯一标识始终是SAME唯一标识。

(也许像系统uuid,但我的应用程序不运行根目录,无法获得系统uuid)。
顺便说一句,我认为Python的uuid模型对我不好:
UUID1():使用时间,创一个UUID,这不是一个恒定的唯一ID
uuid3():不能使用一些字符串创一个UUID,但这个uuid在任何机器上都是一样的。如何从python生成一个常量唯一标识



谢谢!

同一台机器:相同的cpu +主板+操作系统instalation +相同的磁盘。 行动:
UUID1():使用时间创一个UUID,这不是一个恒定的唯一ID

+1

定义“同一台机器”。相同的CPU? CPU +主板?相同的操作系统安装?相同的磁盘?所有这些? – goncalopp

+1

假设管理员创建了几个相同的虚拟机;你希望你的程序知道它正在运行哪一个? –

+2

尝试使用mac地址:http://stackoverflow.com/questions/159137/getting-mac-address – Alftheo

回答

1

你可以尝试snowflake。如果您有root用户,则整个机器的ID可以保持不变;否则,它可以将ID保存在您有权创建的文件中。

披露:我写了。 :)

+0

它是跨平台吗? – Volatil3