TL;DR:正在运行的内核版本比 VirtualBox 在尝试安装时找到的内核源版本旧。无需自己构建源代码;最终解决方案是实际删除较新版本的内核源代码,并安装在 中找到的匹配版本uname -r,一直到yum.
历史:
尝试在新的 CentOS 服务器上安装 VirtualBox-4.2 时,我得到以下信息:
在 /lib/modules/2.6.32-358.6.2.el6.x86_64/build 或 /lib/modules/2.6.32-358.6 中找不到内核 2.6.32-358.6.2.el6.x86_64 的内核头文件。 2.el6.x86_64/源。
因此,按照 CentOS 上的说明,我需要内核源代码,我尝试获取源代码,现在我有~/rpmbuild/SOURCES/kernel-2.6.32-358.6.2.el62 个文件夹:linux-x和vanilla-x.
我再次尝试安装 VirtualBox,但由于找不到内核源而出错,因此我还必须设置这些符号链接:
/lib/modules/2.6.32-358.6.2.el6.x86_64/build -> /usr/src/kernels/2.6.32-358.6.2.el6.x86_64 /usr/src/kernels/2.6.32-358.6 .2.el6.x86_64 -> /home/dirt/rpmbuild/BUILD/kernel-2.6.32-358.6.2.el6/vanilla-2.6.32-358.6.2.el6
但是当现在尝试安装 VirtualBox 时,我收到关于需要运行 make 的错误:
/var/log/vbox-install.log
Uninstalling modules from DKMS
Attempting to install using DKMS
Creating symlink /var/lib/dkms/vboxhost/4.2.18/source ->
/usr/src/vboxhost-4.2.18
DKMS: add completed.
Kernel preparation unnecessary for this kernel. Skipping...
Building module:
cleaning build area... …Run Code Online (Sandbox Code Playgroud)