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

由于需要进行不同系统下的软件测试, 在Windows测试服务器上装有多种系统的虚拟机, 每次Windows服务器重启总是要连上远程开虚拟机,解决如下。

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

http://www.microsoft.com/en-us/download/details.aspx?id=17657
1
要使用该工具包中的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时,一定要选择“以管理员身份运行”,否则后面会出现无权启动虚拟机的问题。
第三步:安装VMware-workstation-full-12.1.1-3770994,Vmware官方下载

添加一个虚拟机,此处以CentOS6为代表,安装到D:\VMS\CentOS6
第四步:打开cmd命令行,添加一个Windows服务,此处以:VMware_AutoStart为例

C:\tools\instsrv.exe VMware_AutoStart C:\tools\srvany.exe
1
第五步:打开cmd命令行,添加一个Windows服务,此处以: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服务, 打开服务属性, 在登录页中选择本地系统账户,并勾选允许服务与桌面交互.

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

 

使用这个方式,如果,网络环境IP变动,需要登录查看虚拟机的ip,用下面的方式:

当强行把VM软件关闭后,下次打开时会出现错误“以独占方式锁定此配置文件失败。可能其它正在运行VMware进程在使用此配置文件”。

办法:
首先删除虚拟机Ubuntu系统目录下的三个以.lck结尾的文件夹,
之后windows下任务管理器,结束进程vmware-vmx.exe 这条就可以了。
即可。

———————
作者:IThelei
来源:CSDN
原文:https://blog.csdn.net/IThelei/article/details/54950256
版权声明:本文为博主原创文章,转载请附上博文链接!