【问题标题】:Powershell DSC - Buffer is not supported. Check encoding and length of the bufferPowershell DSC - 不支持缓冲区。检查缓冲区的编码和长度
【发布时间】:2014-07-08 20:10:25
【问题描述】:

在 Windows Server 2012 R2 虚拟机上,我正在尝试运行 Powershell DSC 脚本:

配置测试 {

    Node "localhost" 
    {    
        WindowsFeature WASDotNet3
        {
            Ensure = "Present"
            Name = "WAS-NET-Environment"
        }    
    }

}

测试 -OutputPath 'D:\PSMofFiles' Start-DscConfiguration -Wait -Verbose -Path 'D:\PSMofFiles'

当我运行此脚本时,我收到以下错误:

Directory: D:\PSMofFiles

模式 LastWriteTime 长度名称
---- ------------- ------ ----
-a--- 2014 年 5 月 20 日上午 8:55 1218 localhost.mof
详细:使用以下参数执行操作 'Invoke CimMethod',''methodName' = SendConfigurationApply,'className' = MSFT_DSCLocalConfigurationManager,'namespace 名称'= root/Microsoft/Windows/DesiredStateConfiguration'。 不支持缓冲区。检查缓冲区的编码和长度 + CategoryInfo : InvalidArgument: (root/Microsoft/...gurationManager:String) [], CimException + FullyQualifiedErrorId : MiClientApiError_Failed + PSComputerName : 本地主机

详细:“调用 CimMethod”操作完成。 详细:完成配置作业所需的时间为 0.19 秒

PS C:\Windows\system32>

有人知道这是什么原因吗?此外,我运行什么 DSC 脚本也没有关系。它可以是任何 DSC 脚本,我会收到完全相同的错误消息。

【问题讨论】:

    标签: powershell windows-server-2012 hyper-v dsc


    【解决方案1】:

    我用rm C:\Windows\System32\Configuration\DSCEngineCache.mof解决了这个问题。

    通过手动检查这些文件(如果要使用资源管理器,请复制到桌面)我发现这个 mof 文件都是空字符。我不知道这是怎么发生的,但它可能与“设备,\Device\Harddisk0\DR0,有一个坏块”每隔几秒出现在事件日志中有关。

    【讨论】:

      【解决方案2】:

      我最终在位于此处的 Windows Server 2012 R2 上安装了一个补丁: http://www.microsoft.com/en-us/download/details.aspx?id=40774 解决问题。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2012-05-17
        • 2016-11-21
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-02-20
        • 2013-03-26
        • 1970-01-01
        相关资源
        最近更新 更多