当前位置:首页 > 虚拟机 > 正文

虚拟机怎么保持一直运行


一、如何在windows7下实现virtualbox虚拟机开机后台自启动GuestOS:Ubuntu、Windows/>虚拟机软件:VirtualBox-4.0.2-69518-Win
用途:开机后自动在后台运行虚拟机,只有进程,不显示GUI界面。
由于VMwareServer2仅支持Windows2008服务器系统,Windows7系统即使可以安装也不适合使用,
可能会出现问题。VMwareWorkstation不是免费的,不具备后台运行虚拟机的功能。
只能使用第三方软件将虚拟机作为系统服务启动或者设置“开机后后台运行”关闭”被激活。虚拟机使用批处理来启动虚拟机,然后杀死进程或使用计划任务。所以选择免费使用
VirtualBox。
后台启动VirtualBox虚拟机有两个命令:
VBoxHeadless-s|--startvm|[--vrde=on|off|config]
在VirtualBox1.6之后的版本中,VBoxVRDP只是VBoxHeadless的快捷方式,不再是一个单独的命令。
为了防止VRDP端口(虚拟机设置中的远程桌面)被外界访问,使用--vrde=off参数且虚拟机使用桥接网络
虚拟机系统自带的不受此参数影响。
VBoxManage[-q|--nologo]startvm|[--typegui|sdl|noheader]
允许使用以下值:
gui-启动虚拟机并显示GUI窗口。这是默认设置。
headless-StartsaVMwithoutawindowforremotedisplayonly。
启动虚拟机的脚本(虚拟机名称为XP):
@echooff
::byoicu
cd/d"D:\ProgramFiles\Oracle\VirtualBox"
VBoxHeadless--startvm"XP"
::VBoxManagestartvm"XP"--typeheadless
如果我直接启动脚本组(包括将脚本放在“启动”中),无论使用哪个命令启动虚拟机,都会出现无头cmd窗口,无法使用start“”消除。虚拟机也退出了,而且是非正常关闭。可以同时启动多个虚拟机系统。
关闭虚拟机的脚本:
@echooff
::byoicu
cd/d"D:\ProgramFiles\Oracle\VirtualBox"
VBoxManagecontrolvm"XP"acpipowerbutton
::send{Enter}teVM,forWindowsGuestOSonly.
VBoxManagecontrolvm"XP"keyboardputscancode1c
在用户组策略中打开,退出脚本,添加以上2条分别是脚本。这里无法使用计算机启动/关闭脚本经过测试,由于SYSTEM用户执行的脚本无法访问网络等权限,导致虚拟机无法启动。使用登录脚本启动虚拟机不会显示headlesscmd窗口(系统组策略默认隐藏运行脚本)且任务调度方式未测试。
远程登录Windows虚拟机后,如果没有远程注销,则无法使用关闭虚拟机脚本关闭虚拟机
原因是当计算机处于关闭状态时shutdown时,会提示“其他用户已登录到这台计算机,关闭WINDOWS将导致他们丢失数据。是否要继续关闭导致acpi关闭方法失败?”在来宾系统上运行关闭/退出脚本时,使用
shutdown-s-t0也没有效果。解决办法是向虚拟机发送回车键来模拟“确定”操作,当然也可以使用shutdown远程关闭系统,但配置和操作比较麻烦。
当虚拟机为Linux时,避免使用和交替登录。
这个答案不容易,希望对您有帮助,如果您满意,请帮忙采纳。