![自更新至 3.13.0-27 后,无法在 14.04 中加载 nvidia 驱动程序](https://linux22.com/image/974050/%E8%87%AA%E6%9B%B4%E6%96%B0%E8%87%B3%203.13.0-27%20%E5%90%8E%EF%BC%8C%E6%97%A0%E6%B3%95%E5%9C%A8%2014.04%20%E4%B8%AD%E5%8A%A0%E8%BD%BD%20nvidia%20%E9%A9%B1%E5%8A%A8%E7%A8%8B%E5%BA%8F.png)
正如标题所述,自从更新到内核 3.13.0-27 以来,我无法再使用专有 NVIDIA 驱动程序加载 Ubuntu,而且它仍然无法在 29 上运行。新驱动程序运行良好,但由于我正在为某些应用程序使用 CUDA,因此它无法运行。我尝试过多次重新安装驱动程序(使用sudo apt-get purge nvidia*
),但我总是启动到登录屏幕的低图形模式,登录后 unity 不会加载。
我使用的是 nvidia-331-updates,但也尝试了不同的版本,但所有版本的结果都一样。更新前一切都运行良好,更新后也是如此,直到 3.13.0-29,我才能够通过从 3.14.0-24 内核启动来加载驱动程序。然而,今天又进行了一次更新,这个功能就失效了。我还尝试重新安装 ubuntu-desktop 和 unity,结果没有变化。我有一台 NVIDIA GTX 570。有什么想法吗?
lspci -nnk | grep -iA2 VGA
以下是(删除 nvidia 驱动程序后)的输出:
VGA compatible controller [0300]: NVIDIA Corporation GF110 [GeForce GTX 570 Rev. 2] [10de:1086] (rev a1)
Subsystem: NVIDIA Corporation Device [10de:0871]
Kernel driver in use: nouveau
这里的输出grep -e '(EE)' /var/log/Xorg.0.log
(EE) Failed to load module "nvidia" (module does not exist, 0)
[ 19.612] (EE) Failed to load module "nvidia" (module does not exist, 0)
[ 19.652] (EE) [drm] KMS not enabled
[ 19.652] (EE) [drm] KMS not enabled
[ 19.652] (EE) open /dev/dri/card0: No such file or directory
[ 19.652] (EE) open /dev/dri/card0: No such file or directory
[ 19.652] (EE) open /dev/dri/card0: No such file or directory
[ 19.652] (EE) open /dev/dri/card0: No such file or directory
[ 19.667] (EE) Screen 0 deleted because of no matching config section.
[ 19.667] (EE) Screen 0 deleted because of no matching config section.
[ 19.700] (EE) FBDEV(0): FBIOBLANK: Invalid argument
[ 19.735] (EE) AIGLX: reverting to software rendering
[ 20.383] (EE) FBDEV(0): FBIOBLANK: Invalid argument
答案1
我终于弄清楚了这个问题,但不确定这是一个错误还是一个功能。
因为我使用的是 CUDA 编译器,所以我使用 update-alternatives 将 gcc 4.4 设置为我的默认编译器。但是,自最新内核更新以来,如果默认编译器设置为其他版本而内核使用 4.8 构建,则 nvidia 驱动程序无法构建。当我尝试手动安装官方 nvidia 驱动程序而不使用 dkms(总是失败)时,我终于收到一条错误消息,为我指明了正确的方向。
将默认 gcc 重新设置为 4.8 解决了我的问题,我能够从 repo 和 nvidia 网站安装驱动程序。这个问题很难解决,因为从 repos 安装驱动程序时没有任何错误消息!