Dyn*_*ano 5 linux centos virtualbox kernel
我一直很难在我的 Oracle Linux 7 上安装 Guest Additions。我有 VirtualBox 版本 6.1.4。我有来宾添加版本 6.0.4
该机器具有 4.14.35-1902.7.3.1 内核版本。我成功地在它上面安装了一个内核版本 4.1.12-124.24.3。为此,我按照此页面的说明进行操作:https : //www.thegeekdiary.com/centos-rhel-7-change-default-kernel-boot-with-old-kernel/
安装步骤:
yum -y install kernel-uek-firmware-4.1.12-124.24.3.el6uek.noarch.rpm
yum -y install kernel-uek-4.1.12-124.24.3.el6uek.x86_64.rpm
yum -y install kernel-uek-devel-4.1.12-124.24.3.el6uek.x86_64.rpm
awk -F\' '$1=="menuentry " {print $2}' /etc/grub2.cfg
grub2-set-default 0 #depends on the above result
grub2-mkconfig -o /boot/grub2/grub.cfg
And reboot.
Run Code Online (Sandbox Code Playgroud)
当我运行时,uname -r我得到了这个:4.1.12-124.24.3.el6uek.x86_64
在这一点上,一切都很好,直到我必须安装 Guest Additions。
当我运行 ./VBoxLinuxAdditions.run 时返回此错误:
Verifying archive integrity... All good.
Uncompressing VirtualBox 6.0.4 Guest Additions for Linux........
VirtualBox Guest Additions installer
Removing installed version 6.1.4 of VirtualBox Guest Additions...
Copying additional installer modules ...
Installing additional modules ...
VirtualBox Guest Additions: Starting.
VirtualBox Guest Additions: Building the VirtualBox Guest Additions kernel
modules. This may take a while.
VirtualBox Guest Additions: To build modules for other installed kernels, run
VirtualBox Guest Additions: /sbin/rcvboxadd quicksetup <version>
VirtualBox Guest Additions: or
VirtualBox Guest Additions: /sbin/rcvboxadd quicksetup all
VirtualBox Guest Additions: Kernel headers not found for target kernel
4.1.12-124.24.3.el6uek.x86_64. Please install them and execute
/sbin/rcvboxadd setup
modprobe vboxguest failed
The log file /var/log/vboxadd-setup.log may contain further information.
Run Code Online (Sandbox Code Playgroud)
我重新运行,/sbin/rcvboxadd setup但它是相同的日志消息。日志文件刚刚显示“modprobe vboxguest 失败”。我还将 KERN_DIR 环境变量导出为
/usr/src/kernels/4.1.12-124.24.3.el6uek.x86_64
我做错了什么?有谁知道如何正确安装它?如果有人有任何想法,我将非常感谢反馈。
在我的 CentOS 6 VM 上,没有安装内核开发包,所以我必须这样做:
yum install kernel-devel
Run Code Online (Sandbox Code Playgroud)
然而,这在内核开发版本 ( 2.6.32-754.31.1.el6) 和实际内核版本 ( 2.6.32-754.el6)之间造成了不匹配。您可以使用yum list kernel*. 所以,我然后更新了我的内核版本并重新启动:
yum update kernel kernel-headers
reboot now
Run Code Online (Sandbox Code Playgroud)
在我的系统上,Guest Additionsautorun.sh文件在此之后仍然没有完成,因为gcc包丢失了:
yum install gcc
Run Code Online (Sandbox Code Playgroud)
安装后gcc,Guest Additions安装成功,再次重启后生效。
小智 3
我不确定,但我认为即使您加载正确的内核,包含标头的开发包也会因为最新的内核版本与当前内核不兼容而检查:
rpm -qa | grep kernel
Run Code Online (Sandbox Code Playgroud)
然后安装正确的开发版本并确保安装了gcc和make :
yum -y install gcc make
yum -y install kernel-uek-devel-`uname -r`
Run Code Online (Sandbox Code Playgroud)
如果存储库不可用,请先执行此操作
yum-config-manager --add-repo=yum.oracle.com/repo/OracleLinux/OL6/UEKR4/archive/x86_64
sudo yum install -y kernel-uek-4.1.12-124.24.3.el6uek.x86_64
sudo yum install -y kernel-uek-devel-4.1.12-124.24.3.el6uek.x86_64
Run Code Online (Sandbox Code Playgroud)