无意间看到一篇虚拟机性能介绍的文章,说到开源的virtualbox性很不错,于是最近到官方网站下了当前最新版本VirtualBox-3.1-3.1.2_56127学习研究了一下,开始在windows 7下虚拟安装xp及centeros5系统操作了一下,启动速度比vmware要快得多,操作习惯上也很相似,又在linux下操作了一番,界面操作启动和在windows上差不多,虚拟机上xp启动的速度一般在16-17秒左右,在一台 Intel(R) Xeon(R) CPU 1.86GHz (双CPU,4核每CPU),8G内存,Red Hat 3.4.6-8 linux操作系统下(系统自身比较干净,还没安装过其他应用),同时创建了3台虚拟1CPU,1G内存,xp,X界面下操作几乎同时启动,实体机瞬间当前LOAD高达14,感觉很卡,同时不知道何故,3台XP完全启动后其中总一台5分钟内会挂掉。后来改用命令模式操作,3台起来一点问题都没有,xp上跑一些自动测试脚本,观察了一天,还算稳定,有空计划继续往上加上几台看看。
桌面界面上操作相对比较简单,命令操作有点复杂,但是性能比较高,下面介绍一下命令模式下安装操作过程。
1.rpm包安装
rpm -ivh VirtualBox-3.1-3.1.2_56127_rhel4-1.i386.rpm
因为我的系统版本比较老是RHEL3,不过内核升级到了2.6.9,本想找源码包编译安装,直接拿这个在上面rpm包安装试了好像也没报错。
2.添加vboxusers 用户组
usermod -a -G vboxusers root
上面virtualbox rpm包安装好后会自动生成vboxusers组,系统上要用虚拟机的用户都可以把这个组添加进去。
3.创建虚拟机
VBoxManage createvm --name "winxp" --register
VBoxManage 是virtualbox的虚拟机管理命令,命令模式下操作几乎都跟他有关。这里创建了一个winxp的虚拟机。
创建完后可以用 VBoxManage list vms 命令查看一下当前可用的虚拟机,也可以用VBoxManage showvminfo winxp 命令查看一下当前虚拟机winxp的状态及一些默认配置。
4.修改虚拟机设置
首先先创建一个磁盘:
VBoxManage createvdi --filename /home/virtualbox/winxp.vdi --size 5000 --remember
修改虚拟机winxp设置,操作系统,内存,显存,启动顺序,磁盘位置,sata磁盘控制器,电源管理接口,CPU设置,网卡接口,远程管理等
VBoxManage modifyvm "winxp" --ostype "WindowsXP" --memory "512" --vram "16" --boot2 disk --boot1 dvd --hda "/home/virtualbox/winxp.vdi" --sata on --acpi on --pae on --hwvirtex on --nic1 hostif --cableconnected1 on --nictype1 "Am79C973" --bridgeadapter1 eth0 --intnet1 brigh1 --macaddress1 auto --vrdp on --vrdpport 4000 --vrdpmulticon on
上面参数具体说明可以用 VBoxManage modifyvm --help 查看了解
执行上面命令,可能会碰到如下错误:
ERROR: Could not find a storage controller named 'IDE Controller'
在国外网站上查到需要添加一下IDE接口就可以了,执行如下命令:
VBoxManage storagectl winxp --name "IDE Controller" --add ide
再执行上面命令即可。
5.挂载ISO安装盘
VBoxManage openmedium dvd /home/virtualbox/winxpsp3.iso
6.系统安装
先将挂载的ISO文件,加到虚拟机的DVD光驱里
VBoxManage modifyvm "winxp" --dvd /home/virtualbox/winxpsp3.iso
可能会报错:
ERROR: No storage device attached to device slot 0 on port 1 of controller 'IDE Controller'
是IDE 端口没设置好
执行如下操作:
将winxp.vdi 磁盘放在设备0的第0个端口
VBoxManage storageattach winxp --storagectl "IDE Controller" --port 0 --device 0 --type hdd --medium /home/virtualbox/winxp.vdi
将ISO挂载在设备0的第1个端口
VBoxManage storageattach winxp --storagectl "IDE Controller" --port 1 --device 0 --type dvddrive --medium /home/virtualbox/winxpsp3.iso
7.开始启动
VBoxManage startvm "winxp" -type vrdp
或者
VBoxHeadless -startvm "winxp" &、
再通windows远程桌面远程连接过去,IP:4000 ,这个端口是之前设置好的,也可以启动的时候加参数,没有加密,直接连远程连接操作。
8.安装客户端增强插件
mkdir /mnt/iso
mount -o loop /usr/share/virtualbox/VBoxGuestAdditions.iso /mnt/iso
进入系统,打开光驱安装即可
9.系统复制克隆
virtualbox 不像vmware的磁盘文件,拷贝过来是不能直接使用,因为virtualbox的磁盘文件里都被记录了独立的uuid,所以复制只能用自带的命令克隆磁盘。
vboxmanager clonevdi $(pwd)/winxp.vdi $(pwd)/winxp2.vdi
注意,路径要写全,因为默认路径会指向/root/.virtualbox/
然后再添加注册个虚拟机:
VBoxManage createvm --name "winxp1" --register
查看一下默认设置:
VBoxManage showvminfo winxp2
修改虚拟机配置:
VBoxManage modifyvm "winxp2" --ostype "WindowsXP" --memory "512" --vram "16" --boot1 disk --boot2 dvd --hda "/home/virtualbox/winxp2.vdi" --sata on --acpi on --pae on --hwvirtex on --nic1 hostif --cableconnected1 on --nictype1 "Am79C973" --bridgeadapter1 eth0 --intnet1 brigh2 --macaddress1 auto --vrdp on --vrdpport 5000 --vrdpmulticon on
启动系统:
VBoxManage startvm "winxp" -type vrdp
10.文件共享(数据空间)
virtulbaox 可以通过映射,直接将实体机文件共享到虚拟机中。
VBoxManage sharedfolder add winxp --name share --hostpath /home/virtualbox/share --transient
界面下操作很简单,数据空间打开实体机文件,虚拟机打开网络映射挂载上来就可以。如果虚拟机是linux,需要加载磁盘格式模块:
modprobe vboxvfs
mount -t vboxsf share_net_filename(实体机共享名) /home/virtualbox/share(虚拟机中文件路径)
这样基本实现了virtualbox在linux命令下安装,virtualbox命令很多,还在继续研究学习中。
据有资料说:虚拟机上安装的虚拟系统的内存使用量必须要符合VBOX的要求,即不能超过机器物理内存的40%,换言之,要预留足够的内存供真实系统使用,否则会经常异常死机,或无法运行虚拟系统。举例:我机器内存为512M,虚拟XP分配128M内存,显存分配32M即可。如果虚拟XP分配256M内存,则无法正常运行虚拟,总是异常退出。
阅读(3523) | 评论(0) | 转发(1) |