6

我正在使用 Chef Solo 并尝试为 Oh My Zsh 安装食谱!这会导致这个烦人的错误:

无法读取私钥 /etc/chef/client.pem: Errno::ENOENT: 没有这样的文件或目录 - /etc/chef/client.pem

根据我收集到的信息,这是因为配方中有这一行,它正在尝试进行搜索:

search( :users, "shell:*zsh" ).each do |u|

我还没有找到一个令人满意的解决方案来解决这个问题。

由于我对厨师有点陌生,我想知道我应该怎么做?看起来搜索操作需要 Chef Client,但这是否意味着如果我想使用 OMZ,我不能使用 Chef Solo?

4

3 回答 3

9

我今天也遇到了这个问题。似乎 chef-solo 不支持 search() 开箱即用。安装https://github.com/edelight/chef-solo-search来解决问题。

于 2012-11-25T15:14:50.047 回答
4

您(可能)也可以使用chef-zero而不是 chef-solo。

来自chef-solo-search的自述文件:

弃用警告

现在本地模式(“零”)已被引入 Chef(从 11.8 开始),它提供了开箱即用的搜索功能,这个存储库将会少很多人喜欢。我强烈建议您考虑从 Chef Solo 迁移到 Chef Zero 并放弃使用这个库。话虽如此,如果您无法使用 Chef Solo,那么 little chef-solo-search 仍然会为您服务。

这是一篇介绍迁移的文章:
https ://www.chef.io/blog/2014/06/24/from-solo-to-zero-migrating-to-chef-client-local-mode/

于 2015-01-29T20:53:51.797 回答
0

您可以在本地模式下使用 chef-client。尝试使用数据库食谱时,这里已经回答了厨师独奏私钥丢失

于 2018-11-07T04:21:52.097 回答