我原本计划在Portal 2上放松一天,但是在启动Steam时(几周内第一次),在终端机中收到以下消息:
Error: API mismatch: the NVIDIA kernel module has version 270.41.19,
but this NVIDIA driver component has version 270.41.06. Please make
sure that the kernel module and all NVIDIA driver components
have the same version.
我承认,当我说司机时,我真的不知道在说什么。的版本nvidia-current
是270.41.19
。我认为那是驱动程序和模块,合而为一。
我使用的是X-SWAT PPA,我注意到该nvidia-settings
软件包已提高到275.09.07
。由于这只是一个设置应用程序,因此我认为这种不匹配与此无关。它与所描述的问题也不相同。
我宁愿不退回标准的Nvidia驱动程序,因为它在我的GTX580上还不够稳定。我接受一个接受手动设置的答案,并在内核重新编译(即某些DKMS向导)时使其重新编译,但是它必须可以工作。我不想在每次内核升级后重新启动时都回到文本模式。
编辑:Minecraft的运作不会对驱动程序版本产生任何抱怨。Penumbra在进入游戏时死于大致相同的错误。
编辑:这是我要处理的32位文件。它们似乎都是正确的版本。
ls -l /usr/lib32/nvidia-current/ | awk '{ print $8 " " $9 " " $10 }'
libcuda.so -> libcuda.so.270.41.19
libcuda.so.1 -> libcuda.so.270.41.19
libcuda.so.270.41.19
libGL.la
libGL.so -> libGL.so.1
libGL.so.1 -> libGL.so.270.41.19
libGL.so.270.41.19
libnvcuvid.so -> libnvcuvid.so.1
libnvcuvid.so.1 -> libnvcuvid.so.270.41.19
libnvcuvid.so.270.41.19
libnvidia-cfg.so -> libnvidia-cfg.so.1
libnvidia-cfg.so.1 -> libnvidia-cfg.so.270.41.19
libnvidia-cfg.so.270.41.19
libnvidia-compiler.so -> libnvidia-compiler.so.1
libnvidia-compiler.so.1 -> libnvidia-compiler.so.270.41.19
libnvidia-compiler.so.270.41.19
libnvidia-glcore.so.270.41.19
libnvidia-ml.so -> libnvidia-ml.so.1
libnvidia-ml.so.1 -> libnvidia-ml.so.270.41.19
libnvidia-ml.so.270.41.19
libnvidia-tls.so.270.41.19
libnvidia-wfb.so.1 -> libnvidia-wfb.so.270.41.19
libnvidia-wfb.so.270.41.19
libOpenCL.so -> libOpenCL.so.1
libOpenCL.so.1 -> libOpenCL.so.1.0
libOpenCL.so.1.0 -> libOpenCL.so.1.0.0
libOpenCL.so.1.0.0
libXvMCNVIDIA_dynamic.so.1 -> libXvMCNVIDIA.so.270.41.19
libXvMCNVIDIA.so -> libXvMCNVIDIA.so.270.41.19
libXvMCNVIDIA.so.1 -> libXvMCNVIDIA.so.270.41.19
libXvMCNVIDIA.so.270.41.19
编辑2:我可能已经找到了一些东西。
潜伏在/usr/lib32/
适当的位置(而不是nvidia-current
子目录),我发现了以下几点:
ls -l /usr/lib32/ | awk '{ print $8 " " $9 " " $10 }' | grep 270
libcuda.so.1 -> libcuda.so.270.41.06
libcuda.so.270.41.06
libGL.so.1 -> libGL.so.270.41.06
libGL.so.270.41.06
libnvidia-compiler.so.270.41.06
libnvidia-glcore.so.270.41.06
libnvidia-tls.so.270.41.06
libvdpau.so.1 -> libvdpau.so.270.41.06
libvdpau.so.270.41.06
libvdpau_trace.so -> vdpau/libvdpau_trace.so.270.41.06
出于某种原因,其中的所有内容/usr/lib32/nvidia-current/
都是正确的版本,但其中有很多不足之处/usr/lib32/
可能会破坏聚会。
编辑3:尝试查找哪个软件包拥有这些文件失败:
find /usr/lib32 -iname '*270.41.06*' -exec dpkg -S "{}" \;
dpkg-query: no path found matching pattern /usr/lib32/libnvidia-compiler.so.270.41.06.
dpkg-query: no path found matching pattern /usr/lib32/libGL.so.270.41.06.
dpkg-query: no path found matching pattern /usr/lib32/vdpau/libvdpau_nvidia.so.270.41.06.
dpkg-query: no path found matching pattern /usr/lib32/vdpau/libvdpau_trace.so.270.41.06.
dpkg-query: no path found matching pattern /usr/lib32/libvdpau.so.270.41.06.
dpkg-query: no path found matching pattern /usr/lib32/tls/libnvidia-tls.so.270.41.06.
dpkg-query: no path found matching pattern /usr/lib32/libnvidia-tls.so.270.41.06.
dpkg-query: no path found matching pattern /usr/lib32/libcuda.so.270.41.06.
dpkg-query: no path found matching pattern /usr/lib32/libnvidia-glcore.so.270.41.06.
关于如何处理这些残破版本的任何提示?删除它们?删除然后符号链接到./nvidia-current/
版本?
/usr/lib32
。检查它们看起来是否与主要的64位版本相同。如果它们不同,请找出哪个软件包拥有它们并寻求更新。