RHEL:此系统目前尚未设置为构建内核模块

问题描述 投票:6回答:7

我试图在RHEL 7 VM上安装virtualbox 5.2当我尝试重建内核模块时,我收到以下错误:

[root@myserver~]# /usr/lib/virtualbox/vboxdrv.sh setup
vboxdrv.sh: Stopping VirtualBox services.
vboxdrv.sh: Building VirtualBox kernel modules.
This system is currently not set up to build kernel modules.
Please install the Linux kernel "header" files matching the current kernel
for adding new hardware support to the system.
The distribution packages containing the headers are probably:
    kernel-devel kernel-devel-3.10.0-693.11.1.el7.x86_64

我尝试安装kernel-devel并获得成功消息

Installed:
  kernel-devel.x86_64 0:3.10.0-693.21.1.el7                                     

Complete!

但仍然安装失败。

知道这里缺少什么吗?

virtualbox redhat rhel7
7个回答
11
投票

首先在终端运行:uname -r然后你将获得有关当前内核(CURRENT_KERNEL)的名称和信息。

现在您可以使用命令安装:yum install kernel-devel-CURRENT_KERNEL

注意:用从uname -r获得的字符串替换CURRENT_KERNEL。


8
投票

sudo yum install -y "kernel-devel-$(uname -r)"

在Fedora上替换dnf。我不需要重启,但是ymmv。


2
投票

当我尝试在我的Kali Linux(GNU / Linux滚动版本)上升级VirtualBox 5.2.12 Guest Additions时发生了同样的消息。我通过以下步骤修复它:

  1. 请更新/升级以使您的系统保持最新状态。不要忘记重启系统。
  2. 运行“apt-get install linux-headers - $(uname -r)”。
  3. 从终端运行VBoxLinuxAdditions.run,错误消息消失,Guest Additions将成功安装。
  4. 重启系统,Guest Additions工作正常。

2
投票

我来到这里寻找CentOS 6的相同答案,上面的答案稍作修改(因此,对于其他任何人来说也是如此)......

yum install -y kernel-devel kernel-devel-$(uname -r)

所以,“yum”而不是“apt-get”此外,一些Linux使用“linux-headers”而不是“kernel-devel”,但原则似乎是相同的。


1
投票

米兰拉科斯是对的。您安装的kernel-devel必须具有与uname -r输出完全相同的后缀字符串。此外,vboxdrv.sh设置期间的日志还显示了kernel-devel的所需版本。

所以对于你的情况,你将运行命令:sudo yum install kernel-devel-3.10.0-693.11.1.el7.x86_64


1
投票

您正在使用的内核是kernel-devel-3.10.0-693.11.1.el7.x86_64与您安装kernel-devel.x86_64 0:3.10.0-693.21.1.el7的内核略有不同。在我的情况下,我的操作系统上安装了几个不同的版本,“sudo yum install kernel-devel”总是为我安装最新版本。然后我通过设置我的默认内核版本和为我安装的yum相同来解决这个问题。您可以通过以下命令检查操作系统上安装的内核:

sudo awk -F\' '$1=="menuentry " {print i++ " : " $2}' /etc/grub2.cfg

然后按照以下命令设置您选择使用的内核版本与yum select一样:(注意最后的数字是从前面的命令结果中获取的),

sudo grub2-set-default 0

使用'gurb2-mkconfig'命令生成grub2配置,然后重启服务器。

sudo grub2-mkconfig -o /boot/grub2/grub.cfg
sudo reboot

0
投票

yum install kernel-devel-3.10.0-693.11.1.el7.x86_64解决了这个问题。

© www.soinside.com 2019 - 2024. All rights reserved.