首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >确定地从财富中产生产出

确定地从财富中产生产出
EN

Stack Overflow用户
提问于 2012-09-07 12:01:06
回答 1查看 459关注 0票数 1

我来自财运的输出太随意了--为了让我的命运有任何科学意义,我需要遵循占星学的原理,以便选择的财富部分取决于月球的相位。我已经整理了事物的占星学方面,得到了一个占星学上的确定性数字,我可以用它作为一个随机种子。

从现在起,我要么想:

  1. 输出Nth财富,或
  2. 撒下命运所用的随机种子。

我可以想象,通过获取一个财富文件列表( fortune -f ),并从其中一个文件中随机选择一行。但如果有一个更优雅的解决方案,那就太好了。

我不知道怎么做2,我只知道RNG不是$RANDOM,所以我不能用RANDOM=seed在bash中设置种子。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-09-08 11:47:44

“财富”有很多版本和重新实现。我看过Linux的fortune源代码,您可能正在使用这个源代码(这里是:财富来源)。无缘无故(!)它使用/dev/urandom获取种子,如果失败,则使用time(0)。这就是为什么$RANDOM不能工作的原因。我只能想象这些解决方案(除了您已经找到的解决方案之外):

1)修改源以添加强制随机种子的选项。这是相当微不足道的。

2)通过chroot将程序运行到受限环境中。受限环境必须包含必要的二进制文件和包含要应用的种子的假/dev/urandom (普通文件):

代码语言:javascript
复制
echo -en "$myseed" > restrictedroot/dev/urandom
chroot restrictedroot fortune

请注意,假的urandom包含二进制数据,因此必须将$myseed扩展为一个4字节的二进制序列(即四个exadecimal序列"\xHH")。一点也不方便。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12317698

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档