wangchenxicool

博客园 首页 联系 管理

不可避免,企业的服务器不会象我们预想的那样一年365天不间断的运行。可能公司突然停电,或者服务器突然无故重启,这些情况都会造成电脑内的虚拟机开机不再运行。而如果此时系统管理员正好离开,那这个后果也就不言而喻了。

所以,实现虚拟机开机自动启动,可以说是实现公司服务器正常运行的一个不可或缺的环节。

实现其开机自动启动步骤其实很简单。这里用到的是微软的两个小工具。instsrv.exe和srvany.exe

微软对instsrv.exe的官方说明如下:

Installs and uninstalls executable services and assigns names to them. 也就是个加载services的小东东。

其用法如下:instsrv <service name> <srvany path> (这里的srvany path也就是工具srvany.exe的路径了)

解释下,srvany.exe是微软出的用于将一个程序注册为一个服务的小程序。它可以实现讲任何程序设置成服务启动。具体用法可以自己想下哦。

解释完毕,现在来实际的操作了吧。


1.讲所需要的工具instsrv.exe和srvany.exe放在一个文件夹内,在这我放在d:\tools中吧。

2.需要了解vmware.exe的安装路径,以本机为例:D:\VMware Workstation\vmware.exe
要启动的虚拟机配置文件路径,我的2003虚拟机的配置文件windows2003.vmx的路径是D:\vmare\windows2003\windows server 2003.vmx

3.新建服务

假设服务名为vm_autostart,所以我的命令行是:

instsrv VM_AutoStart  D:\tools\srvany.exe

4.注册服务

在注册表中,定位到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\vm_autostart
新建项:"Parameters"
在"Parameters"项里面,新建字符串"Application",
字符串的值:
"D:\VMware Workstation\vmware.exe" -x "D:\vmare\windows2003\windows server 2003.vmx"

(如果你想要开机加载两个虚拟机系统,只需要在其后再添加一个虚拟机配置文件路径即可)

5.设置虚拟机启动状态

管理工具-服务,选择vm_autostart的属性-登录,选中“本地系统帐户”,并勾选“允许服务与桌面交互”,这样,你的电脑开机后就会出现vmware的启动界面了。

或者:

"c:\program files\vmware\vmware workstation\vmware.exe" -x e:\vm\ untu.vmx
做成bat或者cmd,放到计划任务中

另外附上instsrv的简单用法教程

我们在d盘建一个ipcpu.bat

内容:at 21:26 shutdown -s -t 200

然后添加服务:

(先把instsrv.exe放到C:\Program Files,当然,别的地方也行)

C:\Program Files>instsrv.exe ipcpu “d:\ipcpu.bat”

The service was s?ssfuly added!

Make sure that you go into the Control Panel and use

the Services applet to change the Account Name and

Password that this newly installed service will use

for its Security Context.

我们用services.msc打开服务管理可以看到,默认是关闭的,记着打开!

删除服务:C:\Program Files>instsrv.exe   ipcpu  REMOVE 

posted on 2012-06-18 19:52  wangchenxicool  阅读(2156)  评论(0编辑  收藏  举报