我很幸运,我有几个旧的内核,它们可以工作。新内核(可能以某种方式通过 VirtualBox 修补)无法加载。失败的是 X-server,当它尝试启动时,日志如下:
[ 14.284] (II) LoadModule: "nvidia"
[ 14.284] (II) Loading /usr/lib64/xorg/modules/drivers/nvidia_drv.so
[ 14.285] (II) Module nvidia: vendor="NVIDIA Corporation"
[ 14.285] compiled for 4.0.2, module version = 1.0.0
[ 14.285] Module class: X.Org Video Driver
[ 14.294] (EE) NVIDIA: Failed to load the NVIDIA kernel module. Please check your
[ 14.294] (EE) NVIDIA: system's kernel log for additional error messages.
[ 14.294] (II) UnloadModule: "nvidia"
[ 14.294] (II) Unloading nvidia
[ 14.294] (EE) Failed to load module "nvidia" (module-specific error, 0)
[ 14.294] (EE) No drivers available.
[ 14.294]
Fatal server error:
[ 14.294] no screens found
也许,我可以卸载 VirtualBox,然后升级内核 + NVidia 驱动程序(哦上帝为什么......),我会让我的笔记本电脑恢复正常,但是,这对我来说意味着没有 VirtualBox。
那么问题来了:VirtualBox 和 NVidia 之间有什么办法可以交朋友吗?也许我需要一些 VirtualBox 的特定驱动程序?
编辑
(我是问题的作者,但由于帐户管理中发生一些错误,我不再出现)
下面是我可以得到的内容,dmesg
但它与上面的注释一样简洁:
[ 14.058801] nvidia: module license 'NVIDIA' taints kernel.
[ 14.058807] Disabling lock debugging due to kernel taint
[ 14.172337] input: HDA NVidia HDMI/DP,pcm=9 as /devices/pci0000:00/0000:00:01.0/0000:01:00.1/sound/card1/input13
[ 14.172636] input: HDA NVidia HDMI/DP,pcm=8 as /devices/pci0000:00/0000:00:01.0/0000:01:00.1/sound/card1/input14
[ 14.172888] input: HDA NVidia HDMI/DP,pcm=7 as /devices/pci0000:00/0000:00:01.0/0000:01:00.1/sound/card1/input15
[ 14.173166] input: HDA NVidia HDMI/DP,pcm=3 as /devices/pci0000:00/0000:00:01.0/0000:01:00.1/sound/card1/input16
[ 14.175252] vgaarb: device changed decodes: PCI:0000:01:00.0,olddecodes=io+mem,decodes=none:owns=io+mem
[ 14.175527] NVRM: loading NVIDIA UNIX x86_64 Kernel Module 304.54 Sat Sep 29 00:05:49 PDT 2012
我现在还将查看 yum 日志,看看是否有记录说明它对内核/配置到底做了什么。
编辑2
Jul 26 00:53:18 Installed: kmod-VirtualBox-3.9.10-100.fc17.x86_64-4.2.12-1.fc17.13.x86_64
Jul 26 00:53:19 Installed: kmod-VirtualBox-4.2.12-1.fc17.13.x86_64
Jul 26 00:53:25 Installed: VirtualBox-4.2.12-1.fc17.x86_64
Jul 26 00:53:25 Erased: 1:kmod-nvidia-3.5.3-1.fc17.x86_64-304.51-1.fc17.x86_64
好吧,显然,yum
决定需要删除 NVidia 内核模块...那么我的猜测是否正确,这两者不兼容?如果是的话,他们就没有办法合作吗? VirtualBox 的替代方案(如果有的话)是什么?
抱歉,我还不能发表评论。只是要明确一点:驱动程序适用于主机系统,而不是客户系统。事实上,我鼓起勇气删除了所有与 NVidia 相关的东西,重新安装它们,然后 VirtualBox 就正常启动了。我所做的事情大致如下:
# yum update kernel* selinux-policy*
# yum list installed | grep nvidia | yum remove
# reboot
# yum install akmod-nvidia nvidia-settings nvidia-xconfig
我想我有 CUDA 驱动程序(用于 NVidia 并行技术的开发),但我无论如何都没有使用它们。