centos7.9安装virtualBox教程(离线rpm/互联网)

目录

一、在线安装

二、离线版rpm安装

1、下载依赖及安装包

二、拷贝并安装

三、启动验证


一、在线安装

1、https://www.virtualbox.org

2、官网download页面,拉到最下边。

3、打开文件地址,这是yum源。

 4、配置centos中yum源

通过cd进入/etc/yum.repos.d,vim编辑virtualbox.repo,把之前复制的内容粘贴进去,或者是在外边建立好了virtualbox.repo文件,导入到目录下。

 5、保证网络能连接互联网,安装

# 更新yum源
sudo yum update
或
# 查询包,会自动导入
sudo yum search virtual

 输入y,自动导入virtual安装包。

6、安装

sudo yum search virtualBox

# 搜索后安装最新版本即可
sudo yum install -y VirtualBox-7.0.x86_64

 在线安装的好处就是可以自动处理依赖关系,一键安装。

6、重新编译VirtualBox内核

sudo /sbin/vboxconfig

当您在Linux系统上安装VirtualBox时,它将会安装内核模块以便让VirtualBox虚拟机能够与主机操作系统进行通信。然而,如果您的Linux内核或VirtualBox发生了升级或更改,可能会导致这些内核模块不兼容或无法加载,这会导致VirtualBox无法正常工作。

在这种情况下,您可以运行sudo /sbin/vboxconfig命令,它会重新编译VirtualBox内核模块并将其与当前正在运行的内核匹配。这将确保VirtualBox能够与当前的Linux内核兼容并正常工作。

需要注意的是,sudo /sbin/vboxconfig命令需要以管理员权限运行,因此需要使用sudo命令来执行它。

不报错就直接跳到下一个标题。

有可能报错的问题:

kernel-devel软件包未安装,无法编译内核模块。

"kernel-devel"和"kernel-header"都是Linux操作系统中用于开发和编译内核模块所需的软件包。它们都包含用于编译内核模块所需的头文件和工具链。但是,它们之间存在一些区别。

通常,"kernel-devel"软件包包含完整的内核源代码和与内核版本匹配的开发工具链,因此它比"kernel-header"软件包更大。另一方面,"kernel-header"软件包只包含必要的内核头文件,以便在编译内核模块时使用。如果您只需要编译内核模块,则使用"kernel-header"软件包可能会更加节省空间。但是,如果您需要完整的内核源代码和开发工具链,则应该使用"kernel-devel"软件包。

注意:

通常是新装机,

(1)没有安装kernel-devel软件包。

(2)或者是安装镜像中的 kernel 版本比线上 repo 库中的 kernel-devel 低,因此安装 kernel-devel 时,安装了比当前运行内核版本高的 kernel-devel,为了一致,可以直接升级当前内核。

# 查看关于kernel已安装的软件
rpm -qa | grep kernel

# 查看内核版本
uname -r
# 查看kernel-headers版本
rpm -qa kernel-headers
# 查看kernel-devel版本
rpm -qa kernel-devel

发现kernel版本低,kernel-devel没有安装。

# 安装kernel-devel
sudo yum install -y kernel-devel
# 更新kernel
sudo yum update kernel

注意:更新后需要重启系统

查看版本,一致了。

8、启动服务

# 重启
sudo systemctl restart vboxdrv.service
# 查看状态
sudo systemctl status vboxdrv.service

二、离线版rpm安装

1、下载依赖及安装包

(1)首先检查一下无法联网机器上的kernel与kernel-devel是否都安装了并且版本一致。一致可直接跳转到第2步。

sudo rpm -qa | grep kernel

像我的机器上,就是kernel-devel未安装。 所以得先从有网络的机器上下载kernel-devel的安装包及依赖。新建文件夹并在文件夹下执行一下命令。

# 搜索软件包
yum search kernel-devel
# 如果没有repotrack命令,先安装yum-utils,有就不用执行
sudo yum install -y yum-utils

sudo repotrack kernel-devel.x86_64

下载好后,检查目录中下载的kernel-devel的rpm安装包是否与未联网的机器上的kernel版本一致。

# 在未联网的机器上运行
uname -r
# 在已下载的kernel-devel目录下运行
ls | grep kernel

 

 我这里一致。如果不一致,可以以同样的方式下载一下kernel,一并安装。

可以放到一个文件夹下,重复的依赖会自动覆盖。不影响安装。

(2)查看未联网机器上是否安装有gcc,make,perl,没有就下载安装

gcc是GNU编译器套件(GNU Compiler Collection)的缩写,是一款编译器工具,用于将C、C++等编程语言的源代码转换为可执行文件或库文件。它是一个非常常用的编译器,常用于开发系统级软件、操作系统、设备驱动程序等。

make是一个构建工具,它的主要功能是管理软件编译过程中的依赖关系,自动化编译过程,可以根据一系列规则和指令将源代码转换为可执行文件。它可以自动判断哪些文件需要重新编译,从而提高编译效率。

perl是一种脚本语言,可用于文本处理、网络编程、系统管理等多种任务,它的特点是易于学习、强大的正则表达式支持以及大量的模块库。它常用于开发网站、CGI脚本、系统管理工具等。

可以按照上述方式下载,并将他们放到一个包里。

并执行rpm安装命令,保证三个命令都能使用。

(3)在有互联网的机器上下载安装包及依赖

根据上述在线版的教程中2456步骤,导入yum源,并使用sudo yum update更新源。

(4)下载需要的安装包版本及全量依赖,我这里下载最新版

新建一个空文件夹,在文件夹下运行一下命令。等运行完后,所有rpm依赖包及软件安装包会全部下载到此目录下。

# repotrack会下载软件包及全量依赖
sudo repotrack VirtualBox-7.0.x86_64

二、拷贝并安装

将上述下载的所有文件或文件夹拷贝到无法联网的机器上。

(1)kernel-devel(如果需要),kernel(如果需要),都拷贝到一个文件夹中,如果有一样的可以覆盖。并将此目录及目录下所有文件都拷贝到无法联网的机器上。

我这里就把kernel,kernel-devel都传到一个文件夹里了,然后拷贝到无法无法联网的机器上,执行安装命令。进入此目录,在此目录运行安装命令

sudo rpm -Uvh --force --nodeps *.rpm

安装完kernel内核后需要重启

重启后查看下,可以看到已安装并版本一致。

(2)安装gcc+make+perl(如果需要)

方法与上述相同

(3)安装virtualbox

同样,在含有virtualbox的rpm软件包和依赖目录下运行安装命令

sudo rpm -Uvh --force --nodeps *.rpm

三、启动验证

# 重启
sudo systemctl restart vboxdrv.service
# 查看状态
sudo systemctl status vboxdrv.service

  • 10
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

mr__bai

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值