14

質問をより具体的に表現する別の方法: ターゲット マシンで DSC プロセスを「リセット」する正しい方法は何ですか?

現在反復している DSC 構成を作成しましたが、間違った新しいパッケージ構成を追加しています。Package ブロックで MSI インストーラーに /quiet 引数を指定するのを忘れると、Start-DscConfiguration コマンドレットが「ハング」する可能性があることがわかりました。

この「ハング」が発生した時点で、ローカル マシンで 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 を再起動してもエラーが修正されないようです。

この問題に関するいくつかの投稿をオンラインで見たことがありますが、これまでに見つけた 3 つの投稿は次のとおりです。

  1. 「しばらく待ってください。自然に解決します」が、うまくいきませんでした(せっかちなのかもしれません...)。支持できる長期的な解決策ではありません。
  2. 「すべてのローカル .mof ファイルを削除して、もう一度やり直してください」、これもうまくいきませんでした。
  3. 名前に「wmi」が含まれるすべてのプロセスを停止し、ターゲット マシンで winrm サービスを再起動します。これでブロックは解除されましたが、これを行うためのより良い方法があることを願っています。(今後数日でより良い方法を聞かない場合は、必要な結果を得るためにこの手順で自分で答えます)。
4

2 に答える 2

4

-Force オプションを指定して start-dscconfiguration コマンドを実行することもできます

Start-DscConfiguration -Force ...
于 2015-02-18T21:45:58.823 に答える