VirtualBox初体验

简介:

测试环境:
主机:Windows 7,VirtualBox4.0.0
客户机:CentOS 5.5-i386

由于是笔记本电脑上做测试,这里以Windows(Host)+CentOS(Guest)为例。实际中,在图形界面下,CentOS操作VirtualBox与Windows操作VirtualBox基本是一样的。

 

一、关于VirtualBox

维基百科是这样描述VlBox的:Oracle VirtualBox是由德国InnoTek软件公司出品的虚拟机软件,现在则由甲骨文公司进行开发,是甲骨文公司xVM虚拟化平台技术的一部份。它提供用户在32位或64位的Windows、Solaris及Linux 操作系统上虚拟其它x86的操作系统。用户可以在VirtualBox上安装并且运行Solaris、Windows、DOS、Linux、OS/2 Warp、OpenBSD及FreeBSD等系统作为客户端操作系统。

与同性质的VMware及Virtual PC比较下,VirtualBox独到之处包括远程桌面协议(RDP)、iSCSI及USB的支持,VirtualBox在客户机操作系统上已可以支持USB 2.0的硬件设备。


二、VirtualBox虚拟机的文件组成

VBox小巧,其文件组成也相对简单。通过设置路径,把每一台虚拟机的所有文件都保存到一个目录下,测试用的CentOS5.5由以下文件组成:

 
第一个文件夹,存放虚拟机日志,暂时还看不懂日志里面的内容,所以还不知道日志的用途。
第二个文件,应该说是虚拟机的快捷方式,直接双击可以运行虚拟机及其里面的客户机系统。
第三个文件,是这VBox预览功能生成的一个小文件,刚在虚拟机里装好客户机系统时是没有的。删掉也没影响,客户机运行后,会自动重新生成。
第四个文件,vdi文件,这个是核心文件,客户机系统总容量有多大,它就能长到多大。VBox为每一个vdi文件定义了唯一的一个uuid,复制出来的vdi无法在虚拟介质管理器中注册。因此vdi文件不能随便复制以用于另一环境中。


三、VirtualBox生成快照

先说说VBox快照功能,VBox4.0的中文界面将其译成备份功能。系统运行时,随时可以生成当前状态的备份。当生成了备份之后,会在Snapshots目录下创建一个新的vdi文件,之后对当前状态所做的一切操作都将针对最新的vdi文件,但vdi目录下的初始vdi文件就不会再改变了。在系统发生问题时,可以恢复到生成备份当时的系统。恢复后看到的界面是备份时系统正在运行的界面。

具体操作:在运行的虚拟机中,单击“控制”菜单下有个“生成备份”的子菜单,即可备份系统。生成备份后,,单击“控制”菜单下有个“即出”的子菜单,在弹出的“关闭虚拟电脑”对话框中,勾选“强制退出”选项下的“恢复到当前备份”即可。在VBox管理窗口中的“快速修复”选项卡中也可以进行同样的操作。

VBox的备份是线性的,每个虚拟机只能针对当前状态做一个备份,而不能做多个备份。


四、VirtualBox虚拟电脑

VirtualBox 不像Vmware的磁盘文件,拷贝过来是不能直接使用的。但VBox有其自身的解决方法,就是通过“导入虚拟电脑”和“导出虚拟电脑”来实现,其实就是虚拟机克隆功能。

通过“导出虚拟电脑”将当前系统导出成一个ova(Open Virtualization Format Archive)文件。这个文件可以被随便拷贝、存放,需要用的时候,双击或在VBox运行窗口中执行“导入虚拟电脑”,就可以将之前导出的虚拟机导入到VBox中,实质是vdi文件的重新注册过程,虚拟机的设置及其里面的客户机系统保持不变。


五、VirtualBox Guset Additions

VirtualBox Guset Additions的作用包含以下几点:
        实现客户机和主机间的鼠标平滑移动
        与主机实现文件共享
       于主机共享剪贴板的内容,也就是说直接可以在主机、客户机之间复制、粘贴
       使用音效系统,要不然没法用虚拟机听音乐了
        与主机实现时间同步
        自动登录windows

在项操作在CentOS5客户机上还没操作过,在Windows2003客户机上曾装过一回,具体的操作是,启动客户机系统,在drives中选择"安装增强功能(Install Guset Additions)"。在弹出的对话框中,基本上一路“下一步”就OK了。安装结束后,需要重启客户机系统后,可以看到右下角有个四方形的图标,表示系统运行了“Oracle VM VirtualBox Guest Additions”。此时,鼠标可以在当前系统和客户机系统之前随意移动,而在装VirtualBox Guset Additions之前,要从客户机系统回到当前系统是需要按组合键“Ctrl+Alt+Delete”的。而且系统根据当前VBox窗口的大小自动调整像素,也可以全屏显示。

该功能的缺陷之处在于,安装Guest Additions后,客户机基本就绑定到特定的VBox环境中了,不利了虚拟机的克隆和迁移。
 

六、VirtualBox网络配置

安装完VirtualBox4.0.0后,主机多了一个“VirtualBox Host-Only Network ”本地网卡,IP和DNS是自动获取的,在以后的VBox网络配置中,一般保持默认。

VBox中,可以为同一个虚拟机添加四个网卡,对不同的网卡进行不同模式的设置。比如说,添加两块网卡一块的连接方式为NAT,另一块为Host-only Adapter,这样客户机既可以安全上网,也可以和主机通信。

NAT模式
VBox默认是NAT(网络地址转换)方式,Guest OS(客户机系统)装好后(联网方式设为DHCP),就可以直接连网。 使用NAT方式,客户机访问网络由主机提供(其实是通过主机的NAT服务器,这是VirtualBox内置的)。在这种方式下,客户机的网络地址外网不可见,因此外网访问不了客户机,而且主机也无法通过网络访问客户机,要想将主机上的一些资料上传到客户机,是做不来的。

测试时,主机IP是10.8.5.24的内网地址,主机下查看VBox的IP,结果如下:
 

客户机IP是10.0.2.15的内网地址,网关是10.0.2.2,使用route命令,查看结果如下:
 

主机能ping通169.254.134.226,ping不能ping通客户机;客户机ping不通169.254.134.226,但客户机能ping通主机,并而能正常上网。

桥接模式(Bridged Adapter)
将客户机的网络连接改为桥接方式,然后到虚拟系统中,将IP与主机IP设置在同一网段。此时,客户机相当于网络上的一台独立主机。主机、虚拟机、网络上的其他工作站,可以直接互相访问。如果只允许客户机与主机通信,只须将主机网卡设置双IP,一个用于上网,一个用于与虚拟机通信,而无须修改客户机的网络连接方式。这跟将两台主机设置成同一网段,然后用一根网线相连,就可以通信是一样的。

内网模式(Internal)
顾名思义就是内部网络模式,虚拟机与外网完全断开,只实现虚拟机于虚拟机之间的内部网络模式。在主机上同时开两台客户机,IP分别设为192.168.1.1和192.168.1.2(掩码都为255.255.255.0,网关不设),可以正常通信。

主机模式(Host-only Adapter)
这种模式,据说VBox在主机中模拟出一张专供虚拟机使用的网卡,所有虚拟机都是连接到该网卡上的(主机上的VirtualBox Host-Only Network网卡),可以通过这张网卡来实现上网及其他功能。

如果要让VBox的虚拟机可以访问外网,需将主机系统的本地连接设为与VirtualBox Host-Only Network共享。如图所示进行设置后,VirtualBox Host-Only Network的IP地址被自动设置,测试时IP为192.168.137.1,子网掩码为255.255.255.0。
 

在客户机中将IP设为同一网段的地址,并将DNS地址设为主机所用的DNS地址。理论上,这时客户机与主机、网络上的其他工作站都可以连接的,但实际测试中,(重新激活的网卡,又重启了客户机),客户机只能与主机通信,而且只是在192.168.137.0这个网段内进行通信。
 

感觉主机模式比较复杂,以后有空再作深入的研究。



本文转自Sunshyfangtian 51CTO博客,原文链接:http://blog.51cto.com/sunshyfangtian/479201,如需转载请自行联系原作者


相关文章
|
5月前
|
Oracle IDE 机器人
VirtualBox 安装使用总结
VirtualBox 安装使用总结
45 0
|
8月前
|
Ubuntu IDE Unix
Ubuntu下安装Kdevelop IDE和使用教程
Ubuntu下安装Kdevelop IDE和使用教程
183 0
|
11月前
|
Ubuntu 虚拟化 Windows
|
Ubuntu Linux 应用服务中间件
WSL2安装和简单使用教程
WSL2安装和简单使用教程
2183 1
WSL2安装和简单使用教程
|
安全 网络协议 Linux
【Linux】【开发环境】【RHEL】开发环境搭建系列之三——安装VMware Workstation虚拟机搭建基础嵌入式开发环境
【Linux】【开发环境】【RHEL】开发环境搭建系列之三——安装VMware Workstation虚拟机搭建基础嵌入式开发环境
181 0
【Linux】【开发环境】【RHEL】开发环境搭建系列之三——安装VMware Workstation虚拟机搭建基础嵌入式开发环境
|
Ubuntu Java Linux
“Windows + VirtualBox Ubuntu” 问题与解决笔记【持续更新】
“Windows + VirtualBox Ubuntu” 问题与解决笔记【持续更新】
163 0
“Windows + VirtualBox Ubuntu” 问题与解决笔记【持续更新】
|
Linux Docker Windows
手把手教您在 Windows 10 上安装 Docker
Docker 是一个专门为开发人员和系统管理人员构建、运送和运行分布式应用程序的开放性平台。它允许您创建容器化应用程序并为您的应用程序组件提供......
13414 0
|
Windows
【经验分享】安装VirtualBox的时候遇到的问题
错误代码: Failed to instantiate CLSID_VirtualBox w/ IVirtualBox, but CLSID_VirtualBox w/ IUnknown works.
1406 0
|
Linux 网络安全 负载均衡