在Windows 2008R2上将VMware的虚拟机做成服务,实现开机自动启动虚拟机

阅读更多

 由于需要进行不同系统下的软件测试, 在Windows测试服务器上装有多种系统的虚拟机, 每次Windows服务器重启总是要连上远程开虚拟机, 但照着做还是出现了一些问题, 很多帖子都没有提到, 不过还是最终搞定了. 避免今后忘记, 又走弯路, 特此记录如下.

 

第一步:安装Window Server 2003 Resource Kit Tools微软官方下载 

      要使用该工具包中的instsrv.exe和srvany.exe工具.  (其中instsrv.exe是创建windows服务的工具, ; srvany.exe是将exe执行文件当做系统服务运行的一个工具). 在windows server 2008中安装时提示兼容性问题, 不管它继续安装. (假设安装到C:\tools目录下).

 

第二步:安装VMware-workstation-full-12.1.1-3770994,Vmware官方下载 

 

     安装VMware workstation时,一定要选择“以管理员身份运行”,否则后面会出现无权启动虚拟机的问题。

 

 第三步:添加一个虚拟机,此处以CentOS6为代表,安装到D:\VMS\CentOS6

 

 

第四步:打开CMD命令行,添加一个Windows服务,此处以:VMware_AutoStart为例。

         

 

C:\tools\instsrv.exe VMware_AutoStart C:\tools\srvany.exe   

 

 

 

 第五步: 修改注册表, 设置具体启动虚拟机的指令给VMware_AutoStart服务

 

       运行regedit打开注册表,

     HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\VMware_AutoStart,(其中VMware_AutoStart是给定的服务名, 如果你命名为不同的名称请找到相应的项). 

 

     在vmautorun项下创建一个新的项Parameters

    

 

       打开新的项Parameters, 在Parameters项里新建一个字符串值, 数值名称为Application,

      数值数据为vmrun -T ws start "D:\VMS\CentOS6\CentOS6.vmx" nogui  

   (vmrun.exe文件在VMWare安装目录下, 为了方便,需要设置该目录到PATH环境变量, 此处数值数据也可以使用 vmware -x "d:\VMs\CentOS\centos.vmx" )

   (也可以直接写:D:\VMware\VMware Workstation\vmrun.exe -T ws start "D:\VMS\CentOS6\CentOS6.vmx" nogui)

 

第六步:为服务添加依赖服务

 

 

        最关键的一步来了, (很多帖子上都没有这一步, 是成功的关键), 设置服务的依赖服务

        打开VMware_AutoStart项,  新建一个多字符串值项, 命名为DependOnService, 值为VMwareHostd

第七步: 运行services.msc打开系统服务列表, 选择VMware_AutoStart服务, 打开服务属性, 在登录页中选择本地系统账户,并勾选允许服务与桌面交互.

 

第八步:重启服务器, 进行测试。

 

 

 

你可能感兴趣的:(vmware)