`

Virtualbox终极无间配置篇

阅读更多

Virtualbox有个问题,就是即使是相同用户启动,如果用户session不一样,那么还是会看到不同的启动结果,不能相互管理不同session启动的虚拟机(via)。这就杯具了啊,有时候,启动几个虚拟机,但是其中有一个死机了,要从主机的任务管理器里结束进程,我咋知道应该结束哪个???

还有一个问题,就是网络默认是NAT,很灵活也很方便,端口转发很实用。但是有一个致命伤,就是大流量多连接情况下,容易导致内存溢出,虚拟机断网,甚至进程崩溃等问题。

我看到最近几个更新的changelog有改善NAT的问题,所以卸载了原来的Virualbox,重启,安装新版,重启。然后打开虚拟机,卸载Virtualbox Guest Addtion,重启,安装新版,重启。至此,由外到里更新完毕。

然后,开始正式的配置。

同步全局的Virtualbox设置

我们知道,默认的Virtualbox设置是因用户而异的,一般存放在“C:\Documents and Settings\用户名\.Virtualbox”文件夹中。我们可以设定一下,使设置文件统一存放:新建“VBOX_USER_HOME”变量,里面填入设置存放的目录即可。

虚拟机以服务形式启动(via)

下载srvstart,编辑下面内容存为srvstart.ini,比如保存在D盘根目录下:

env=VBOXHEADLESS="C:\Program Files\Oracle\VirtualBox\vboxheadless.exe" 

env=VBOXMANAGE="C:\Program Files\Oracle\VirtualBox\VBoxManage.exe"

debug=0 

debug_out=>D:\soft\vbox\srvstart.log

wait_time=60

[Win2003] 

startup=%VBOXHEADLESS% -startvm Win2003 

shutdown_method=command 

shutdown=%VBOXMANAGE% controlvm Win2003 poweroff

[VMWinXP] 

startup=%VBOXHEADLESS% -startvm WinXP 

shutdown_method=command 

shutdown=%VBOXMANAGE% controlvm WinXP poweroff

然后运行下面命令即可安装里面的WinXP为系统服务VMWinXP:

srvstart install_desktop VMWinXP -c d:\srvstart.ini

类似的,安装里面的Win2003为系统服务则是:

srvstart install_desktop Win2003 -c d:\srvstart.ini

当然,可以用系统命令sc创建系统服务,不过要注意两点:

SC中,参数等于号后面要有一个空格,如“binPath= ”,后面有个空格哦,蛋疼得很。

Virtualbox的服务需要开启桌面互动,否则会启动出错

WEB管理Virtualbox:

由于相同用户不同session也会导致虚拟机状态不同步,而且启动服务需要开启桌面互动,所以我们只能用默认的本地服务(Local Service)身份来启动服务。而Virtualbox的web service默认的验证方式是用户验证,所以我们要先把验证取消:

VBoxManage setproperty websrvauthlibrary null

然后设置Virtualbox的web api为服务,还是使用srvstart工具。我们先编辑刚刚的srvstart.ini,在末尾加上:

[VboxWebSrv] 

startup=%VBOX_INSTALL_PATH%\VboxWebSrv –threads=20 

shutdown_method=kill

并安装其为“VboxWebSrv”服务:

srvstart install_desktop VboxWebSrv -c d:\srvstart.ini

然后到SVN“phpvirtualbox”项目的源码,它是Virtualbox的WEB GUI。像安装PHP程序一样安装。注意要SOAP扩展,以及把config.php的用户名和密码置空。

启动“VboxWebSrv”服务,访问你刚刚安装的“phpvirtualbox”,应该看到了正常的仿真Virtualbox面板。怎么样,可以通过web控制了吧。最重要的是,解决了不同session的虚拟机有不同状态的问题。

要注意两点:

VboxWebSrv默认占用127.0.0.1的18083端口,注意让防火墙放行。由于取消了验证,所以建议只监听本地的127.0.0.1(默认)

由于phpvirtualbox本身不设有验证机制,也就是说,Virtualbox的web控制端是可以公开访问的,所以有必要添加基于web的认证。Apache可以用.htpasswd解决。参考http://blog.creke.net/273.html。

NAT环境下的端口映射和端口转发(via)

VBoxManage modifyvm "VM name" –natpf1 "guestssh,tcp,host ip,2222, guest ip,22"

命令解释:

跟之前的一样,我们可以看到熟悉的VBoxManage的身影。紧随其后的是 modifyvm ,跟之前版本的命令不一样。然后就是“VM NAME”虚拟机名称,将其替换成相应的虚拟机名称就可以了。接着就是重点部分了,NAT端口映射的参数。 

1.natpf1 我们可以很容易理解这个参数,natpf即 nat port forwarding的缩写。后面紧接着的是虚拟机设置中相应网卡的数字,如果你的网卡是第一个,则为1。 

2.natpf后的参数 

(1)guestssh 是这个端口映射的名字,自行修改成容易理解的名称吧,如果填则系统会自动生成。 

(2)tcp (or udp) 是映射的协议。 

(3)host ip 则是你的主机的IP地址,如不填写则映射到主机中的所有IP地址上的相应端口。 

(4)2222(host port) 主机端口,自选吧。 

(5)guest ip 虚拟机中的IP地址,很明显,不填写则映射到虚拟机中的所有IP地址上的相应端口。 

(6)22(guest port)虚拟机端口,自选+1。

如果要删除端口映射,只需要输入以下命令:

VBoxManage modifyvm "VM name" –natpf1 delete "guestssh"

清理压缩Virtualbox磁盘镜像

可以使用VBoxManage命令中的modifyhd的compact参数解决。Windows虚拟机可以使用微软官方的SDelete工具来清理磁盘。

具体步骤和原理参见Virtualbox官方的User Guide的Vboxmanage-modifyvdi部分。

 

分享到:
评论

相关推荐

    Virtualbox下Ubuntu Samba配置

    Virtualbox下Ubuntu Samba配置

    VirtualBox中的网络配置方法

    ### VirtualBox中的网络配置方法详解 #### 一、概述 VirtualBox是一款广受欢迎的虚拟化软件,它允许用户在同一台物理计算机上运行多个操作系统作为独立的虚拟机(VM)。为了确保虚拟机能够顺利地与其他系统或互联网...

    在VirtualBox上配置网站服务器

    1.1配置VirtualBox Net网络并安装centos7 打开VirtualBox,点击:管理-全局配置-网络-新建网卡,然后对Net网络进行配置,设置网络CIDR和端口转发如图所示: 配置好网络后新建一个虚拟机,命名为centos7 server。...

    VirtualBox安装配置教程

    VirtualBox安装配置教程 VirtualBox是一款功能强大且易于使用的虚拟机软件,通过该软件用户可以在一台物理机器上运行多个虚拟机,每个虚拟机都可以独立运行不同的操作系统。下面是VirtualBox安装配置教程的详细介绍...

    GNS3中VirtualBox配置

    GNS3中VirtualBox配置!

    VirtualBox安装CentOS7的配置.rar

    本文将详细介绍如何使用VirtualBox安装CentOS7,并进行必要的网络配置。 首先,我们需要了解VirtualBox的基本概念。VirtualBox是由德国公司Oracle开发的一款虚拟机软件,它可以在一台物理主机上创建和运行多个操作...

    vmware虚拟机和virtualbox虚拟机间的互联

    ### VMware虚拟机与VirtualBox虚拟机间的互联技术详解 #### 实验目的 本文旨在通过具体的实验操作步骤,探讨如何实现不同虚拟化平台(VMware Workstation与VirtualBox)上运行的虚拟机之间的互联。这对于虚拟化环境...

    Laravel配置homestead所需要的新版virtualbox3.0

    尝试各种办法,最终成功下载virtualbox3.0,成功配置homestead开发环境,有需要的可以下载

    VirtualBox配置固定IP和联网文档-致那些曾经踩过的坑

    ### VirtualBox配置固定IP和联网知识点详解 #### 一、背景介绍 在使用VirtualBox进行虚拟化部署时,经常会遇到一些网络配置上的问题,比如主机与虚拟机之间的网络不通、虚拟机无法上网或是虚拟机中的IP地址不稳定...

    VirtualBox配置教程(全程图解)

    很实用的工具,免费汉化的VirtualBox版本使用说明 配置手册

    virtualbox网络配置参考

    ### VirtualBox网络配置详解 #### 一、NAT模式(NAT Mode) NAT模式是VirtualBox提供的最为简便的一种网络连接方式。在此模式下,虚拟机可以与宿主机进行通信,但不能直接与外部网络中的其他设备进行通信。具体而...

    VirtualBox-5.2.6正式版本

    VirtualBox

    virtualbox网络配置

    本地虚拟机的网络配置,virtual box 网络连接

    VirtualBox

    VirtualBox是一款广受欢迎的开源虚拟化软件,由德国Oracle公司开发和维护。它允许用户在一台物理计算机上创建和运行多个虚拟机,每...通过细心的配置和维护,用户可以在Windows 7上实现无错启动并充分利用虚拟化技术。

    VirtualBox下Host Only+NAT方式的网络配置

    本文将详细介绍如何在VirtualBox中通过Host Only+NAT方式配置网络,使得虚拟机既可以访问外部网络,又能够与宿主机互相通信。 首先,需要了解Host Only和NAT两种模式的特点: - Host Only模式:这是一种特殊的网络...

    virtualbox_virtual_box_网络各种配置方案_bridge

    在VirtualBox 的虚拟网络配置中,有四种主要的网络模式:NAT(Network Address Translation)、Bridged Adapter、Internal 和 Host-only Adapter。每种模式都有其特定的用途和优势,适用于不同的场景。 ### 1. NAT ...

    VirtualBox PXE 启动 安装系统

    使用 VirtualBox 进行 PXE 启动安装 Linux 操作系统

    VM VirtualBox虚拟机消失

    VirtualBox提供了导出和导入虚拟机的功能,可以将一个完整的虚拟机,包括其配置文件、硬盘镜像等,导出成一个单独的文件包(.ova格式),需要时可以导入回VirtualBox。这是一个有效且相对简单的方式来备份和迁移...

    virtualBOX出错解决方法

    本篇文章将详细探讨如何解决VirtualBox中的常见问题,帮助用户顺利运行虚拟机。 一、安装与更新VirtualBox 1. 确保下载最新版本的VirtualBox:访问VirtualBox官方网站,下载与你的操作系统相匹配的最新版本,以...

Global site tag (gtag.js) - Google Analytics