此文章发布于72个月前,部分信息可能已经过时,请自行斟酌确认。
此教程可实现:Windows 系统开机后不需要登录到用户桌面即可启动指定的 VMware 虚拟机。
1、工具准备
需要的工具 instsrv.exe 和 srvany.exe
instsrv.exe.exe 和 srvany.exe 是 Microsoft Windows Resource Kits 工具集中的两个实用工具,这两个工具配合使用可以将任何的 exe 应用程序作为 windows 服务运行。
参考链接:instsrv.exe 和 srvany.exe 注册服务教程
2、VMware 命令行
首先找到 VMware 的安装路径,如本机为例:C:\Program Files (x86)\VMware\VMware Workstation\vmware.exe
然后找到要开机启动的虚拟机配置文件路径,我的 ubuntu 虚拟机的配置文件路径是:F:\VMWare\Ubuntu 18.04 x64 Server\Ubuntu 18.04 x64 Server.vmx
3、配置服务
1) 我这里将服务名设置为 vm-ubuntu,执行以下命令: instsrv vm-ubuntu "D:\Program Files\instsrv\srvany.exe"
2) 在注册表中,定位到:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\vm_ubuntu
3) 新建项:Parameters
在Parameters项里面,新建字符串Application,字符串的值:"C:\Program Files (x86)\VMware\VMware Workstation\vmware.exe" -x "F:\VMWare\Ubuntu 18.04 x64 Server\Ubuntu 18.04 x64 Server.vmx"
提示:如果想要开机加载两个虚拟机系统,只需要在其后再添加一个虚拟机配置文件路径即可。
4) 设置虚拟机启动状态
管理工具-服务,找到vm_ubuntu设置为自动启动。
有网上说将属性-登录设置为本地系统帐户,并勾选允许服务与桌面交互,这样电脑开机后就会出现 vmware 的启动界面了。我测试没有效果。
4、相关问题
使用中发现两个问题:
1、服务方式启动后,再打开 vmware 不会显示在运行,并且也无法操作,提示被占用。
2、服务停止后,虚拟机其实还在运行着。
我的解决方案:
1、虚拟机运行的 Linux 通过 SSH 管理,不使用 VMware 管理。
2、停止虚拟机的方法:通过 ssh 命令关机,然后再停止 Windows 服务,之后打开 VMware 就可以正常维护操作了。