0

在部署 Azure VM 角色之前,我们需要执行

%windir%\system32\sysprep\sysprep.exe /generalize /oobe /shutdown

但在我的情况下,sysprep 失败,日志文件 %windir%\system32\sysprep\Panther\setuperr.txt 说:

2012-07-05 08:03:57, Error      [0x0f0073] SYSPRP RunExternalDlls:Not running DLLs; either the machine is in an invalid state or we couldn't update the recorded state, dwRet = 31
2012-07-05 08:03:57, Error      [0x0f00ae] SYSPRP WinMain:Hit failure while processing sysprep cleanup external providers; hr = 0x8007001f

我并不总是想创建一个新图像。有什么解决办法吗?我按照此处MS 支持中的说明进行操作并尝试:

%windir%\system32\sysprep\sysprep.exe /generalize /oobe /shutdown /unattend:.\unattend.xml

那没起效。

在某些情况下,我需要从 azure 中删除 VM 映像并重新部署并进行更多更改。因此 sysprep 几乎每周必须运行两次。

4

3 回答 3

0

发现我们可以在 Windows 机器上运行 sysprep 的次数是有限的。在将其作为 Azure VM 角色上传之前,我犯了一个错误,即每次都保留一个图像并在其上运行 sysprep。这可能会导致 Windows 机器上的许可等失败。

所以我现在正在做的是保留一份未经过系统准备的 VHD 备份并对其进行更改。然后在运行 sysprep 之前再次进行备份。所以基本上Windows在上传之前只有效地进行了一次系统准备。它现在对我有用。

于 2012-08-28T21:58:52.030 回答
0

您是否尝试过使用用户界面?只需直接执行 sysprep.exe,就会打开一个 UI。

如果您必须使用控制台,可以尝试以评估的方式运行控制台。(以管理员身份运行)

于 2012-07-05T09:27:17.603 回答
0

您需要在 unattend.xml 文件中使用 SkipRearm。有关其位置的基本信息,请参阅http://technet.microsoft.com/en-us/library/cc722350(v=WS.10).aspx。SkipRearm 将允许您无限次地进行系统准备。

如果您不知道如何创建 unattend.xml 文件,那么您需要学习一些曲线。您还可以包含您的批量许可证密钥和自动激活以及许多其他无人值守功能。

但我不明白您为什么不概括和捕获 .wim 文件并重新部署该图像。再说一次,您处于 VM 模式,我对此知之甚少。也许您的 VM 软件捕获了您的 sysprep 分区,例如 imagex.exe 捕获了一个 .wim 文件。

如果您需要有关 unattend.xml 的更多帮助,请发布一个关于该问题的一般性问题,我们将尝试跳过该问题(当我拥有所有文档时)。

于 2013-05-25T01:52:27.287 回答