Windows下VMware Workstation虚拟机自动开关机

企业需求:

       虽然Windows下的vmware workstation在企业里面相对应用的少,但是也会有存在使用的可能性,今天一个朋友和我说,现在公司里面搞了一个服务器装了一个vmware workstation里面有很多虚拟机,但是发现有一个问题,就是在关闭宿主机的时候,里面的虚拟机不能够正常开关机,造成内部系统或数据损坏,而且每次宿主机自动启动以后,不登录系统人为启动对应的虚拟机,虚拟机不会自动启用,这很是麻烦,怎么解决了?

       经过查看一此相关资料与官方知识库,做了一系列的测试,成功的测试出了上续需求,在这里共享出现,希望有需要的朋友可以试一下。

解决方法:

Windows 2003 OR XP 虚拟机在寄宿主机关机之前关闭虚拟机

       执行“gpedit.msc”,逐级打开“本地计算机策略”-->“计算机配置”-->“Windows设置”-->“脚本”,在窗口右栏中点击“关机”,把需要执行的关机或挂起命令写入一个 .bat 批处理程序中,添加到这里即可。

       需要说明的是,系统关机脚本的执行时机是系统注销所有用户登录后、系统关机之前,因此,对于从Windows登录用户界面启动的虚拟机,这些命令是不会起作用的,因为在用户注销的时候,Windows系统已经自动停止了用户的虚拟机进程。

Windows7虚拟机在寄宿主机关机之前关闭虚拟机

在win7环境中,在执行关机脚本之前,win7会强制终止所有非系统进程,关机脚本还是不会发生作用。这是可以修改如下设置:

执行“gpedit.msc”,逐级打开“本地计算机策略”-->“计算机配置”-->“管理模板”-->“系统”-->“关机选项”,将“关闭会阻止或取消关机的应用程序的自动终止功能”策略启用,即可让我们设定的用于关闭虚拟机的Windows关机脚本生效。

相关脚本:

1、系统自动启动VMware虚拟机

"C:\Program Files\VMware\VMware Workstation\vmrun.exe" -T ws start "D:\system\Windows XP Professional\Windows XP Professional.vmx"

2、系统自动关闭VMware虚拟机

"C:\Program Files\VMware\VMware Workstation\vmrun.exe" -T ws stop "D:\system\Windows XP Professional\Windows XP Professional.vmx" soft

3、系统自动挂起VMware虚拟机

"C:\Program Files\VMware\VMware Workstation\vmrun.exe" –T ws suspend "D:\system\Windows Server 2003 Enterprise Edition\Windows Server 2003 Enterprise Edition.vmx"

4、系统自动重启VMware虚拟机

"C:\Program Files\VMware\VMware Workstation\vmrun.exe" -T ws reset "D:\system\Windows XP Professional\Windows XP Professional.vmx“

5、系统自动暂停VMware虚拟机

"C:\Program Files\VMware\VMware Workstation\vmrun.exe" -T ws pause "D:\system\Windows XP Professional\Windows XP Professional.vmx"

6、系统自动暂停恢复VMware虚拟机

"C:\Program Files\VMware\VMware Workstation\vmrun.exe" -T ws unpause "D:\system\Windows XP Professional\Windows XP Professional.vmx"