2016-12-30 42 views
1

环境:PowerShell的版本:5,在Windows Server 2016

我DSC在目录中创建一个Hello World文件:

$Home\Desktop 

对此我预期映射到C:\Users\<username>\Desktop。在远程VM的PowerShell上调用$home.desktop确实会返回桌面目录。但是当DSC本身执行时,该文件被创建在:C:\Windows\System32\config\systemprofile\Desktop

下面是DSC的副本:

Configuration HelloWorldConfig 
{ 
    Import-DscResource –ModuleName 'PSDesiredStateConfiguration' 
     Node localhost 
     { 
       File TestFile { 
        Ensure = "Present" 
        DestinationPath = "$Home\Desktop\HelloWorld.txt" 
        Contents = "Hello World!" 
       } 

     } 
} 

任何想法,为什么发生这种情况?也许Azure虚拟机代理是它自己的用户,因此它的目录不是$home,而是C:\Windows\System32\config\systemprofile

回答

1

Azure DSC ExtensionAzure VM Agent运行,它运行的是local systemC:\Windows\System32\config\systemprofile\Desktoplocal system的桌面。

+1

本地系统是什么:https://msdn.microsoft.com/en-us/library/windows/desktop/ms684190(v=vs.85).aspx – AllTradesJack