我的 (dotNET) 应用程序是通过构建管道构建的(使用 Windows 托管代理),在随后的发布管道中,我配置了一个 16GB-Win2016 VM(启用 RDP、HTTP、HTTPS、WinRM 和 SSH),我将在其中配置手动 RDP(此处有一个手动干预任务),并配置 WinRM(遵循本文:https://learn.microsoft.com/en-us/azure/marketplace/cloud-partner-portal/virtual-machine/cpp-configure-winrm-after-vm-creation#configure-vm-to-enable-winrm https://learn.microsoft.com/en-us/azure/marketplace/cloud-partner-portal/virtual-machine/cpp-configure-winrm-after-vm-creation#configure-vm-to-enable-winrm)。直到这里一切都很好。下一个任务是 Azure 文件复制任务,它本质上是复制构建工件(来自$(System.DefaultWorkingDirectory)
)并粘贴到我指定的目录中。奇迹般有效。我的下一个任务是创建整个虚拟机的 VHD(基本上是在复制完成后)。
我知道我可以(再次)手动 RDP 进入虚拟机并且sysprep
(使用 oobe/generalize/shutdown),然后可能返回到 Azure 门户并磁盘导出操作系统磁盘(指定 SAS URL 过期时间为任意值(每篇文章 36000))但这一切都可以自动化吗?
所以,长话短说 - 我想知道是否sysprep oobe/generalize/shutdown
最好可以通过 PS 任务远程执行。我知道它的其他部分(导出磁盘和所有内容)可以,但是如果 sysprep 可以远程完成,那么就没有什么了。
我尝试了这个并得到了我想要的:
$sysprep= 'C:\Windows\System32\Sysprep\Sysprep.exe'
$arg1 = '/generalize'
$arg2 = '/oobe'
$arg3 = '/shutdown'
$arg4 = '/quiet'
& $sysprep $arg1 $arg2 $arg3 $arg4 -Wait
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)