VBoxHeadless - 使用VirtualBox 3.1在无头Ubuntu 9.10服务器上运行虚拟机

VBoxHeadless - 使用VirtualBox 3.1在无头Ubuntu 9.10服务器上运行虚拟机 本指南解释了如何运行虚拟机

VBoxHeadless - 使用VirtualBox 3.1在无头Ubuntu 9.10服务器上运行虚拟机

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

我不会保证这将为您工作!

1初步说明

我已经在Ubuntu 9.10服务器(主机系统)上测试了这个IP地址192.168.0.100 ,我以普通用户身份登录(在本例中为用户名管理员 )而不是根用户登录

2安装VirtualBox

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

sudo vi /etc/apt/sources.list

...并添加以下行:

[...]
deb http://download.virtualbox.org/virtualbox/debian karmic non-free

然后我们下载Sun的公钥

wget -q http://download.virtualbox.org/virtualbox/debian/sun_vbox.asc -O- | sudo apt-key add -

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

sudo aptitude update

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

sudo aptitude install linux-headers-$(uname -r) build-essential virtualbox-3.1 dkms

(如果Linux内核版本更改,则dkms软件包可确保VirtualBox主机内核模块正确更新。)

创建组'vboxus'
VirtualBox的用户必须是该组的成员。 主机网络接口将被分配给该组。 < - 好的

应该现在编译vboxdrv内核模块吗? < - 是的

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

sudo adduser administrator vboxusers

VirtualBox现已安装并可以使用。

3在命令行上使用VirtualBox

3.1创建VM

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

VBoxManage --help

有关可用的交换机列表(强烈推荐!),请查看http://www.virtualbox.org/manual/UserManual.html#vboxmanage

现在我将创建一个Ubuntu 9.10服务器虚拟机,256MB内存和一个10GB硬盘从Ubuntu 9.10服务器iso映像(我存储在/home/ubuntu-9.10-server-amd64.iso ):

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

3.2导入现有的虚拟机

假设你有一个叫做examplevm的虚拟机,你想在这个主机上重用。 在旧主机上,您应该在VirtualBox 目录中有一个目录Machines / examplevm; Machines / examplevm应包含examplevm.xml文件。 将examplevm目录(包括examplevm.xml文件)复制到新的机器目录(如果您的用户名是管理员,则为/home/administrator/.VirtualBox/Machines ),结果应为/home/administrator/.VirtualBox/Machines /examplevm/examplevm.xml )。

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

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

VBoxManage registervm Machines/examplevm/examplevm.xml

3.3使用VBoxHeadless启动虚拟机

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

VBoxHeadless --startvm "Ubuntu 9.10 Server"

(用您的虚拟机名称替换Ubuntu 9.10服务器 。)

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

要停止VM,请运行

VBoxManage controlvm "Ubuntu 9.10 Server" poweroff

要暂停虚拟机,请运行

VBoxManage controlvm "Ubuntu 9.10 Server" pause

要重置VM,请运行

VBoxManage controlvm "Ubuntu 9.10 Server" reset

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

VBoxHeadless --help

并在http://www.virtualbox.org/manual/UserManual.html#id2515738