查看/ var / log / syslog和/var/log/kern.log之后,我发现了以下内核问题:
NVRM: API mistmatch: the client has version 375.26, but
NVRM: this kernel module has the version 375.39. Please
NVRM: make sure that kernel module and all NVIDIA driver
NVRM: components have the same version.
我发现Nvidia驱动程序已更新-304.88和319.32的混合版本描述了相同的问题。为了解决我的问题,我运行了以下命令:
dpkg -l | grep nvidia
sudo apt-get autoremove nvidia375
sudo apt-get --purge remove nvidia*
dpkg -l | grep nvidia
最后一条命令的输出确认未安装nvidia软件包。之后,我跑了:
sudo update-grub
sudo update-initramfs -u
sudo reboot
但是,我仍然遇到相同的内核问题。在启动时,我陷入了低图形模式设置,并且内核和/ var / log / syslog和/var/log/kern.log仍然抱怨客户端具有Nvidia驱动程序375.26,内核模块具有Nvidia驱动程序375.39。
我当前的内核是4.4.0-64-generic。
Update1:要查看内核读取的nvidia模块,我运行了此命令。
$ lsmod | grep nvidia
module size used by
nvidia_drm 53248 0
nvidia_modeset 790528 1 nvidia_drm
nvidia 12144640 1 nvidia_modeset
drm_helper 155648 2 i915_bpo,nvidia_drm
drm 364544 4 i915_bpo,drm_helper,nvidia_drm
还发现使用modinfo module_name
这些模块位于文件夹中/lib/modules/4.4.0-64-generic/updates/dkms/
,它们的文件名为nvidia-drm.ko
,nvidia-modeset.ko
和nvidia.ko
,其版本为375.39。
第二个问题:即使清除了所有nvidia软件包,为什么这些模块仍然存在?我应该删除它们吗?如果是这样,怎么办?
通过执行以下步骤,我能够解决我的问题:
在安装过程中,我注意到正在安装nvidia-418.26驱动程序。
我将整个/lib/modules/4.18.0-17-generic/updates/dkms文件夹移到了我的主目录备份文件夹中。这是为了确保所有旧的.ko文件都已删除。
sudo mv /lib/modules/4.18.0-17-generic/updates/dkms/nvidia* / home // backup
我使用sudo dpkg-reconfigure nvidia-418为已安装的驱动程序重新生成了.ko文件。
它使用相关的nvidia内核模块创建了一个新的dkms文件夹。我还使用命令检查了它们的版本:
sudo modinfo /lib/modules/4.18.0-17-generic/updates/dkms/nvidia.ko
sudo modinfo /lib/modules/4.18.0-17-generic/updates/dkms/nvidia_drm.ko
sudo modinfo / lib / modules /4.18.0-17-generic/updates/dkms/nvidia_modeset.ko
sudo modinfo /lib/modules/4.18.0-17-generic/updates/dkms/nvidia_uvm.ko
他们的输出表明它们适用于418.26版本。很好,这证实了内核客户端和内核模块引用的是相同的NVidia驱动程序版本。
(可选,但建议您确保apt-get正常工作)卸载并重新安装驱动程序sudo apt-get remove“ nvidia ” sudo apt-get install nvidia-driver-418
我用sudo reboot重新启动了系统
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句