更新管理器更新内核模块但不更新 nvidia 客户端,如何让它们匹配?

更新管理器更新内核模块但不更新 nvidia 客户端,如何让它们匹配?

2012-12-22 的 12.04 更新将内核更新至 3.2.0-35-generic 并尝试将 nvidia 驱动程序更新至 nvidia-experimental-310 310.14-0ubuntu0.1,但没有成功。

2013-01-06 更新管理器将内核模块更新为 nvidia-experimental-310 310.14-0ubuntu0.1,但显然没有更新实际驱动程序,而是将其保留在 304.43。

因此,更新后,X 会因内核模式/图形驱动程序不匹配而失败。这让我只剩下一个控制台。

该系统是直接安装的,使用了 Ubuntu 提供的专有 nvidia 驱动程序。

我需要从控制台做什么才能使客户端和内核版本匹配?

jockey.log 是这里,以下是其他日志摘录:

from dpkg.log
2012-12-22 10:15:29 configure linux-image-3.2.0-35-generic 3.2.0-35.55 <none>
2012-12-22 10:15:29 status unpacked linux-image-3.2.0-35-generic 3.2.0-35.55
2012-12-22 10:15:29 status half-configured linux-image-3.2.0-35-generic 3.2.0-35.55
2012-12-22 10:16:47 status installed linux-image-3.2.0-35-generic 3.2.0-35.55
skip
2012-12-22 10:54:19 install nvidia-experimental-310 <none> 310.14-0ubuntu0.1
2012-12-22 10:54:19 status half-installed nvidia-experimental-310 310.14-0ubuntu0.1
2012-12-22 10:54:27 status triggers-pending man-db 2.6.1-2
2012-12-22 10:54:27 status half-installed nvidia-experimental-310 310.14-0ubuntu0.1
2012-12-22 10:54:27 status triggers-pending desktop-file-utils 0.20-0ubuntu3propietary
2012-12-22 10:54:27 status half-installed nvidia-experimental-310 310.14-0ubuntu0.1
2012-12-22 10:54:27 status triggers-pending gnome-menus 3.4.0-0ubuntu1
2012-12-22 10:54:27 status half-installed nvidia-experimental-310 310.14-0ubuntu0.1
2012-12-22 10:54:32 status unpacked nvidia-experimental-310 310.14-0ubuntu0.1
2012-12-22 10:54:32 status unpacked nvidia-experimental-310 310.14-0ubuntu0.1
2012-12-22 10:54:32 install nvidia-settings-experimental-310 <none> 310.14-0ubuntu0.1
2012-12-22 10:54:32 status half-installed nvidia-settings-experimental-310 310.14-0ubuntu0.1
2012-12-22 10:54:32 status not-installed nvidia-settings-experimental-310 <none>
skip
2013-01-06 10:59:13 startup packages configure
2013-01-06 10:59:13 configure nvidia-experimental-310 310.14-0ubuntu0.1 <none>
2013-01-06 10:59:13 status unpacked nvidia-experimental-310 310.14-0ubuntu0.1
2013-01-06 10:59:13 status unpacked nvidia-experimental-310 310.14-0ubuntu0.1
2013-01-06 10:59:13 status half-configured nvidia-experimental-310 310.14-0ubuntu0.1
2013-01-06 11:00:51 status installed nvidia-experimental-310 310.14-0ubuntu0.1
from syslog
Jan  6 11:22:50 64bitwrksta kernel: [    0.000000] Kernel command line: BOOT_IMAGE=/boot/vmlinuz-3.2.0-35-generic root=UUID=98396955-e718-4c04-83fa-b23dbb537615 ro quiet splash
skip
Jan  6 11:22:53 64bitwrksta kernel: [   32.642878] NVRM: API mismatch: the client has the version 304.43, but
Jan  6 11:22:53 64bitwrksta kernel: [   32.642880] NVRM: this kernel module has the version 310.14.  Please
Jan  6 11:22:53 64bitwrksta kernel: [   32.642880] NVRM: make sure that this kernel module and all NVIDIA driver
Jan  6 11:22:53 64bitwrksta kernel: [   32.642881] NVRM: components have the same version.
Jan  6 11:22:53 64bitwrksta kernel: [   32.643200] NVRM: API mismatch: the client has the version 304.43, but
Jan  6 11:22:53 64bitwrksta kernel: [   32.643201] NVRM: this kernel module has the version 310.14.  Please
Jan  6 11:22:53 64bitwrksta kernel: [   32.643202] NVRM: make sure that this kernel module and all NVIDIA driver
Jan  6 11:22:53 64bitwrksta kernel: [   32.643203] NVRM: components have the same version.

答案1

该问题源于多次安装 nvidia,解决方法是删除不需要的。

这应该从控制台运行没有X 正在運行。

找出已安装的sudo dkpg --list | grep nvidia

从控制台:sudo dpkg --list | grep nvidia它将给你类似的内容:

ii  nvidia-common                                 1:0.2.44.2                                         Find obsolete NVIDIA drivers
ii  nvidia-current                                295.40-0ubuntu1.1                                  NVIDIA binary Xorg driver, kernel module and VDPAU library
ii  nvidia-current-updates                        304.43-0ubuntu0.1                                  NVIDIA binary Xorg driver, kernel module and VDPAU library
ii  nvidia-experimental-310                       310.14-0ubuntu0.1                                  Experimental NVIDIA binary Xorg driver, kernel module and VDPAU library
ii  nvidia-settings                               295.33-0ubuntu1                                    Tool of configuring the NVIDIA graphics driver
ii  nvidia-settings-updates                       304.43-0ubuntu0.2                                  Tool of configuring the NVIDIA graphics driver

据推测(未记录)ii意味着安装,rc意味着删除。

然后你删除那些不需要的,对我来说:

sudo apt-get remove nvidia-current
sudo apt-get remove nvidia-experimental-310

run:sudo apt-get autoremove对我来说,它可以摆脱不需要的依赖nvidia-settings

然后盖上盖子,运行所需的驱动程序(对我来说):sudo apt-get install --reinstall nvidia-current-updates

现在我的 sudo dpkg --list | grep nvidia 看起来像:

ii  nvidia-common                                 1:0.2.44.2                                         Find obsolete NVIDIA drivers
rc  nvidia-current                                295.40-0ubuntu1.1                                  NVIDIA binary Xorg driver, kernel module and VDPAU library
ii  nvidia-current-updates                        304.43-0ubuntu0.1                                  NVIDIA binary Xorg driver, kernel module and VDPAU library
rc  nvidia-experimental-310                       310.14-0ubuntu0.1                                  Experimental NVIDIA binary Xorg driver, kernel module and VDPAU library
rc  nvidia-settings                               295.33-0ubuntu1                                    Tool of configuring the NVIDIA graphics driver
ii  nvidia-settings-updates                       304.43-0ubuntu0.2                                  Tool of configuring the NVIDIA graphics driver

我重新启动后 X 又可以正常工作了。

相关内容