背景
给出的机器的驱动版本不符合要求,使用自定义的驱动版本。
前置
如果使用nvidia官方的.run安装的驱动包,可以使用系统自带的nvidia-uninstall
命令卸载比较方便,不建议使用apt pruge nvidia-*
命令删除。会带来其他的问题。
卸载完成之后重启一下机器,验证两个问题
- 没有软件使用nvida-driver
- 内核模块没有被加载
否则后面安装会有一些报错
验证
bash
lsof /dev/nvidia*
把正在使用nvidia的软件停止或者卸载。
bash
lsmod |grep nvidia
预期结果:输出为空。
如果不是空,比如下面这种输出,确认没有软件使用nvidia之后,重启一下系统。手动使用rmmod module_name
删除内核模块不推荐。
bash
nvidia_uvm 1511424 0
nvidia_drm 90112 0
nvidia_modeset 1331200 1 nvidia_drm
drm_kms_helper 217088 4 cirrus,nvidia_drm
nvidia 56201216 2 nvidia_uvm,nvidia_modeset
drm 548864 5 drm_kms_helper,nvidia,cirrus,nvidia_drm
安装
从官网下载.run
的驱动包,赋予执行权限,安装。
遇到的报错
ERROR: An NVIDIA kernel module 'nvidia-uvm' appears to already be loaded in your kernel. This may be because it is in use (for example, by an X server, a CUDA program, or the NVIDIA Persistence Daemon), but this may also happen if your kernel was configured without support for module unloading. Please be sure to exit any programs that may be using the GPU(s) before attempting to upgrade your driver. If no GPU-based programs are running, you know that your kernel supports module unloading, and you still receive this message, then an error may have occurred that has corrupted an NVIDIA kernel module's usage count, for which the simplest remedy is to reboot your computer.
ERROR: Installation has failed. Please see the file '/var/log/nvidia-installer.log' for details. You may find suggestions on fixing installation problems in the README available on the Linux
driver download page at www.nvidia.com.
The nvidia-installer program was found on this system. This is probably left over from an earlier installation of the non-free NVIDIA graphics driver, installed using the NVIDIA *.run file directly. This installation is incompatible with the Debian packages. To install the Debian packages safely, it is therefore necessary to undo the changes performed by nvidia-installer
apt安装时报错FCAE110B1118213C没有这个key
bash
apt-key adv --keyserver keyserver.ubuntu.com --recv-keys FCAE110B1118213C
refer
nvidia驱动下载地址
https://www.nvidia.com/Download/index.aspx?lang=en-us
驱动文档