VBOX
Oracle VirtualBox是由德国InnoTek软件公司出品的虚拟机软件,现在则由甲骨文公司进行开发,是甲骨文公司xVM虚拟化平台技术的一部分。它提供用户在32位或64位的Windows、Solaris及Linux 操作系统上虚拟其它x86的操作系统。用户可以在VirtualBox上安装并且运行Solaris、Windows、DOS、Linux、OS/2 Warp、OpenBSD及FreeBSD等系统作为客户端操作系统。
VBox没有vmware易上手,特别是网络配置对于新手比较劝退。但优点是占用资源少,不用破解。如果你电脑配置不高,vmware开虚拟机卡顿,或者不想破解vmware,建议改用vbox。
本文内容
本文演示利用vbox安装Linux虚拟机,并配置网络,达到
- 使Linux既能访问外网,
- 也能和宿主机互相访问,
- 并且多个虚拟机之间也是互通的。
配置过程
按照文中步骤,并且vbox和Linux版本与文中一致一定能配置成功。
过程分三步
- 给虚拟机配置硬件参数
- 安装Linux系统
- 配置网络
硬件配置
安装vbox,一路默认点击下一步。中途会出现中断网络连接的警告,不用管继续安装。安装完成打开,点击新建,开始安装Linux虚拟机。
名称随便起,类型和版本按照iso文件实际情况选择
内存大小默认
创建虚拟硬盘默认
文件类型默认
最求速度,选择固定大小
硬盘我设置16G,默认值太小了
建立过程需要等待几分钟
完成后可以看见左边出现计算机的名字,到这步相当于虚拟机的硬件有了。
安装Linux系统
上述操作完成相当于硬件有了,下一步安装操作系统。鼠标点击没有盘片,choose a disk file里选择Linux iso镜像文件
点击启动
选择第二行选项,全新安装系统
不需要检查,选跳过
语言选择英语
键盘选择USEnglish
选择第一项
虚拟机就选择不要数据,物理机要考虑原来磁盘的数据是否保留。
hostname随意起,建议不要包含特殊字符,否则将来安装某些软件时会有识别不了的问题
设定系统时间的界面很友好,
鼠标点击上海,时间会换到上海时间
下面设置密码
提示密码复杂度太低,选择依然使用
安装类型选择默认选项
选择write changes to disk
服务器类型选择basic server,这几种类型决定了是否安装数据库组件,是否安装图形界面等。根据需要选择。我这里只需要基本环境,所以选择第一个就可以。
然后进入安装Linux界面
安装完成选择重启
配置网络
输入用户和密码,进入系统,由于basic server 没有图形界面,所以都是命令行操作了。
查看ip,发现只有回环ip,这个ip只能自己访问自己,外网和宿主机肯定是不通的了。
vbox相比于vmware难用的地方就在于网络的配置,我试验了网上说的多个方法,最终成功配通了外网和宿主机。首先进入/etc/sysconfig/network-scripts,查看网络接口文件。只有一个ifcfg-eth0。
ifcfg-eth0文件里写有网卡的物理地址。我试验多次的结论是,将带有物理地址的网络接口设置为Host-only类型,负责和宿主机以及其它虚拟机通信。同时还要启用第二个网络连接,将第二个网络连接设置为“网络地址转换NAT”,负责访问外网。ifcfg-eth0对应的是网卡1,同时勾选启用网卡2。设置如下图
网卡1的配置
网卡2的配置
配置网卡1接口文件ifcfg-eth0时,需要配置ip地址,这个地址必须和vbox在宿主机的虚拟网卡地址处于同一个网段。所以要查看vbox虚拟网卡地址
配置ifcfg-eth0文件,按照如下修改,192.168.56是固定的,最后一位我写的3,实际可以随意
DEVICE=eth0HWADDR=08:00:27:BD:9E:0F
TYPE=Ethernet
UUID=e225f10f-4aee-4fe9-a4b6-83ca44940fa1
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=static
IPADDR=192.168.56.3
NETMASK=255.255.255.0
配置ifcfg-eth1文件,按照如下修改,
DEVICE=eth1
NM_CONTROLLED=yes
ONBOOT=yes
BOOTPROTO=dhcp
重启网络服务
查看百度是否通
宿主机ping虚拟机
虚拟机ping宿主机
我又用vbox安装了一个Linux虚拟机,host-only网卡地址设为192.168.6.2,从192.168.6.3ping192.168.6.2
宿主机和虚拟机,虚拟机之间都是通的了。SSH工具连接,ftp连接也都没有问题,可以进行日常开发试验了。另外,vbox开3台虚拟机也都不卡顿,可以多装几个虚拟机组成集群模拟真实环境。最重要的可以执行rm -rf /* 了,这次不用跑路。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。