gpt4 book ai didi

powershell - 执行 Start-DscConfiguration 时如何解决 "Cannot invoke the SendConfigurationApply method."?

转载 作者:行者123 更新时间:2023-12-03 23:24:33 26 4
gpt4 key购买 nike

另一种不太具体的表述问题的方法是:在目标机器上“重置”DSC 进程的正确方法是什么?
我已经创建了一个我现在正在迭代的 DSC 配置,并且我正在添加我出错的新包配置。我确定通过忘记向 Package 块中的 MSI 安装程序提供/quiet 参数,我可能会导致 Start-DscConfiguration cmdlet“挂起”。
在此“挂起”开始时,我停止了本地计算机上的 DSC 配置操作并尝试更正配置问题(通过在我的示例中添加/quiet 参数),然后我重新启动 DSC 操作。现在我在操作过程中看到我的远程机器的以下内容:

Cannot invoke the SendConfigurationApply method. The PerformRequiredConfigurationChecks method is in progress and must return before SendConfigurationApply can be invoked.
+ CategoryInfo : NotSpecified: (root/Microsoft/...gurationManager:String) [], CimException
+ FullyQualifiedErrorId : MI RESULT 1
+ PSComputerName : REMOTEMACHINE20
不幸的是,访问正在配置的远程 PC 我看到了类似的错误消息,并且重新启动 PC 似乎并没有纠正错误。
我在网上看到了一些关于这个问题的帖子,到目前为止我发现的三个建议:
  • “稍等片刻,它会自行解决”,这对我不起作用(也许我不耐烦......)。不是一个站得住脚的长期解决方案。
  • “删除所有本地 .mof 文件并重试”,这对我也不起作用。
  • Stop all processes with 'wmi' in the name and restart the winrm service on the target machine(s).这让我畅通无阻,但我希望有更好的方法来做到这一点。 (如果在接下来的几天里我没有听到更好的方法,我会用这个程序自己回答这个问题以获得所需的结果)。
  • 最佳答案

    我发现以下方法可以很好地重置 DSC。请注意,这将删除本地配置,因此您需要重新应用 machinename.meta.mof 文件。

    #Remove all mof files (pending,current,backup,MetaConfig.mof,caches,etc)
    rm C:\windows\system32\Configuration\*.mof*
    #Kill the LCM/DSC processes
    gps wmi* | ? {$_.modules.ModuleName -like "*DSC*"} | stop-process -force

    此时,您已经准备好使用 Set-DscLocalConfigurationManager 配置一个干净的系统。并使用 Update-DscConfiguration -Wait -Verbose -CimSession machinename 更新

    到目前为止,唯一没有解决的问题是 $env:psmodulepath 损坏或缺少用于一致性/重新启动检查的计划任务。 更新:根据 this item on connect WMF 5.0 2 月预览版中删除了一致性/重新启动的计划任务。

    关于powershell - 执行 Start-DscConfiguration 时如何解决 "Cannot invoke the SendConfigurationApply method."?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25877068/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com