转自:Ubuntu 16.04 Nvidia驱动安装(run方式)_lihe的博客-CSDN博客
1.下载驱动程序
Nvidia驱动下载
https://www.geforce.cn/drivers/beta-legacy
http://www.nvidia.cn/Download/index.aspx
根据显卡选择适用的驱动版本,下载完之后是一个名称为 NVIDIA-Linux-x86_64-xxx.xx.run 的文件
(我的显卡为GTX1060,NVIDIA-Linux-x86_64-418.56.run)。
将下载好的的run文件拷贝至home目录下。
2、删除原有驱动(可选)
sudo apt-get remove --purge nvidia*
3.禁用nouveau驱动
sudo gedit /etc/modprobe.d/blacklist.conf
编辑 /etc/modprobe.d/blacklist-nouveau.conf 文件,添加以下内容:
blacklist nouveau
blacklist lbm-nouveau
options nouveau modeset=0
alias nouveau off
alias lbm-nouveau off
然后保存。
关闭nouveau:
echo options nouveau modeset=0 | sudo tee -a /etc/modprobe.d/nouveau-kms.conf
4.重启
update-initramfs -u
reboot
重启系统(一定要重启)
5.验证nouveau是否已禁用
lsmod | grep nouveau
没有信息显示,说明nouveau已被禁用,接下来可以安装nvidia的显卡驱动。
6.获取Kernel source
sudo apt-get install linux-sourcesudo apt-get install linux-headers-x.x.x-x-generic
第一步执行过程中会提供第二步所用到的版本号(我的是4.4.0-146)。
或者可以通过uname -r查看相应版本号(系统内核版本),如下图:
7.安装NVIDIA驱动
1). 在ubuntu下按ctrl+alt+f1进入字符界面
注意:进入tty1界面可能会出现中文乱码,解决方案
https://blog.csdn.net/lihe4151021/article/details/90048918
然后在命令行界面下输入:
sudo service lightdm stop //这个是关闭图形界面,不执行会出错。
2).给驱动run文件赋予执行权限:
sudo chmod a+x NVIDIA-Linux-x86_64-418.56.run
3). 安装:
sudo ./NVIDIA-Linux-x86_64-396.18.run -no-x-check -no-nouveau-check -no-opengl-files //只有禁用opengl这样安装才不会出现循环登陆的问题
-no-x-check:安装驱动时关闭X服务
-no-nouveau-check:安装驱动时禁用nouveau
-no-opengl-files:只安装驱动文件,不安装OpenGL文件
4). 安装过程中的选项:
The distribution-provided pre-install script failed! Are you sure you want to continue? 选择 yes 继续。
Would you like to register the kernel module souces with DKMS? This will allow DKMS to automatically build a new module, if you install a different kernel later? 选择 No 继续。
问题没记住,选项是:install without signing
问题大概是:Nvidia’s 32-bit compatibility libraries? 选择 No 继续。
Would you like to run the nvidia-xconfigutility to automatically update your x configuration so that the NVIDIA x driver will be used when you restart x? Any pre-existing x confile will be backed up. 选择 Yes 继续
这些选项如果选择错误可能会导致安装失败,没关系,只要前面不出错,多尝试几次就好。
3). 打开图形界面:
最后在命令行界面下输入:
sudo service lightdm start //这个是打开图形界面
按ctrl+alt+f7返回图形界面
8.安装NVIDIA驱动后可能的问题
挂载Nvidia驱动:
sudo modprobe nvidia//报错
检查驱动是否安装成功:
nvidia-smi
输出:NVIDIA-SMI has failed because it couldn‘t communicate with NVIDIA driver. Make sure that the latest driver is installed and running.
解决方案:只需下面两步,无需重启
sudo apt-get install dkms
sudo dkms install -m nvidia -v 418.56
但是,如果未禁用Secure boot,运行第二个命令时会弹出下面界面:
此时,需要先禁用Secure boot(安装Ubuntu 16.04 后,开启UEFI secure boot 情况下,无法加载nvidia、vbox、网卡驱动和其他第三方驱动等模块的问题),方法如下(Ubuntu 16.04 禁用 Secure boot 问题 - Ubuntu中文论坛):
sudo mokutil --disable-validation
输入上述命令,会要求你设置一个 8-16位的密码,你设置好后(比如8个8)重启,重启第一次,会有几秒钟提示你按任意键进入MoK管理界面,然后按照提示输入刚才设置的密码对应位,然后管理Mok,禁用Secure boot 即可。
然后,再次运行:
sudo dkms install -m nvidia -v 418.56
最后输入:
nvidia-smi
如果成功,会出现下图:
上述步骤为安装成功后总结,如果有错误欢迎指正!