如何将VBoxHeadless发送到后台,以便我可以关闭终端?

我想以无头模式启动虚拟机。优点是:我可以从桌面注销,而机器将继续运行。然而,启动虚拟机会阻止终端关闭。有没有聪明的解决方案,让一切都像后台服务一样?如果我执行'sudo service ntp start',它会启动,然后我可以关闭终端。我可以这样做,但我对此不满意:
  • nohup VBoxHeadless -s "MyGuest" &
  • 从登录shell(tty1-6)登录,该shell配备了Byobu,启动虚拟机,而不是注销,我可以使用F6分离。
有更好的方法吗?
2个回答

刚刚在这里找到了一个解决方案:使用VBoxManage而不是VBoxHeadless启动虚拟机可以解决我的问题。
VBoxManage startvm <uuid|vmname> --type headless

例如,如果您的虚拟机名称是Ubuntu,并且其UUID为865b2700-471a-11e4-916c-0800200c9a66,您可以运行以下命令:
VBoxManage startvm Ubuntu --type headless

或者

VBoxManage startvm 865b2700-471a-11e4-916c-0800200c9a66 --type headless

注意:如果您的虚拟机名称包含空格,请用引号括起来(例如"我的 Ubuntu")。
这台机器很好地融入了背景。现在我可以通过VBoxManage controlvm poweroff/pause/reset(第3.3节)来控制虚拟机。

1不错的技巧。即使你启动了一个VBoXHeadless虚拟机,你仍然可以使用VBoxManage controlvm来控制它。 - Javier Rivera
太棒了!对于那些不知道的人,这是命令:VBoxManage startvm Crunchbang --type headless - blockloop