ubuntu爬坑之nvidia驱动
今天像往常一样打开ubuntu,准备开始学习。打开电脑后却发现外接的显示屏连上后没有反应,命令行键入xrandr发现hdmi的接口都消失了,猜测应该是nvidia显卡驱动又出毛病了。果不其然,键入nvidia-smi后报错。上一次nvidia驱动突然消失是在ubuntu自动更新内核后,我查了一下内核日志,果然内核更新了。(我真的没自己去更新,它莫名其妙的就更新了)没办法,兵来将挡,水来土淹,于是又开始重装nvidia驱动。
卸载原有nvidia驱动
查看了软件与更新中的附加驱动,很奇怪这个时候电脑上原来的nvidia驱动还在,但是由于某种原因系统不能识别(可能是内核更新后不匹配)无法工作,所以需要将之前的驱动卸载再重装。
终端键入以下命令:
sudo apt-get purge nvidia*
该命令会自动卸载当前已安装的驱动。
重装nvidia驱动
使用标准Ubuntu 仓库进行自动化安装。
首先检测NVIDIA显卡型号和推荐的驱动程序的模型。
在终端键入以下命令:
ubuntu-drivers devices
从输出结果可以看到,目前系统已连接Nvidia GeForce GTX 1050Ti显卡,就是本机的显卡,并且提示建议安装驱动程序是 nvidia-450版本的驱动。
随后键入以下命令:
sudo ubuntu-drivers autoinstall
该命令会安装系统推荐的驱动,即nvida-450。
到这里如果电脑事先已经禁用了secure boot,那么应该可以很顺利的安装完毕,之后重启电脑就行。
如果没有禁用,也别急,根据提示一步一步操作也不会出问题。
如果没有禁用secure boot,在安装过程中会出现上图的提示,这里需要设定一个密码,随便设定就行。之后重启时会用到。
设定完密码后再过会儿驱动就结束安装,马上重启电脑,出现以下界面:
选择Enroll MOK
选择Continue
选择Yes
出现输入密码的界面,输入刚刚设置的密码。
密码正确,选择Reboot重启。
到这一步重启时,我的外接显示屏亮了起来,应该是驱动安装成功了,再测试一下。
在终端键入nvidia-smi
nice,驱动安装成功。
总结
外接显示屏未能正常显示是由于显卡驱动出错。
显卡驱动出错是由于ubuntu内核更新。
安装方式:
1.安装驱动前禁用Secure boot,可参考以下博客
链接: /caobo_0512/article/details/106246195.
因为我懒得重启电脑去bios设置,所以没有试过这种办法。禁用Secure boot要重启一次,安装完驱动又重启一次,个人觉得太麻烦了。
2.安装前未禁用Secure boot
在安装过程中,nvidia驱动安装程序会提示你设定一个密钥。
重启后出现蓝屏的perform mok managemnet。
按照以下步骤进行:
选择enroll mok(perform mok mangement界面)
选择continue(enroll mok界面)
选择yes(enroll the key界面)
输入在安装时设定的密码
选择Reboot(perform mok manageent界面)