在这里我加入了众多“Nvidia 错误”问题,因为我找不到任何有帮助的东西。
背景:由于某种原因,我的驱动程序(nvidia-experimental-310)停止工作,所以我尝试重新安装它们。此外,当我尝试安装 nvidia-current-updates 时也发生了同样的事情。以下是日志:
$ sudo apt-get install nvidia-experimental-310
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages will be REMOVED:
nvidia-current-updates
The following NEW packages will be installed:
nvidia-experimental-310
0 upgraded, 1 newly installed, 1 to remove and 0 not upgraded.
Need to get 0 B/37.4 MB of archives.
After this operation, 1,758 kB disk space will be freed.
Do you want to continue [Y/n]? y
(Reading database ... 221035 files and directories currently installed.)
Removing nvidia-current-updates ...
Removing all DKMS Modules
Done.
update-alternatives: using /usr/lib/i386-linux-gnu/mesa/ld.so.conf to provide /etc/ld.so.conf.d/i386-linux-gnu_GL.conf (i386-linux-gnu_gl_conf) in auto mode
INFO:Disable nvidia-current-updates
DEBUG:Parsing /usr/share/ubuntu-drivers-common/quirks/put_your_quirks_here
DEBUG:Parsing /usr/share/ubuntu-drivers-common/quirks/lenovo_thinkpad
DEBUG:Parsing /usr/share/ubuntu-drivers-common/quirks/dell_latitude
DEBUG:Processing quirk ThinkPad T420s
DEBUG:Failure to match Dell Inc. with LENOVO
DEBUG:Quirk doesn't match
DEBUG:Processing quirk Latitude E6530
DEBUG:Failure to match Dell DXP051 with Latitude E6530
DEBUG:Quirk doesn't match
update-initramfs: deferring update (trigger activated)
Processing triggers for libc-bin ...
ldconfig deferred processing now taking place
Processing triggers for man-db ...
Processing triggers for initramfs-tools ...
update-initramfs: Generating /boot/initrd.img-3.7.0-7-generic
Selecting previously unselected package nvidia-experimental-310.
(Reading database ... 220868 files and directories currently installed.)
Unpacking nvidia-experimental-310 (from .../nvidia-experimental-310_310.14-0ubuntu1_i386.deb) ...
Processing triggers for desktop-file-utils ...
Processing triggers for man-db ...
Setting up nvidia-experimental-310 (310.14-0ubuntu1) ...
update-alternatives: using /usr/lib/nvidia-experimental-310/ld.so.conf to provide /etc/ld.so.conf.d/i386-linux-gnu_GL.conf (i386-linux-gnu_gl_conf) in auto mode
update-alternatives: warning: skip creation of /usr/lib32/libOpenCL.so because associated file /usr/lib32/nvidia-experimental-310/libOpenCL.so (of link group i386-linux-gnu_gl_conf) doesn't exist
update-alternatives: warning: skip creation of /usr/lib32/vdpau/libvdpau_nvidia.so.1 because associated file /usr/lib32/nvidia-experimental-310/vdpau/libvdpau_nvidia.so.1 (of link group i386-linux-gnu_gl_conf) doesn't exist
update-alternatives: warning: skip creation of /usr/lib32/libvdpau_nvidia.so because associated file /usr/lib32/nvidia-experimental-310/vdpau/libvdpau_nvidia.so (of link group i386-linux-gnu_gl_conf) doesn't exist
update-alternatives: using /usr/lib/nvidia-experimental-310/alt_ld.so.conf to provide /etc/ld.so.conf.d/x86_64-linux-gnu_GL.conf (x86_64-linux-gnu_gl_conf) in auto mode
update-initramfs: deferring update (trigger activated)
INFO:Enable nvidia-experimental-310
DEBUG:Parsing /usr/share/ubuntu-drivers-common/quirks/put_your_quirks_here
DEBUG:Parsing /usr/share/ubuntu-drivers-common/quirks/lenovo_thinkpad
DEBUG:Parsing /usr/share/ubuntu-drivers-common/quirks/dell_latitude
Loading new nvidia-experimental-310-310.14 DKMS files...
Building only for 3.7.0-7-generic
Building for architecture i686
Building initial module for 3.7.0-7-generic
Traceback (most recent call last):
File "/usr/share/apport/package-hooks/dkms_packages.py", line 22, in <module>
import apport
ImportError: No module named apport
Error! Bad return status for module build on kernel: 3.7.0-7-generic (i686)
Consult /var/lib/dkms/nvidia-experimental-310/310.14/build/make.log for more information.
Processing triggers for initramfs-tools ...
update-initramfs: Generating /boot/initrd.img-3.7.0-7-generic
因此发生了一些“apport”错误,无论这意味着什么。以下是 make 文件日志:http://paste.ubuntu.com/1464536/
问题:我该如何解决这个问题?
附加信息:
- Xubuntu 12.10
- Nvidia GeForce GT430
如果需要更多信息,请告诉我。
更新:
我删除了 Xorg-edgers ppa,并使用 synaptic 卸载了所有 3.7 内核。然后我运行apt-get autoremove
删除所有剩余的,,apt-get update
和apt-get install nvidia-current-updates
,但仍然不起作用。查看来自终端的日志,看来我没有内核源码什么的。
答案1
好吧,这就是最终导致真正问题的原因。
首先,作为mikewhatever 说,3.7 是非标准/不稳定的内核,因此实际上不需要使用。鉴于此,我:
- 删除了 Xorg-edgers PPA
- 删除了 3.7 版内核以及所有与之相关的垃圾内容
sudo apt-get update
sudo apt-get upgrade
但这仍然会造成问题,尽管问题略有不同。正如您在底部附近看到的那样终端日志, 它说
由于似乎未安装当前正在运行的内核的内核源,因此跳过了该内核的模块构建。
因此我打开 synaptic 来查看内核安装了什么,并执行以下操作:
- 将搜索限制至
linux-*-3.5.0-19
- 标记
linux-headers-3.5.0-19-generic
安装 - 如果没有自动选择,
linux-headers-3.5.0-19
也请选择 - 安装
完成此操作后(为了安全起见,我重启了电脑),我sudo apt-get install nvidia-current-updates
在终端中运行,这次它安装正确了!然后我重启了电脑,瞧!一切正常!
这个故事的寓意是:避免使用非标准内核。
再次感谢迈克引导我走上正确的道路。