如果计算机的快照超过 30 天,会遇到该问题。有关详细信息,请参见 http://support.microsoft.com/kb/154501
检验在 Virtual Infrastructure Client 中是否为 ESX 服务器正确配置了网络接口。
如果为 ESX 服务器正确配置了网络接口:
验证网络适配器在模板中是否已启用并是否已连接到正确的网络。
验证在将要运行虚拟机的子网上是否正在运行一个配置正确且租用期足够长的 DHCP 服务器。
请参见联机 VMware 文档,可通过以下网址获得:http://www.vmware.com/support/pubs/vi_pubs.html
检验是否在“系统属性“对话框的“远程“选项卡中启用了“远程桌面连接“。
如果已启用,该问题可能与您的网络设置有关。
验证是否可以从运行远程桌面连接客户机的 Windows 计算机中访问虚拟机的子网。
如果您已为虚拟机设置专用网络,则可能无法从不属于该网络的计算机访问虚拟机。
检验是否还有足够的磁盘空间供这些虚拟机使用。
根据池的回收策略,在新创建的虚拟机可供用户使用之前,将创建快照。此操作需要足够的磁盘空间。
验证 Windows 客操作系统实例的 RDP 端口(通常为 3389)是否处于开放状态。
在新创建的虚拟机可用之前,Virtual Desktop Connector 会检验能否与虚拟机建立 RDP 通信。以下问题可能会导致无法完成测试:
虚拟机位于专用网络上,并且无法通过 Virtual Desktop Connector 进行访问。请检验网络配置。
Windows 客 OS 上的远程访问处于禁用状态。
Windows 客操作系统的防火墙设置不允许进行 RDP 连接。
为了确定一个新虚拟机是否可以使用,Oracle VDI 将尝试打开一个与其连接的 RDP 连接。在某些情况下,特别是当您针对 Vista 使用定制 VM 模板时,RDP 可能会在构建过程完成之前变得可用;但是,在构建过程完成之前变得可用的虚拟机将无法使用。
以下程序说明了如何设置自定义虚拟机模板 VMware 定制规范来更正此问题。需要在虚拟机模板中禁用 RDP,并且当完成克隆后,RDP 不会被防火墙阻止。
还包括针对 Windows XP VM(步骤 3)和 Windows Vista 或 Windows 7 VM(步骤 4)手动执行 Sysprep 的准备。
确保在 Windows“控制面板“的“系统属性“对话框中,取消选中“远程“部分中的远程桌面复选框,从而禁用 RDP。
如果您使用的是 Windows 防火墙,请确保在防火墙“例外“下选中了“远程桌面“项。
在 C: 中创建一个名为
enableRdp.reg
的注册表文件,其中包含以下内容:
REGEDIT4 [HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlTerminal Server] "fDenyTSConnections"=dword:00000000
在 Sysprep 流程结束时使用
enableRdp.reg
文件,以在 Windows
注册表中启用 RDP。
要在 Windows XP 中手动执行 Sysprep,请在“安装管理器“工具中的“其他命令“下面包括以下内容:
regedit /s C:enableRdp.reg
“安装管理器“工具用于为 Sysprep 创建应答文件。
要在 Windows Vista 或 Windows 7 中手动执行 Sysprep
和定制规范,请在
%WINDIR%SetupScripts
目录中创建一个名为
SetupComplete.cmd
的批处理文件,其中包含以下内容:
regedit /s C:enableRdp.reg
Windows Vista 会查找
%WINDIR%SetupScriptsSetupComplete.cmd
并在每个设置过程(包括
Sysprep)结束时执行该文件。%WINDIR%
的默认设置是 C:Windows
。
如果您在暂停虚拟机或关闭其电源时没有先关闭 RDP 连接,则客操作系统将停止,但 RDP 连接仍会保持活动状态。其结果便是一个不响应的窗口,其中显示您的 Windows 会话的最后一个已知状态。下列步骤说明了如何在 Virtual Infrastructure Client 和客 OS 上设置“运行 VMware 工具脚本 (Run VMware Tools Scripts)“面板来避免此问题。
在 Virtual Infrastructure Client 上配置“运行 VMware 工具脚本 (Run VMware Tools Scripts)“面板。
选择特定 VM 的“编辑设置 (Edit Settings)“以初启“虚拟机属性 (Virtual Machine Properties)“页面。
单击“选项 (Options)“选项卡。
选择“VMware 工具 (VMware Tools)“。
在这里可以修改电源控制按钮的行为(启动、停止、暂停和重置)。
在“关闭“开关(红色矩形)旁边,选中“关闭客操作系统“。
这允许在按下电源控制按钮时客 OS 正常关闭。
在“运行 VMware 工具脚本 (Run VMware Tools Scripts)“面板中,选中“在关闭之前 (Before Powering Off)“复选框。
重复上面的步骤 a 至步骤 e,以便在客 OS 上配置“运行 VMware 工具脚本 (Run VMware Tools Scripts)“面板。
在客 OS 上修改
poweroff-vm-default.bat
脚本。
在客操作系统上,安装位置通常为
C:Program FilesVMwareVMware
Tools
,其中包含以下默认脚本:
poweroff-vm-default.bat poweron-vm-default.bat resume-vm-default.bat suspend-vm-default.bat
向 poweroff-vm-default.bat
脚本中添加 tsdiscon.exe
。
当从 VMware Infrastructure Client 关闭 VM
时,将首先执行
poweroff-vm-default.bat
脚本。该脚本现在将调用
tsdiscon.exe
,后者将关闭所有处于打开状态的
RDP 连接。
使用具有多个网络接口的虚拟机可能会出现问题。Oracle VDI 希望 RDP 在主接口上可用。如果 RDP 实际上是在其他接口上运行,那么该虚拟机可能未准备好或无法分配给用户。
在确定正确的主接口时出现问题。VMware 文档会使我们认为是在 Windows 中列出的主接口。但是,情况并非如此。事实上,主接口是按 VMware vCenter 中网络适配器的顺序确定的。具有最高数值的网络适配器(通常是最近添加的适配器)是主网络适配器。
要更改主适配器的网络,请执行以下操作:
在 VMware vCenter 中编辑虚拟机设置。
选择具有最高数值的网络适配器,例如网络适配器 3。
这是主网络接口。将网络标签更改为相应的 RDP 网络。
您可能需要调整其他网络适配器,以使虚拟机分配到所有正确的网络。
验证 Windows 客操作系统上的“电源选项“是否已配置为在其空闲时进入待机状态。
验证 Windows 客操作系统上是否安装了 VMware 工具和 Virtual Desktop Connector 工具以及这些工具是否正在运行。
查看 Windows 事件日志,了解这些工具是否有任何问题。
如果您从以前版本的 Oracle VDI 中导入了桌面,请验证桌面是否使用的是最新版本的 Oracle VDI 工具。打开桌面控制台,转至“控制面板“>“添加或删除程序“。打开 Oracle VDI 工具的支持信息。工具的版本号必须与 Oracle VDI 版本号匹配。
验证虚拟机是否配置为在其待机时进入暂停状态。
查看“虚拟机“设置(“选项“/“电源管理“),确保“暂停虚拟机“项处于选中状态。
验证当该计算机未使用时,Windows 客操作系统实际上进入待机状态并且虚拟机暂停。
如果您在 Windows XP 中使用待机功能时遇到问题,请访问 http://www.terranovum.com/projects/energystar/ez_gpo.html。EZ GPO 包含针对电源选项的一个组策略。