一、前提
- wmware开机自启,安装完毕wmware不用管,默认该软件以及相关服务就是开机自启
- 准备waware虚拟机(一般都linux,我用centos7,你随意)
二、脚本
脚本命令如下,等待30秒(给服务自启一些时间,严格意义讲,应该监测vmware是否启动,提供两个思路,可以监测vmware.exe,写法参考我这篇博客(http://t.csdn.cn/L6OCB)另外也可以监测服务端口,依据进程PID查询端口netstat -aon|findstr "6220" ),此处默认服务器正常
- cd到vmware安装目录,注意硬性dos语法,感觉像沙雕一样的写法,没有linux爽
- 运行wmware自带虚拟机启动方法(wmware软件自带vmrun.exe工具),启动多台你就写多行,我这就启动一台虚拟机
- 退出dos窗口
- 检查虚拟机是否自启
- 将该批处理文件(start-vm.bat),放在启动目录windows+r 运行shell:startup
@echo off color 0a echo wait 30s timeout 30 > NUL cd /d d:/vm echo begin start vmware vmrun start "D:\vm-os\cenos-new-154\cenos-new-154.vmx" echo exit bat exit
三、开机需登录才生效解决方案
- windows+r执行Gpedit.msc此处我只写一种方法,去掉ctl+alt+del解锁设定,如下图,弄成启用
- windows+r执行netplwiz,去掉必须输入密码进系统,让系统开机直接进来,不是删除密码
- 如果需要锁屏,批处理脚本加入如下命令,即可完成锁屏
rundll32 user32.dll,LockWorkStation
@echo off color 0a echo wait 30s timeout 30 > NUL cd /d d:/vm echo begin start vmware vmrun start "D:\vm-os\cenos-new-154\cenos-new-154.vmx" echo exit bat and win+L echo wait 30s timeout 30 > NUL rundll32 user32.dll,LockWorkStation exit