![NVIDIA 驱动程序更新问题](https://linux22.com/image/885834/NVIDIA%20%E9%A9%B1%E5%8A%A8%E7%A8%8B%E5%BA%8F%E6%9B%B4%E6%96%B0%E9%97%AE%E9%A2%98.png)
2016 年 8 月 23 日,我通过 ubuntu 默认包管理系统获得了 nvidia 包更新。
此次更新后,X-Windows 系统不再起作用。
但是——一个接一个:
使用的硬件:
uname -a
Linux studio16 4.2.0-42-lowlatency #49-Ubuntu SMP PREEMPT Tue Jun 28 23:12:17 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
主要问题:
part of /var/log/kern.log:
NVRM: API mismatch: the client has the version 352.99, but
NVRM: this kernel module has the version 352.93. Please
NVRM: make sur that this kernel module and all NVIDIA driver
NVRM: components have the same version.
NVRM: nvidia_frontend_ioctl: minor 255, module->ioctl failed, error -22
这对我来说意味着:安装无法清理所有旧代码 - 特别是内核模块 - 以便与新版本 352.99 一起使用。
因此我清理了所有 cuda 和 nvidia 包并仅安装了 nvidia:
dpkg --list | fgrep nvidia
ii nvidia-352 352.99-0ubuntu1 amd64 NVIDIA binary driver - version 352.99
ii nvidia-opencl-icd-352 352.99-0ubuntu1 amd64 NVIDIA OpenCL ICD
ii nvidia-prime 0.8.1 amd64 Tools to enable NVIDIA's Prime
ii nvidia-settings 352.99-0ubuntu1 amd64 Tool for configureing the NVIDIA graphics driver
还有其他价格为 352.99 的软件包,例如:
ii libcuda1-352 352.99-0ubuntu1 amd64 NVIDIA CUDA runtime library
ii libxnvctrl0 352.99-0ubuntu1 amd64 NV-CONTROL X extension (runtime library)
在这种配置中我得到
nvidia: module license 'NVIDIA' taints kernel.
nvidia: module verification failed: signature and/or required key missing - tainting kernel
在 /var/log/kern.log 中。
此后仅记录此类型的消息:
NVRM: RmInitAdapter failed! (0x2d:0x63:1406)
NVRM: rm_init_adapter failed for device bearing minor number 0
NVRM: nvidia_frontend_open: minor 0, module->open() failed, error -5
问题是什么——包的安装不能以正确的方式进行?
br 雷纳
答案1
现在让我们根据更多信息来分析这个问题:
8月23日有什么包裹活动?
查看 /var/log/apt/term.log
Log started: 2016-08-01 22:20:12
nvidia-docker (1.0.0~rc.3-1) wird eingerichtet ...^M
Setting up permissions^M
chown: ungültige Spezifikation: »nvidia-docker:“^M
dpkg: Fehler beim Bearbeiten des Paketes nvidia-docker (--configure):^M
Unterprozess installiertes post-installation-Skript gab den Fehlerwert 1 zurück^M
Fehler traten auf beim Bearbeiten von:^M
nvidia-docker^M
Log ended: 2016-08-01 22:20:12
Log started: 2016-08-23 19:46:24
(Reading database ... ^M(Reading database ... 5%^M(Reading database ... 10%^M(Reading database ... 15%^M(Reading database ... 20%^M(Reading database ... 25%^M(Reading database ... 30%^M(Reading database ... 35%^M(Reading database ... 40%^M(Reading database ... 45%^M(Reading database ... 50%^M(Reading database ... 55%^M(Reading database ... 60%^M(Reading database ... 65%^M(Reading database ... 70%^M(Reading database ... 75%^M(Reading database ... 80%^M(Reading database ... 85%^M(Reading database ... 90%^M(Reading database ... 95%^M(Reading database ... 100%^M(Reading database ... 535593 files and directories currently installed.)^M
Preparing to unpack .../nvidia-352_352.99-0ubuntu1_amd64.deb ...^M
Stopping nvidia-persistenced^M
nvidia-persistenced: Kein Prozess gefunden^M
Done.^M
Removing all DKMS Modules^M
Done.^M
Stopping previous nvidia-persistenced^M
nvidia-persistenced: Kein Prozess gefunden^M
Done.^M
Unpacking nvidia-352 (352.99-0ubuntu1) over (352.93-0ubuntu1) ...^M
Preparing to unpack .../nvidia-352-uvm_352.99-0ubuntu1_amd64.deb ...^M
Unpacking nvidia-352-uvm (352.99-0ubuntu1) over (352.93-0ubuntu1) ...^M
Preparing to unpack .../nvidia-352-dev_352.99-0ubuntu1_amd64.deb ...^M
Unpacking nvidia-352-dev (352.99-0ubuntu1) over (352.93-0ubuntu1) ...^M
Preparing to unpack .../nvidia-modprobe_352.99-0ubuntu1_amd64.deb ...^M
Unpacking nvidia-modprobe (352.99-0ubuntu1) over (352.93-0ubuntu1) ...^M
Preparing to unpack .../libxnvctrl0_352.99-0ubuntu1_amd64.deb ...^M
Unpacking libxnvctrl0 (352.99-0ubuntu1) over (352.93-0ubuntu1) ...^M
Preparing to unpack .../nvidia-settings_352.99-0ubuntu1_amd64.deb ...^M
Unpacking nvidia-settings (352.99-0ubuntu1) over (352.93-0ubuntu1) ...^M
Preparing to unpack .../libcuda1-352_352.99-0ubuntu1_amd64.deb ...^M
Unpacking libcuda1-352 (352.99-0ubuntu1) over (352.93-0ubuntu1) ...^M
Preparing to unpack .../nvidia-opencl-icd-352_352.99-0ubuntu1_amd64.deb ...^M
Unpacking nvidia-opencl-icd-352 (352.99-0ubuntu1) over (352.93-0ubuntu1) ...^M
Preparing to unpack .../cuda-drivers_352.99-1_amd64.deb ...^M
Unpacking cuda-drivers (352.99-1) over (352.93-1) ...^M
Processing triggers for man-db (2.7.4-1) ...^M
Processing triggers for ureadahead (0.100.0-19) ...^M
Processing triggers for desktop-file-utils (0.22-1ubuntu3) ...^M
Processing triggers for gnome-menus (3.13.3-6ubuntu1) ...^M
Processing triggers for mime-support (3.58ubuntu1) ...^M
Setting up nvidia-352 (352.99-0ubuntu1) ...^M
update-alternatives: renaming x86_64-linux-gnu_nvidia_app_profile slave link from /usr/share/nvidia/nvidia-application-profiles-352.93-rc to /usr/share/nvidia/nvidia-application-profiles-352.99-rc^M
update-alternatives: renaming x86_64-linux-gnu_nvidia_app_profile_keys slave link from /usr/share/nvidia/nvidia-application-profiles-352.93-key-documentation to /usr/share/nvidia/nvidia-application-profiles-352.99-key-documentation^M
update-alternatives: updating alternative /usr/lib/nvidia-352/ld.so.conf because link group x86_64-linux-gnu_gl_conf has changed slave links^M
update-initramfs: deferring update (trigger activated)^M
^M
A modprobe blacklist file has been created at /etc/modprobe.d to prevent Nouveau from loading. This can be reverted by deleting /etc/modprobe.d/nvidia-graphics-drivers.conf.^M
A new initrd image has also been created. To revert, please replace /boot/initrd-4.2.0-42-lowlatency with /boot/initrd-$(uname -r)-backup.^M
^M
*****************************************************************************^M
*** Reboot your computer and verify that the NVIDIA graphics driver can ***^M
*** be loaded. ***^M
*****************************************************************************^M
^M
INFO:Enable nvidia-352^M
DEBUG:Parsing /usr/share/ubuntu-drivers-common/quirks/put_your_quirks_here^M
DEBUG:Parsing /usr/share/ubuntu-drivers-common/quirks/lenovo_thinkpad^M
DEBUG:Parsing /usr/share/ubuntu-drivers-common/quirks/dell_latitude^M
Loading new nvidia-352-352.99 DKMS files...^M
Building only for 4.2.0-42-lowlatency^M
Building for architecture x86_64^M
Building initial module for 4.2.0-42-lowlatency^M
Done.^M
^M
nvidia_352:^M
Running module version sanity check.^M
- Original module^M
- No original module exists within this kernel^M
- Installation^M
- Installing to /lib/modules/4.2.0-42-lowlatency/updates/dkms/^M
^M
nvidia_352_uvm.ko:^M
Running module version sanity check.^M
- Original module^M
- No original module exists within this kernel^M
- Installation^M
- Installing to /lib/modules/4.2.0-42-lowlatency/updates/dkms/^M
^M
depmod....^M
^M
DKMS: install completed.^M
Setting up nvidia-352-uvm (352.99-0ubuntu1) ...^M
Setting up nvidia-352-dev (352.99-0ubuntu1) ...^M
Setting up nvidia-modprobe (352.99-0ubuntu1) ...^M
Setting up libxnvctrl0 (352.99-0ubuntu1) ...^M
Setting up nvidia-settings (352.99-0ubuntu1) ...^M
Setting up libcuda1-352 (352.99-0ubuntu1) ...^M
Setting up nvidia-opencl-icd-352 (352.99-0ubuntu1) ...^M
Setting up cuda-drivers (352.99-1) ...^M
Processing triggers for initramfs-tools (0.120ubuntu6) ...^M
update-initramfs: Generating /boot/initrd.img-4.2.0-42-lowlatency^M
Processing triggers for libc-bin (2.21-0ubuntu4.3) ...^M
Log ended: 2016-08-23 19:48:25
是否存在问题,原因是:
Stopping nvidia-persistenced^M
nvidia-persistenced: Kein Prozess gefunden^M
结果:
无法加载 NVIDIA 显卡驱动程序。
... 由于内核的部分未更新 - 使用了旧内核模块 352.93。