channy14

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

【来自同事笔记分享】

背景:很多时候宿主机会因为各种原因导致关机或重启,但是里面配置的各个虚拟机不会随宿主机启动而启动,而是需要人为的再去一个一个的操作,无疑会对工作造成一定的影响

因此,正文来了:

VMware虚拟机中有个自带的vmrun命令,该命令不论是windows还是linux都是支持的,主要语法如下:
 
基本命令:
 
# vmrun -T ws start "/opt/VMware/win2k8r2.vmx" nogui    ---启动无图形界面虚拟机  (-T 是区分宿主机的类型,ws|server|server1|fusion|esx|vc|player,可能比较常用的是ws、esx和player,不过我没有加-T在Workstation也能正常运行, 可能esx和server就需要了)
 
# vmrun start "/opt/VMware/win2k8r2.vmx" gui     ---启动带图形界面虚拟机
 
# vmrun stop "/opt/VMware/win2k8r2.vmx"hard | soft    ----强制关闭虚拟机(相当于直接关电源) | 正常关闭虚拟机
 
# vmrun reset "/opt/VMware/win2k8r2.vmx" hard | soft   ----冷重启虚拟机 | 热重启虚拟机
# vmrun suspend  "/opt/VMware/win2k8r2.vmx" hard | soft   ---挂起虚拟机(可能相当于休眠)
 
#  vmrun pause  "/opt/VMware/win2k8r2.vmx"   ---暂停虚拟机
 
#  vmrun unpause  "/opt/VMware/win2k8r2.vmx"   ---停止暂停虚拟机    
 
# vmrun list   ---列出正在运行的虚拟机
 
# vmrun -T ws snapshot "/opt/VMware/win2k8r2.vmx" snapshotName   ----创建一个快照
 
# vmrun -T ws reverToSnapshot "/opt/VMware/win2k8r2.vmx" snapshotName    -----从一个快照中恢复虚拟机
 
# vmrun -T ws listSnapshots "/opt/VMware/win2k8r2.vmx"   ----列出虚拟机快照数量及名称
 
# vmrun -T ws deleteSnapshot "/opt/VMware/win2k8r2.vmx" snapshotName    ---删除一个快照
 
示例:
1、windows
首先我们可以用vmrun list查出要目前正在运行的虚拟机
然后我们可以新建一个bat脚本,然后添加系统开机启动就可以,脚本如下
然后把脚本放到如下目录(win10亲测可用),有其他启动方法也可以用
C:\Users\xuwb\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup
 
2、linux
一样先查出原来机器上运行的虚拟机
 
然后,把启动命令加入到/etc/rc.d/rc.local,如下,centos6.5亲测可用
 
3、备注
1)虚拟机vmx的路径支持空格及其他特殊字符,start命令中不需要转义,直接复制list显示的就可以
2)nogui这个一定要加,否则开机起不起来
3)这种方式启动的是无图形界面的,如果要看图形界面,自己再手工打开VMware即可
posted on 2018-11-20 17:34  channy14  阅读(1903)  评论(0编辑  收藏  举报