尝试在“厨房”中运行任何命令时收到以下错误:
bash: /mnt/c/opscode/chefdk/bin/kitchen: C:/opscode/chefdk/embedded/bin/ruby.exe: bad interpreter: No such file or directory
它在使用 chefdk 客户端时从外部集成 bash 运行,但是我试图从集成 bash 运行它。
“chef-client”和“knife”等 Chef 实用命令到目前为止似乎可以正常工作。
最佳答案
A possible solution for the SSH key permissions issue below
我们真的需要让它一直工作下去,因为它比 Windows 上的原生 ChefDK 快得多!以下将使您更接近:
阻止 Windows 与 WSL 共享 PATH
- 使用
Regedit.exe
在HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LxssManager< 下创建值为
。然后转到服务并重新启动fffffffd
的 DWORDDistributionFlags
/LxssManager
服务。
- 使用
在 WSL 中下载并安装适用于 Ubuntu 的 ChefDK 和 Vagrant
将一些窗口路径添加到您的 WSL 路径
export PATH="$PATH:/mnt/d/bin/Oracle/VirtualBox:/mnt/c/Windows/System32:/mnt/c/Windows/System32/WindowsPowerShell/v1.0"
允许 Vagrant Windows 访问
export VAGRANT_WSL_ENABLE_WINDOWS_ACCESS='1'
运行
kitchen converge
现在可以运行了运行
kitchen login
仍然有问题。它提示不安全的 vagrant 私钥:/opt/chefdk/embedded/lib/ruby/gems/2.5.0/gems/test-kitchen-1.22.0/lib/kitchen/instance.rb:217: 警告:不安全的世界可写目录/PATH 中的 home/dgames/.yadr/bin,模式 040777 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@ @ 警告:未保护的私钥文件! @ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@ '/mnt/k/20180707-mbp/repos/github/cloud/ssl_certs/.kitchen/kitchen-vagrant/all-cacerts-centos-72/.vagrant/machines/default/virtualbox/private_key' 的权限 0777 太开放了. 要求您的私钥文件不能被其他人访问。 此私钥将被忽略。 加载 key “/mnt/k/20180707-mbp/repos/ge_github/cloud/ssl_certs/.kitchen/kitchen-vagrant/all-cacerts-centos-72/.vagrant/machines/default/virtualbox/private_key”:错误权限 vagrant@127.0.0.1的密码:
关于linux - Chef 厨房无法从 Windows 10 集成 bash 工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47318984/