cuda
安装NVIDIA驱动时禁用自带nouveau驱动
安装英伟达驱动时,一般需要禁用自带nouveau驱动,按如下命令操作:
sudo vi /etc/modprobe.d/blacklist-nouveau.conf
添加如下内容:
blacklist nouveau options nouveau modeset=0 保存后更新:
sudo update-initramfs -u然后接着安装英伟达驱动。
若安装英伟达驱动失败或直接重启,则会出现无法进入系统的情况,此时需要进入ubuntu recovery模式修复。首先重启进入recovery模式的root命令行,先挂载系统可读写:
mount -o remount,rw /
然后删除先前创建的文件:
rm -f /etc/modprobe.d/blacklist-nouveau.conf
删除后再重启就能进入系统了。这样做相当于恢复了自带nouveau驱动。
ERROR: Unable to load the 'nvidia-drm' kernel module.
sudo vi /etc/modprobe.d/blacklist-nvidia.conf
#This file was generated by nvidia-prime
blacklist nvidia
blacklist nvidia-drm
blacklist nvidia-modeset
#alias nvidia off
#alias nvidia-drm off
#alias nvidia-modeset off
sudo update-initramfs -u
安装过程同大多数人一样十分折腾,所以在这里一些常见的错误就不记录了下面记录一下具体的安装过程,以及一些问题的十分有意义的解决方案。
在Nvidia官网上下载相应的驱动,注意版本选择,不需要选择最新的版本,也不需要刻意挑一个老的版本,beta字眼的尤其要避免。
安装过程:
下载安装驱动的runfile,名字大致是:NVIDIA-Linux-x86_64-390.42.run
赋予执行权限:
chmod +x NVIDIA-Linux-x86_64-390.42.run
开始安装:
sudo ./NVIDIA-Linux-x86_64-390.42.run -no-x-check -no-nouveau-check -no-opengl-files
本来安装 Nvidia驱动需要关闭 nouveau 驱动和图形界面,加上后面的参数后就不需要那么繁琐,最后一个opengl的参数十分关键,不加上去有可能安装过后重启时会出现循环登录。
安装过程中出现的问题:
1. There appears to already be a driver installed on your system (version:
|
因为自己也重装了好几次,不断探索过哪些解决方案是可行的,大大小小的问题都遇见过,其中可能会出现的一些问题较严重的,我会简要介绍一下:
1. 安装最后出现 nvidia-drm 模块问题
|
这个问题一开始困扰了我许久,总是提示安装失败,后来发现,即使他提示是这个,但实际上是安装成功了,出现这个问题主要是后面的配置文件中将nvidia-drm 模块给禁用掉。在安装过程中,出现这个问题不用理,后面我会再次提及。
2. 运行 `nvidia-smi` 命令提示出错
|
网上查找到的博客没能解决我的问题,后来去 Nvidia 官网论坛上寻找客服人员的解决方案在一个帖子上发现了重要的线索:
[https://devtalk.nvidia.com/default/topic/1037021/linux/ubuntu-18-04-on-asus-zenbook-ux550ve-crashes-soon-after-boot-to-desktop/]
这里面客服人员提到:
"No, ubuntu just seems have an alias set to turn off the nvidia driver.
|
然后在 /etc/modprobe.d/blacklist-nvidia.conf 里面发现了这个:
# Do not modify
|
注意后面三句话,可以说十分尴尬了这里将 nvidia 的三个模块全部禁用掉,安装过程和执行 nvidia-smi 过程在这里翻车了。
解决方案就是更改此文件,将后面三句话加上注释或者直接:
sudo mv blacklist-nvidia.conf blacklist-nvidia.conf.bak
之后运行 nvidia-smi 就很顺利,如果你对上面的drm模块安装不放心的话也可以选择再次安装 nvidia 驱动,之后你会发现安装过程十分流畅。