2017-12-15 18 views
0

ARMテンプレートでVMをビルドした後、Azure Automationで実行されるDSCスクリプトがあります。これは、ドメインに接続することを含め、いくつかのものを私は表示されます。ドメインの前には、マシンが再起動されるまで実際には有効にならないサーバー設定を変更するスクリプトの部分があります。私はこれらを使用してドメインの参加部分をDependsOnとしているので、マシンがドメインに参加したときに再起動し、これらの設定が完全​​に適用されることがわかります。DSCリソースが変更されているかどうか確認してください。リブートする場合

しかし、私は、これらの設定が後で(サーバーを展開してから数日後に)変更されたことに気付きました.DSCは、 '設定を取り戻す'の部分を適用して再起動しなかったため、スクリプト。

ResourceXとResourceYが変更/適用/変更されたかどうかを確認するDSCリソースがあるかどうか不思議です。もしそうなら、マシンを再起動して変更を有効にしてください。

Registry DisableUAC 
# Only fully applied after a reboot if changed 
{ 
    Ensure = "Present" 
    Key = "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System" 
    ValueName = "EnableLUA" 
    ValueData = "0" 
    ValueType = "Dword" 
} 


Script LocationCulture 
# Only fully applied after a reboot if changed 
{ 
    GetScript = 
    { 
     Get-Culture | select -ExpandProperty Name 
    } 

    TestScript = 
    { 
     If (!((Get-Culture | select -ExpandProperty Name) -eq "en-GB")) { 
      $false 
     } else { 
      $true 
     } 
    } 

    SetScript = 
    { 
     Set-Culture en-GB 
    } 
} 

これは、再起動が必要な4つのうち2つです。それぞれの再調整の後ではなく、一度だけマシンを再起動させるとよいでしょう。

答えて

0

私は、そのようなリソースがあると思ういけないが、リソースを明示的にVM上のリブートフラグを設定した場合、あなたが(xPendingReboot

xPendingReboot Reboot1 
    { 
     Name = 'BeforeSoftwareInstall' 
    } 
    LocalConfigurationManager 
    { 
     RebootNodeIfNeeded = $True 
    } 
私は/これを読んで見てきた
+0

、残念ながらUACのレジストリの変更を使用することができますまたはGUI経由で実行しても)、このモジュールが保留中の再起動をチェックする3つの場所のいずれも起動しません。これを確認するために、UACを有効/無効にしたときのレジストリの前後のスナップショットを行い、変更/作成/削除されたものを比較しました。 – Beefcake

+0

まあ、私が考えることができる唯一の事は、再起動を必要とする各操作のためにディスク上にいくつかのファイルを生成し、ファイルがそこにあるかどうかをチェックするスクリプトリソースを使用して削除し、リブートフラグを設定することです。また、私はuacネイティブリソースを無効にしていると思う。 – 4c74356b41

+0

ありがとう、私はUACリソースをチェックアウトします – Beefcake

関連する問題