在CentOS 6.6 64bit上安装Oracle VirtualBox 5.0.12

时间:2020-12-03 17:19:57

VirtualBox是一款开源虚拟机软件(类似vmware)。VirtualBox是由德国Innotek公司开发,由Sun Microsystems公司出品的软件,使用Qt编写,在Sun被Oracle收购后正式更名成 Oracle VM VirtualBox。Innotek以 GNU General Public License (GPL) 释出 VirtualBox,并提供二进制版本及 OSE 版本的代码。

VirtualBox 是一套为不同操作系统而设的x86虚拟化产品。VirtualBox以原生组件的方式提供给不同构架。它们有针对RHEL5/RHEL6/RHEL7的i386及AMD64(x86_64)RPM组件,可在CentOS-5/6/7(或 Scientific及其它衍生自RHEL 的发行版本)上使用,此外还有针对Debian、Ubuntu及其衍生的.deb 组件,Mac OS X,Windows,Solaris和OpenSolaris,与及源代码。

下面的安装方法适用于CentOS/RedHat 7/6/5 and Fedora 23/22
目前官网最新版本是
在CentOS 6.6 64bit上安装Oracle VirtualBox 5.0.12

1.下载VirtualBox的RHEL软件库配置文件
  
(当然你也可选择下载及安装个别的 RPM 而不设置软件库)            
cd /etc/yum.repos.d
wget http://download.virtualbox.org/virtualbox/rpm/rhel/virtualbox.repo
同时更新EPEL yum repository
rpm -Uvh http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm 
在CentOS 6.6 64bit上安装Oracle VirtualBox 5.0.12
2.安装RPMForge                         
RPMforge是由Dag及其它包装者合作维护的。他们为CentOS提供超过5000个组件,包括wine、vlc、mplayer、xmms-mp3及其它受欢迎的媒体工具。它并不是Red Hat或CentOS的一部份,但却是为那些发行版本而设计的。从
http://pkgs.repoforge.org/rpmforge-release/

下载相应版本的rpm文件,然后安装即可。

在CentOS 6.6 64bit上安装Oracle VirtualBox 5.0.12

wget http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el6.rf.x86_64.rpm
rpm -ivh rpmforge-release-0.5.3-1.el6.rf.x86_64.rpm

在CentOS 6.6 64bit上安装Oracle VirtualBox 5.0.12

具体请参考:

http://wiki.centos.org/zh/AdditionalResources/Repositories/RPMForge

3.安装DKMS(Dynamic Kernel Module Support)              
yum -y install dkms
安装DKMS将会自动带进所需的开发用依赖组件,为了稳妥起见,我们也升级一下内核
yum -y install kernel-devel kernel-headers kernel-devel
重启一下系统,让内核版本变更生效 
4.安装开发环境及依赖包                        
yum -y groupinstall "Development Tools" 
yum -y install gcc make patch  dkms libgom qt qt-x11
yum -y install fontforge binutils glibc-headers glibc-devel

5.初始化环境变量                            
VirtualBox安装过程中需要获取内核源码去安装需要的modules,我们需要配置环境变量KERN_DIR让VirtualBox能从那里获取到kernel source code 
在我当前CentOS 6.6下面,源码目录在/usr/src/kernels/2.6.32-573.12.1.el6.x86_64下面
所以,在命令行下面设置
export KERN_DIR=/usr/src/kernels/2.6.32-573.12.1.el6.x86_64                                                          
 
6.安装VirtualBox-5.0                              
yum -y install VirtualBox-5.0
如果安装过程出错,使用下面的命令清除掉,排错后重新安装
yum —y remove VirtualBox-5.0
假如开发环境已被正确地设置,这个安装程序将会创建vboxusers这个群组及它所需的内核模块。
重启内核模块
service vboxdrv setup

7.安装扩展包
此时我们已经安装好VirtualBox5.0.12了。但我们还要安装扩展包采用使用USB2.0等功能                              
从官网地址
https://www.virtualbox.org/wiki/Downloads
下载对应版本的VirtualBox扩展包
wget http://download.virtualbox.org/virtualbox/5.0.12/Oracle_VM_VirtualBox_Extension_Pack-5.0.12-104815.vbox-extpack
VBoxManage extpack install Oracle_VM_VirtualBox_Extension_Pack-5.0.12-104815.vbox-extpack

8.启动VirtualBox相关服务
在终端运行
# virtualbox &
接纳授权,选择会否注册,然后创建一个新的虚拟机器。
另一种方法是从gnome界面,Application=》System Tools=Oracle VM VirtualBox打开

9.在 VirtualBox 内运用 USB
VirtualBox访问USB时要求用户对usbfs设备有写入权限。请以root身份执行以下指令:
mkdir /vbusbfs
echo "none /vbusbfs usbfs rw,devgid=$(awk -F : '/vboxusers/ {print $3}' /etc/group),devmode=664 0 0" >> /etc/fstab
mount -a

10.遇到的问题汇总
1).为何只能安装32位操作系统?

安装64位的需要你的主板和cpu都支持,去bios里看下你的virtualization选项是否开启吧,开启之后你再打开vbox就可以看到64的选项了~
需要开启CPU虚拟,在BISO里面设置一下
2).启动VirtualBox服务时,出现如下报错信息
No precompiled module for this kernel found -- trying to build one. Messages
emitted during module compilation will be logged to /var/log/vbox-install.log.
Stopping VirtualBox kernel modules [确定]
Uninstalling old VirtualBox DKMS kernel modules [确定]
Trying to register the VirtualBox kernel modules using DKMS
Error! Your kernel headers for kernel 2.6.32-431.el6.x86_64 cannot be found at
/lib/modules/2.6.32-431.el6.x86_64/build or /lib/modules/2.6.32-431.el6.x86_64/source.
[失败]
(Failed, trying without DKMS)
Recompiling VirtualBox kernel modules [失败]
(Look at /var/log/vbox-install.log to find out what went wrong)
这是找不到指定版本的内核源码文件
解决办法:
安装指定的内核源码包,
yum install kernel-devel-$(uname -r)
为了内核版本号更新生效,需要重启系统。然后使用下面的命令再次启动服务。
service vboxdrv setup
当出现下面运行信息时说明启动成功,这时就可以创建虚拟机了。
Stopping VirtualBox kernel modules [确定]
Uninstalling old VirtualBox DKMS kernel modules [确定]
Trying to register the VirtualBox kernel modules using DKMS[确定]
Starting VirtualBox kernel modules [确定]
3)执行yum -y install VirtualBox-5.0遇到
Error! Your kernel headers for kernel 2.6.32-504.el6.x86_64 cannot be found at
/lib/modules/2.6.32-504.el6.x86_64/build or /lib/modules/2.6.32-504.el6.x86_64/source.
 [FAILED]

  (Failed, trying without DKMS)

在CentOS 6.6 64bit上安装Oracle VirtualBox 5.0.12

找不到指定的源码头文件,设置环境变量KERN_DIR后若不行,需要升级内核版本并重启系统

参考文献
[1].http://www.cnblogs.com/fsjohnhuang/p/3976331.html  非常重要
[2].http://www.cnblogs.com/xia520pi/p/3545666.html     一般性参考
[3].https://www.virtualbox.org/wiki/Linux_Downloads   官网安装指南
[4].https://wiki.centos.org/zh/HowTos/Virtualization/VirtualBox  CentOS安装指南
[5].http://www.virtualbox.org/manual/UserManual.html  VirtualBox使用手册
[6].https://wiki.centos.org/zh/AdditionalResources/Repositories/RPMForge 安装RPMforge
[7].http://tecadmin.net/install-oracle-virtualbox-on-centos-redhat-and-fedora/#   非常关键的环境变量设置
[8].http://www.tecmint.com/install-virtualbox-on-redhat-centos-fedora/
[9].https://wiki.centos.org/zh/HowTos/Virtualization/VirtualBox/CentOSguest  在VirtualBox上安装CentOS
[10].http://blog.sina.com.cn/s/blog_6e0c0fdf010199f4.html 升级系统内核并重启系统