厨师 - 管理员权限

时间:2015-09-07 11:41:26

标签: chef permission-denied winrm

我想找到厨师的工作。所有这些下一个命令在Windows 8上运行完美,但我在Windows 7中遇到了麻烦。

我已经全新安装了win7,所以首先我通过以下命令设置winrm:

call winrm quickconfig
call winrm set winrm/config/service/auth @{Basic="true"}
call winrm set winrm/config/service @{AllowUnencrypted="true"}
call winrm set winrm/config @{MaxTimeoutms="3000000"}

之后我用刀窗启动这个节点:

knife bootstrap windows winrm {IP} --winrm-user {username} --winrm-password {password} --node-name {nodename}

现在我可以看到win7 / win8之间的不同行为,因为它无法通过cscript下载chef-client - 权限被拒绝 - 但是由PowerShell安装它。

当我想安装一些东西 - 火狐,巧克力 - 来自厨师超市的食谱时,它会因许可被拒绝而失败。

knife node run_list set {node_name} firefox

然后运行

knife winrm {IP} chef-client --manual-list --winrm-user {username} --winrm-password {password}

并且失败

如果我从cmd在win7上运行chef-client作为管理员成功完成。

2 个答案:

答案 0 :(得分:0)

我在Windows 7工作站上使用Chef运行Vagrant时遇到类似的问题。

首先,我做了这组命令:

winrm quickconfig -q
winrm set winrm/config/winrs @{MaxMemoryPerShellMB="512"}
winrm set winrm/config @{MaxTimeoutms="1800000"}
winrm set winrm/config/service @{AllowUnencrypted="true"}
winrm set winrm/config/service/auth @{Basic="true"}
sc config WinRM start= auto

尝试禁用(或设置为允许Chef等)Windows防火墙。 如果您将此作为Vagrant机器运行,则还必须在VBox上安装Guest Additions,禁用UAC。

Chef必须具有创建/删除/更新对象的权限 - 如果未授予它们,它将失败。我找到了here信息,您可以尝试在Windows中禁用UAC和/或更改用户帐户策略。

答案 1 :(得分:0)

这属于评论,但我没有这种能力,请原谅我。

您的powershell政策是否可能过于紧缩,以至于厨师无法运营?尝试手动打开PowerShell作为管理员并输入

Get-ExecutionPolicy

Chef和Chocolatey都使用powershell在Windows机器上运行他们的魔力。另外,在Chef 12.4.0及更高版本中,预计你安装了PowerShell v5,如果你使用的是powershell 4或更早版本,我会对使用x86 powershell而不是x64感到有些奇怪。您可以通过将以下内容添加到引导程序命令

来尝试锁定到Chef-client版本12.3.0
--bootstrap-version 12.3.0

我希望其中一些至少有帮助。如果执行策略是问题,您可以使用

将其设置为限制较少的级别
--Set-ExecutionPolicy