如何将VirtualBox VM作为无头服务器运行

日期: 2012-08-21 作者:Serdar Yegulalp翻译:王学强 来源:TechTarget中国 英文

VirtualBox VM作为无头服务器运行时可以让用户在不开启所有桌面端口的情况下启动和编辑虚拟机。   虚拟化管理员可能对无头服务器的概念并不陌生:没有显示器和其他显示硬件,完全通过网络进行访问的系统。默认情况下,VM和基于云的服务器都是无头的,但是桌面虚拟化赋予这个概念一个全新的含义。           Oracle VM VirtualBox大部分情况下作为桌面应用程序使用,这意味着所有和VirtualBox通讯的虚拟化系统都是通过产品的桌面端接口来实现的。

可以通过网络或者VirtualBox的远程显示工……

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

电子邮件地址不会被公开。 必填项已用*标注

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

VirtualBox VM作为无头服务器运行时可以让用户在不开启所有桌面端口的情况下启动和编辑虚拟机。

  虚拟化管理员可能对无头服务器的概念并不陌生:没有显示器和其他显示硬件,完全通过网络进行访问的系统。默认情况下,VM和基于云的服务器都是无头的,但是桌面虚拟化赋予这个概念一个全新的含义。
        
  Oracle VM VirtualBox大部分情况下作为桌面应用程序使用,这意味着所有和VirtualBox通讯的虚拟化系统都是通过产品的桌面端接口来实现的。可以通过网络或者VirtualBox的远程显示工具同虚拟化系统进行通讯,但是 通常情况下需要借助桌面端图形用户接口(GUI)来完成。然而,如果因为一些其他原因,你不想使用GUI来访问某个机器,那就没有必要启动它。否则,它能做的就只能是浪费内存资源和造成桌面端混乱。
   
  如果不想通过访问GUI来运行VM,那么VirtualBox提供了一个叫做VBoxHeadless的特殊管理应用程序。它是一个基于命令行的应用程序,用于在无头模式下启动VirtualBox VM和管理网络连接。
     
  在无头模式下启动VM

  VBoxHeadless 模式下没有VBoxManage中那么多管理选项,它只能在无头模式下进行开启、停止和管理VM连接的操作。

  比如,命令VBoxHeadless--startvm "VM name" 用于在无头模式下启动虚拟机。(如图1所示)

无头模式命令行工具可以启动这个主机名为“Linux test box”的VM
 
  图1 无头模式命令行工具可以启动这个主机名为“Linux test box”的VM

  当启动或者重新激活一个挂起的虚拟机时,VBoxHeadless将提供VM的状态信息,包括VM上哪个VRDP端口处于开启状态。(VRDP是VirtualBox远程桌面协议,微软远程桌面协议的扩展版本。)如果你想知道为什么一台VM不能启动,这些信息将会有所帮助。

  当启动VM之后,VBoxHeadless继续在控制台中运行,意味着它将不会将对话返回到命令行当中。在这里你需要做的全部事情就是通过VRDP连接VM。
       
  当你在无头模式下启动VirtualBox VM之后,它们会自动被分配VRDP连接端口,即便之前你没有为VM设定过。如果你希望提前为VM分配一个VRDP端口(比如为了防止端口地址冲突问题),可以采用以下两种方法之一来实现:通过常规的VirtualBox GUI(可以通过GUI编辑VRDP连接信息,而不必挂起或关闭VM),或者通过“VBoxHeadless--e”命令来实现。通常,我会使用GUI来设定VRDP连接信息,因为相对比较简单。
        
  在一些情况下,你可能希望在任何时候都不要开启VRDP连接端口,比如你只想通过SSH协议或者 网络接口来访问VM。当在VirtualBox中以无头模式启动VM时,可以在VBoxHeadless中使用--vrde=off命令强制关闭VRDP连接。

  更改无头VirtualBox VM
        
  如你所想,无头服务器并不一定需要VirtualBox GUI。但是,如果在运行无头服务器时开启VirtualBox GUI,你就可以编辑它的属性和在预览区域中查看VM的缩略试图显示(如图2所示)。如果是以命令行方式启动的Linux服务器,你就能在屏幕上看到命令行显示。除此之外,如果你通过VRDP方式连接, 你还能够借助本地控制台和VM中的命令行进行通讯。

当服务器发生任何改动时,这个缩略图将实时更新 
  当服务器发生任何改动时,这个缩略图将实时更新

  
  如果你有一个运行在无头模式下的VM,但是想在本地打开一个连接到它的GUI,你可以在命令行方式下挂起VM,然后通过VirtualBox的GUI方式恢复。这种方法可以在桌面端开启到虚拟机的接口。你也可以反向实施相同的过程:在VirtualBox GUI中挂起VM,之后使用VBoxHeadless将其恢复。
         
  这样做并不会引起VM的硬件连接断开,像显示中断和重新连接。即使在没有GUI的情况下,VM中的虚拟显示硬件也一直保持着运行状态。可以将它想象为显示器的开启和关闭,而不是断开连接。
        
  最后,你应该知道VBoxManage命令行应用中的命令a-type可以用来在无头模式中调用VM。如果你想要用这种方式开启无头VM,可以使用如下的命令:VBoxManage startvm "name of VM"--type headless。

作者

Serdar Yegulalp
Serdar Yegulalp

Serdar Yegulalp从1994年到2001年为Windows杂志写作,覆盖了广泛的技术方面。他现在是《The Windows 2000 Power Users Newsletter》一书的出版者,辛勤钻研他擅长的Windows NT, Windows 2000 and Windows XP领域,并为TechTarget写专栏。

翻译

王学强
王学强

TechTarget特邀编辑,毕业于计算机专业,现任职于外企IT分析师,负责网络、防火墙和服务器等系统运维工作,对虚拟化、网络安全和渗透测试拥有浓厚兴趣,工作外热爱旅行、汽车和健身。

相关推荐