在将 puppet 安装到 Windows Server 2012 R2 vanilla 安装后(安装后没有任何变化,但有一些基本的与 vagrant 一起使用)我安装并手动运行 Puppet 代理并遇到一个 Windows 功能弹出错误消息:
无法安装以下功能:.NET Framework 3.5(包括 .NET 2.0 和 3.0)...。
有任何想法吗?这是 Puppet 3.3.1 .... 现在需要 .NET 吗?
Puppet 不需要 .NET Framework,但我们使用的工具 elevate.exe(仅与开始菜单项一起使用以确保特权用户处于特权上下文中)确实需要 .NET Framework。
我们正在实施的修复在这里:https ://tickets.puppetlabs.com/browse/PUP-1951
您也可以自己添加,只需添加https://github.com/Iristyle/puppet-win32-ruby/blob/ticket/master/PUP-1951-override-elevate-dotnet-runtime/tools/bin/elevate。 elevate 旁边的 exe.config (elevate.exe.config) 以便将 .NET Framework 4+ 计为受支持的框架。这是该文件以防分支被删除:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<startup>
<supportedRuntime version="v4.0.30319" />
<supportedRuntime version="v3.5" />
<supportedRuntime version="v3.0" />
<supportedRuntime version="v2.0.50727" />
</startup>
</configuration>