VBoxHeadless - 在无头 Ubuntu 16.04 LTS 服务器上使用 VirtualBox 5.1 运行虚拟机VBoxHeadless - 在无头 Ubuntu 16.04 LTS 服务器上使用 VirtualBox 5.1 运行虚拟机VBoxHeadless - 在无头 Ubuntu 16.04 LTS 服务器上使用 VirtualBox 5.1 运行虚拟机VBoxHeadless - 在无头 Ubuntu 16.04 LTS 服务器上使用 VirtualBox 5.1 运行虚拟机
  • 文章
  • 正则表达式
    • 工具
  • 登录
找到的结果: {phrase} (显示: {results_count} 共: {results_count_total})
显示: {results_count} 共: {results_count_total}

加载更多搜索结果...

搜索范围
模糊匹配
搜索标题
搜索内容
发表 admin at 2025年2月28日
类别
  • 未分类
标签

VBoxHeadless - 在无头 Ubuntu 16.04 LTS 服务器上使用 VirtualBox 5.1 运行虚拟机

本教程适用于这些操作系统版本

  • Ubuntu 16.04(Xenial Xerus)
  • Ubuntu 14.04 LTS(Trusty Tahr)

在此页

  1. 1 条初步说明
  2. 2 安装 VirtualBox
  3. 3 在命令行中使用 VirtualBox
    1. 3.1 创建虚拟机
    2. 3.2 导入现有虚拟机
    3. 3.3 使用 VBoxHeadless 启动虚拟机

    1. 4.1 视窗
    2. 4.2 Ubuntu 桌面
    3. 4.3 如果远程桌面连接不工作...

    本指南介绍了如何在无头 Ubuntu 16.04 服务器上使用 VirtualBox 5.1 运行虚拟机。通常您使用 VirtualBox GUI 来管理您的虚拟机,但服务器没有桌面环境。幸运的是,VirtualBox 附带了一个名为 VBoxHeadless 的工具,它允许您通过远程桌面连接连接到虚拟机,因此不需要 VirtualBox GUI。

    1 初步说明

    我已经在 IP 地址为 192.168.1.100 的 Ubuntu 16.04 服务器(主机系统)上对此进行了测试,我以普通用户(本例中的用户名管理员)而不是 root 身份登录。

    2 安装虚拟机

    要在我们的 Ubuntu 16.04 服务器上安装 VirtualBox 5.1,我们打开 /etc/apt/sources.list...

    sudo nano /etc/apt/sources.list

    ...并向其中添加以下行:

    deb http://download.virtualbox.org/virtualbox/debian xenial contrib

    然后我们下载 VirtualBox 公钥...

    wget -q https://www.virtualbox.org/download/oracle_vbox_2016.asc -O- | sudo apt-key add -

    ...并更新我们的包数据库:

    sudo apt-get update

    之后,我们安装VirtualBox 5.1如下:

    sudo apt-get install linux-headers-$(uname -r) build-essential virtualbox-5.1 dkms

    (如果 Linux 内核版本发生变化,dkms 包可确保 VirtualBox 主机内核模块得到正确更新。)

    从 4.0 版开始,VirtualBox 引入了所谓的“扩展包”,并将 4.0 版之前作为 VirtualBox 包一部分的远程桌面连接支持 (VRDP) 等功能外包到这些扩展包中。因为我们需要远程桌面连接来控制我们的虚拟机,所以我们现在需要安装相应的扩展包。转到 http://www.virtualbox.org/wiki/Downloads,您将找到以下扩展包的链接:

    VirtualBox 5.1 Oracle VM VirtualBox Extension Pack

    下载并安装扩展包如下:

    cd /tmp
    wget http://download.virtualbox.org/virtualbox/5.1.0/Oracle_VM_VirtualBox_Extension_Pack-5.1.0-108711.vbox-extpack
    sudo VBoxManage extpack install Oracle_VM_VirtualBox_Extension_Pack-5.1.0-108711.vbox-extpack

    (确保从 VirtualBox 网站获取最新版本,并使用 sudo 通过 VBoxManage 安装 extpack 文件。)

    现在我们必须将运行 VirtualBox 的用户(本例中的管理员)添加到 vboxusers 组:

    sudo adduser administrator vboxusers

    VirtualBox 现已安装并可以使用。

    3 在命令行中使用 VirtualBox

    3.1 创建虚拟机

    要在命令行上创建虚拟机,我们可以使用 VBoxManage 命令。看

    VBoxManage --help

    有关可用开关的列表和(强烈推荐!)请查看 http://www.virtualbox.org/manual/ch08.html。

    我现在将从 Ubuntu 16.04 服务器 iso 映像(我存储在 /home/administrator/iso/ubuntu-16.04-server-amd64.iso 中)创建一个具有 2048MB 内存和 10GB 硬盘驱动器的 Ubuntu 16.04 服务器虚拟机:

    VBoxManage createvm --name "Ubuntu 16.04 Server" --register
    VBoxManage modifyvm "Ubuntu 16.04 Server" --memory 2048 --acpi on --boot1 dvd --nic1 bridged --bridgeadapter1 ens33
    VBoxManage createhd --filename /home/administrator/Ubuntu_16_04_Server.vdi --size 10000
    VBoxManage storagectl "Ubuntu 16.04 Server" --name "IDE Controller" --add ide
    VBoxManage storageattach "Ubuntu 16.04 Server" --storagectl "IDE Controller" --port 0 --device 0 --type hdd --medium /home/administrator/Ubuntu_16_04_Server.vdi
    VBoxManage storageattach "Ubuntu 16.04 Server" --storagectl "IDE Controller" --port 1 --device 0 --type dvddrive --medium /home/administrator/iso/ubuntu-16.04-server-amd64.iso
    VBoxManage modifyvm "Ubuntu 16.04 Server" --vrde on

    现在继续第 3.3 章启动虚拟机,然后按照第 4 章所述使用远程桌面客户端连接到虚拟机。

    3.2 导入现有虚拟机

    假设您有一个名为 examplevm 的虚拟机,您希望在此主机上重用它。在旧主机上,您应该在 VirtualBox 目录中有一个目录 Machines/examplevm; Machines/examplevm 应该包含 examplevm.xml 文件。将 examplevm 目录(包括 examplevm.xml 文件)复制到您的新 Machines 目录(如果您的用户名为 administrator,则为 /home/administrator/.VirtualBox/Machines - 结果应为 /home/administrator/.VirtualBox/Machines /examplevm/examplevm.xml)。

    除此之外,将 examplevm.vdi 文件从旧 VDI 目录复制到新目录(例如 /home/administrator/.VirtualBox/VDI/examplevm.vdi)。

    之后,您必须注册导入的 VM:

    VBoxManage registervm Machines/examplevm/examplevm.xml

    3.3 使用 VBoxHeadless 启动虚拟机

    无论您是创建新 VM 还是导入旧 VM,都可以使用以下命令启动它:

    VBoxHeadless --startvm "Ubuntu 16.04 Server"

    (将 Ubuntu 16.04 Server 替换为您的 VM 的名称。)

    VBoxHeadless 将启动 VM 和 VRDP(VirtualBox 远程桌面协议)服务器,它允许您在另一台机器上远程查看 VM 输出。

    要停止 VM,请运行

    VBoxManage controlvm "Ubuntu 16.04 Server" poweroff

    要暂停 VM,请运行

    VBoxManage controlvm "Ubuntu 16.04 Server" pause

    要重置 VM,请运行

    VBoxManage controlvm "Ubuntu 16.04 Server" reset

    要了解有关 VBoxHeadless 的更多信息,请查看

    VBoxHeadless --help

    在 http://www.virtualbox.org/manual/ch07.html#vboxheadless。

    4 从远程桌面连接到 VM

    4.1 视窗

    您可以使用内置的远程桌面连接实用程序连接到 VM。

    输入主机的主机名或 IP 地址(不是来宾!):

    瞧,你应该连接到 VM:

    4.2 Ubuntu 桌面

    在 Ubuntu 桌面上,您可以使用 Remmina 远程桌面客户端或 gnome-rdp 连接到 VM。

    使用 apt 安装客户端:

    sudo apt-get install remmina remmina-plugin-rdp

    只需搜索 remmina,然后双击 Remmina Client 图标即可启动 RDP 应用程序。

    在 Remmina 远程桌面客户端中,单击加号图标以添加新的远程桌面连接:

    在“远程桌面首选项”窗口中,为配置文件填写一个名称(如 Ubuntu 16.04 Server),确保选择 RDP 作为协议(默认情况下应该选择),然后填写主机 IP 地址 - 而不是 IP VirtualBox 客人的! - 在服务器字段中,选择比默认值 8bpp - 16bpp 更高的颜色深度。然后点击连接:

    瞧,你应该连接到 VM:

    4.3 如果远程桌面连接不工作...

    如果远程桌面连接不工作,你可能错过了我在第 2 章中安装 VirtualBox 扩展包的步骤。请现在安装扩展包,停止你的虚拟机(见第 3.3 章),并修改你的虚拟机以接受远程桌面连接:

    VBoxManage modifyvm "Ubuntu 16.04 Server" --vrde on

    (如果在创建虚拟机时已安装扩展包,则会自动启用远程桌面连接。)

    然后再次启动您的虚拟机。

    5个链接

    • VirtualBox:http://www.virtualbox.org/
    • Ubuntu:http://www.ubuntu.com/

©2015-2025 艾丽卡 support@alaica.com