我在Windows Server 2016中运行VirtualBox。我希望在Windows启动时启动VirtualBox和VM。我已经看到一些关于在Windows启动时启动VB的帖子,但我没有得到它的工作。即使我这样做了,也不会自动启动VM。我觉得必须有办法做到这一点,但几个小时的谷歌搜索还没有找到方法。
答案 0 :(得分:12)
我有一个如何在Windows启动期间自动启动VirtualBox VM的示例。我正在运行Windows 10,但在Windows Server 2016上应该没有太大差别。
我系统上的启动文件夹是:
C:\ Users \ chriwill \ AppData \ Roaming \ Microsoft \ Windows \ Start Menu \ Programs \ Startup
在该文件夹中,我放置了一个批处理文件kubuntu.bat
,内容如下:
"C:\Program Files\Oracle\VirtualBox\VBoxManage.exe" startvm kubuntu --type headless
在我的示例中,VM名为kubuntu
。你必须为你的实例改变它。
<强> ADDON:强>
如果您需要帮助在Windows实例上找到启动文件夹,请按键WINDOWS+R
并输入shell:startup
。
参考:https://www.virtualbox.org/manual/ch08.html#vboxmanage-startvm
答案 1 :(得分:3)
我需要一个运行为服务的虚拟机(可以在用户首次登录之前从网络上获得),因此fanxings' answer是几乎理想的解决方案。
问题是VBoxManage启动虚拟机,然后直接退出。因此,服务管理器尝试再次运行它。然后再次。再来一次……
我已经用一个小的批处理文件解决了这个问题:
"C:\Program Files\Oracle\VirtualBox\VBoxManage.exe" startvm zztop --type headless
pause
然后使用nssm
将此批处理文件作为服务安装。这解决了使用GUI关闭虚拟机的问题,例如用于更改配置-并防止在系统日志中显示多个错误消息。
答案 2 :(得分:3)
预定任务。在操作下,程序/脚本
"C:\Program Files\Oracle\VirtualBox\VBoxManage.exe"
在参数下
startvm Pihole --type headless
答案 3 :(得分:1)
添加计划任务是一个不错的选择。有很多选择如何预热。
您可以选择在启动时运行任务,而不用考虑用户登录。
答案 4 :(得分:1)
Oracle VirtualBox 6.1.16 支持 automatic startup via a windows service,无需第三方脚本或软件。这些是我遵循的步骤。在整个过程中将我的登录信息替换为您的登录信息。
C:\Users\Tim\.VirtualBox\autostart.properties
中创建配置文件:
# Default policy is to deny starting a VM, the other option is "allow".
default_policy = deny
# Bob is allowed to start virtual machines but starting them
# will be delayed for 10 seconds
Tim = {
allow = true
startup_delay = 10
}
VBOXAUTOSTART_CONFIG
添加环境变量并将其设置为 C:\Users\Tim\.VirtualBox\autostart.properties
。cd "C:\Program Files\Oracle\VirtualBox"
.\VBoxAutostartSvc.exe install --user=Tim
.\VBoxManage.exe modifyvm "Peppermint x64" --autostart-enabled on
VirtualBox Autostart Service tim@tim-pc
应用中查找 Services
服务。Event Viewer
应用程序中的错误。错误说明位于“详细信息”标签下。答案 5 :(得分:1)
如果不对您的系统使用第三方包装器(读作:另一个故障点),就不可能将您要求的作为服务实现。但是,您可以通过任务调度程序轻松地将此作为任务实现,该任务调度程序将在每次系统启动/启动时在用户登录之前运行
相关信息可以在我的回答中找到: https://stackoverflow.com/a/67305645/5387389
答案 6 :(得分:0)
对我有用的是
答案 7 :(得分:0)
您可以使用NSSM为它创建服务,例如:
打开cmd
cd /d A:\programs\nssm-2.24\win64
nssm.exe install kubuntu
填写表格:
# Application Tab
Application Path: C:\Program Files\Oracle\VirtualBox\VBoxManage.exe
Startup directory: C:\Program Files\Oracle\VirtualBox
Arguments: startvm "kubuntu" --type headless
# Details Tab
Display name: kubuntu
点击“完成安装服务”。
答案 8 :(得分:0)
如果您想在不登录系统的情况下运行虚拟机,您可以使用 VBoxVmService 实用程序,它以无头模式将一台或多台虚拟机作为 Windows 服务运行,并在启动时自动启动。>