Linux下安装VirtualBox虚拟机
时间:2024-04-20 11:15:39 来源:网络cs 作者:付梓 栏目:卖家故事 阅读:
目录
1. 简介
2.下载及安装
3. 报错处理
3.1.红色框错误处理
3.2. 绿色框错误处理
1. 简介
VirtualBox是一款强大的x86和AMD64/Intel64虚拟化产品,适用于企业和家庭。VirtualBox不仅是为企业客户提供的一款功能丰富、高性能的产品,它也是根据GNU通用公共许可证(GPL)版本3条款作为开放源码软件免费提供的唯一专业解决方案。有关VirtualBox的介绍请参见“关于VirtualBox”。
目前,VirtualBox运行在Windows、Linux、Macintosh和Solaris主机上,支持大量客户操作系统,包括但不限于Windows (NT 4.0, 2000, XP, Server 2003, Vista, Windows 7, Windows 8, Windows 10), DOS/Windows 3。x, Linux (2.4, 2.6, 3)Solaris和OpenSolaris、OS/2和OpenBSD。
VirtualBox正在积极地开发,频繁地发布版本,并拥有不断增长的功能列表,支持它所运行的客户操作系统和平台。VirtualBox是一个由专门公司支持的社区努力:鼓励每个人都做出贡献
2.下载及安装
到Virtual Box下载中心页面根据你机器安装的Linux下载相应版本,如下为官网下载中心截图:
因为我本机装的CentOS 7,所以我选择的上图红色框中的版本。执行如下命令:
yum -y install VirtualBox-6.1-6.1.32_149290_el7-1.x86_64.rpm
注意:前面提到,因为我本机装的CentOS 7,所以命令是yum,其它版本的系统如:Ubuntu没有yum命令,但有类似的命令,如:apt-get install。请自行根据你本机Linux版本执行相应命令。
3. 报错处理
一旦安装完,默认会将Virtual Box可执行文件安装到/usr/bin目录,执行如下命令以启动
Virtual Box:
./virtualbox
弹出如下错误:
3.1.红色框错误处理
红色框是因为找不到Qt的库,因为Virtual Box界面用到了Qt的库,所以会报错。去Qt下载中心下载Qt并安装,注意:Qt版本不能太低也不能太高(新),我选的Qt 5.14.2版本,如下:
下载完成后,执行如下命令,以对其赋予可执行权限,否则会因为无可执行权限无法安装:
chmod +x qt-opensource-linux-x64-5.14.2.run
执行如下命令,安装Qt:
./qt-opensource-linux-x64-5.14.2.run
之后执行如下命令,配置Qt的库到系统库目录:
sudo vim /etc/profile
export LD_LIBRARY_PATH=/home/danshiming/Qt5.14.2/5.14.2/gcc_64/lib:$LD_LIBRARY_PATH
上面Qt的库目录,请根据你实际更改,执行如下命令(或重启Linux)以使上述的库目录生效:
source /etc/profile
执行如下命令启动Virtual Box:
./virtualbox
启动界面如下:
至此,VirtualBox虚拟机安装完成。
3.2. 绿色框错误处理
绿色框提示原因是:vboxdrv内核模块没有加载。其原因是:要么是vboxdrv内核模块对当前内核为6.3.8-1.el7.elrepo.x86_64的CentOS 7系统不可用;要么就是可利用但加载失败。请用sudo /sbin/vboxconfig重新编译vboxdrv内核模块。执行如下命令,以编译vboxdrv内核模块:
sudo /sbin/vboxconfig
但编译报错,找到报错日志如下:
从日志可以看出失败的原因是:编译 vboxdrv内核模块用的gcc版本是4.8.5,而vboxdrv内核模块是gcc 9.3.1编译的,即编译vboxdrv内核模块时,从本机器找到的gcc是gcc 4.8.5版本,gcc编译器版本太低导致编译vboxdrv内核模块时很多编译参数不支持,从而导致编译vboxdrv内核模块失败。有两种方法升级gcc版本。
第1种,通过下载gcc最新源码,重新编译安装gcc,这种方法适用所有的linux,具体参见Linux下升级gcc(亲测可用)博文,这种方法非常耗时,编译gcc都要四小时左右。
第2种方法按如下步骤进行(这种方法貌似只有centos支持):
1、安装centos-release-scl
sudo yum install centos-release-scl
2、安装devtoolset 注意,如果想安装9.*版本的,就改成devtoolset-9-gcc*,以此类推:
sudo yum install devtoolset-9-gcc*
3、激活对应的devtoolset 你可以一次安装多个版本的devtoolset,需要的时候用下面这条命令切换到对应的版本,如下为切换到gcc 9
scl enable devtoolset-9 bash
大功告成,查看一下gcc版本
gcc -v
补充:这条激活命令只对本次会话有效,重启会话后还是会变回原来的4.8.5版本,要想随意切换可按如下操作。
首先,安装的devtoolset是在 /opt/rh 目录下的每个版本目录下面都有enable文件,如果需要启用某个版本,只需要执行/opt/rh/devtoolset*目录下的
source ./enable
所以要想切换到9*版本,只需要执行
source /opt/rh/devtoolset-9/enable
4、直接替换旧的gcc
旧的gcc是运行的 /usr/bin/gcc,所以将该目录下的gcc/g++替换为刚安装的新版本gcc软连接,免得每次enable
mv /usr/bin/gcc /usr/bin/gcc-4.8.5ln -s /opt/rh/devtoolset-9/root/bin/gcc /usr/bin/gccmv /usr/bin/g++ /usr/bin/g++-4.8.5ln -s /opt/rh/devtoolset-9/root/bin/g++ /usr/bin/g++gcc --versiong++ --version
5、再次编译vboxdrv内核
执行如下命令,再次编译vboxdrv内核:
sudo /sbin/vboxconfig
结果如下:
如果没发生报错,则证明编译成功。
利用VirtualBox虚拟机新建虚拟机时,无法启动新建的操作系统,弹出如下错误:
网上找了很多文章都没解决,有解决的朋友敬请留言!!!因此建议用VMware虚拟机,关于如何安装VMware,请参考Linux下安装VMware虚拟机 博文。
参考链接:https://zhuanlan.zhihu.com/p/588440823?utm_id=0
阅读本书更多章节>>>>本文链接:https://www.kjpai.cn/gushi/2024-04-20/160596.html,文章来源:网络cs,作者:付梓,版权归作者所有,如需转载请注明来源和作者,否则将追究法律责任!