chef-client的默认安装发生在/ opt目录中。 我需要在/ opt / installed_apps目录下安装chef客户端。
如果我在/ opt / installed_apps下安装它,它会在/ opt / installed_apps中创建一个/ opt / chef文件夹,并且在运行chef-client命令时,它会抛出一个错误“/ opt / chef / embedded / bin / ruby文件或目录不存在“。
我尝试在环境PATH变量中设置ruby gem的路径,即/ opt / chef / embedded / bin / ruby,但它不起作用。
请建议我必须为chef-client设置任何特定的环境变量,或者不允许/推荐自定义安装Chef client / server。
感谢 Amandeep Singh
答案 0 :(得分:0)
简短:您不能,嵌入式Ruby中的某些库静态链接到此目录。
我能想到的唯一解决方法是在目标目录中安装(对于挂载或我不是什么原因),然后对/ opt / chef进行符号链接:
ln -s /opt/chef /opt/installed_apps/opt/chef
沿着安装ruby的路径并使用gem install听起来有些过分且容易出错。