使用knife运行chef-client时,会出现无法找到配方的错误消息。我使用的命令是
knife ssh myserver 'sudo chef-client' --manual-list -ssh-user myuser
同步和编译cookbook成功但随后失败并显示消息
myserver [2015-01-08T13:54:06+01:00] ERROR: could not find recipe file /home/myuser/myuser
所以似乎厨师客户正在寻找位置/ home / myuser / myuser中的食谱,但这不是食谱的存储位置。
我认为厨师应该在/ var / chef / cache中查找这些内容。我不确定。为什么Chef无法找到我的食谱?为什么Chef看错了位置?
答案 0 :(得分:1)
您在ssh用户的命令中缺少连字符
knife ssh myserver 'sudo chef-client' --manual-list --ssh-user myuser
您是否向服务器提供了更改其菜谱仓库的任何配置?去服务器本身并检查它的client.rb
烹饪书也可能不在您的厨师服务器上。在继续之前确保它已上传到那里。如果您正在运行厨师独奏,请确保您已经在knife.rb中定义了正确的食谱回购,因此厨师知道在哪里可以找到您的食谱。