ubuntu20.04
贴一个ubuntu安装教程:Ubuntu安装
进入正题安装显卡驱动。
踩了不少坑,这个链接的成功率比较高,贴在这里,以防后续再用到。
ubuntu20.04系统用.run文件安装nvidia显卡驱动
提前下载好驱动,放在home下(以防万一可以多下载几个版本)。在英伟达的官网上查找你自己电脑的显卡型号然后下载相应的驱动。网址:官网
ubuntu 默认安装了第三方开源的驱动程序nouveau,安装nvidia显卡驱动首先需要禁用nouveau,不然会碰到冲突的问题,导致无法安装nvidia显卡驱动。编辑blacklist.conf:
sudo gedit /etc/modprobe.d/blacklist.conf
在最后方加上:
blacklist nouveau
options nouveau modeset=0
更新:
sudo update-initramfs -u
重启
sudo reboot
验证是否关闭:
lsmod | grep nouveau
无显示则关闭
(我第一次关闭后重启进不去图形界面了,其实可以进入低版本ubuntu,或者在grub界面选择ubuntu那里按c或e进入编辑状态,然后在quiet splah后加 “空格nomodeset”,按F10保存……具体参考解决禁用默认第三方驱动Nouveau后无法进入系统的问题)先确保安装gcc、make:
sudo apt-get install gcc
sudo apt-get install make
在ubuntu下按ctrl+alt+f3(或者f1,f2,…,f8,都试试)进入命令行界面(我第一次傻不拉几在终端运行的,最后闪屏了)。
这里原文用的是lightdm,我的电脑是gdm3(应该大部分都是,不放心可以在终端查看默认显示管理器:cat /etc/X11/default-display-manager,如果是lightdm会显示 /usr/sbin/lightdm,如果是gdm3会显示 /usr/sbin/gdm)
输入用户名和密码,输入:
sudo service gdm3 stop //这个是关闭图形界面,不执行会出错
然后卸载掉原有驱动(以防万一,执行一遍):
sudo apt-get remove nvidia-*
sudo apt-get remove nvidia* 两个是不一样的
给驱动run文件赋予执行权限:
sudo chmod a+x NVIDIA-Linux-x86_64-396.18.run 这里是你自己下载的驱动,忘了名字可以输入NVIDIA-Linux然后Tab自动补齐(放在home下面的话)
安装:
sudo ./NVIDIA-Linux-x86_64-396.18.run -no-x-check -no-nouveau-check -no-opengl-files //只有禁用opengl这样安装才不会出现循环登陆的问题,注意空格
开始安装后,基本都是选择no,特别是32-bit那个,然后Any pre-existing x confile will be backed up.那个选择yes
安装完毕之后,挂载Nvidia驱动:
modprobe nvidia
检查:
nvidia-smi
千万别关,先恢复图形界面:
sudo service gdm3 restart
然后重启:
sudo reboot
踩个坑,这里原文是start,我重启之后,一直是循环登录,我尝试了多个驱动,差点以为是系统有问题,结果最后换成了restart就好了…
重启之后应该就好了……吧
然后安装cuda和cudnn,先贴两个靠谱教程,踩坑再说叭。
Ubuntu:安装 cuda10.1 驱动
Ubuntu18.04安装CUDA10.1和cuDNN v7.6.5
补:
电脑重启后,找不到显卡驱动,报错信息如下:
NVIDIA-SMI has failed because it couldn’t communicate with the NVIDIA driver
发现是重启时ubuntu的内核进行了更新,更新后的内核指向的是最新的显卡驱动,导致之前安装的显卡驱动虽然在,但是新内核不知道它在。
解决方法:
DKMS是一个维护内核外的驱动的程序,可以在内核指向改变后自动生成新得导向模块.
sudo apt install dkms
查看驱动版本号
ls /usr/src
生成导向模块
sudo dkms install -m nvidia -v 470.63.01
然后nvidia-smi就有输出了。
二补:
系统更新后,内核再次更新,输入nvidia-smi仍提示上面那个错误
NVIDIA-SMI has failed because it couldn’t communicate with the NVIDIA driver.
如果继续采用上面那个办法输入:
sudo dkms install -m nvidia -v 470.63.01
报错:
Kernel preparation unnecessary for this kernel. Skipping…
Building module:
cleaning build area…
‘make’ -j8 NV_EXCLUDE_BUILD_MODULES=‘’ KERNEL_UNAME=5.15.0-124-generic IGNORE_CC_MISMATCH=‘’ modules…(bad exit status: 2)
ERROR (dkms apport): binary package for nvidia: 470.63.01 not found
Error! Bad return status for module build on kernel: 5.15.0-124-generic (x86_64)
Consult /var/lib/dkms/nvidia/470.63.01/build/make.log for more information.
说明原来的驱动不符合现在的内核(更新为了5.15.0),需要新的驱动。输入查看所有的驱动:
sudo ubuntu-drivers devices
得到:
…
driver : nvidia-driver-470-server - distro non-free
driver : nvidia-driver-535 - distro non-free recommended
…
升级推荐版本的驱动:
sudo apt-get install nvidia-driver-xxx(推荐版本)
升级后,sudo reboot(重启电脑)后就可以nvidia-smi了。
(仅供参考,或许有更好的办法)
完