问题
执行命令nvidia-smi
(nvidia system management interface)提示
NVIDIA-SMI has failed because it couldn’t communicate with the NVIDIA driver. Make sure that the latest NVIDIA driver is installed and running
原因就是驱动版本太老了,Nvidia驱动有两种,
在安装方式上有两种,一种图形界面安装、一种命令行安装
图形安装
应用程序---->软件和更新---->附加驱动
列出来的驱动都是可以用的,有545和535系列,稳妥起见,选择535系列,
-
nvidia-driver-535-server-open
; -
nvidia-driver-535-server
, -
nvidia-driver-535
,server版是它的子集, -
nvidia-driver-535-open
,open版就是开放内核源码的版本,开发者可以集成、debug;
对于普通用户而言,可以认为以上4个版本都是相同的,最终选择nvidia-driver-535
;安装后,点击应用更改即可。
命令行安装
网上很多博客是通过命令安装,大体流程是
- 下载官方驱动,
- 禁用Nouveau(避免与官方驱动冲突),用到了modprobe.d(内核配置管理文件)
- 安装
这种方式,参考其他博客吧,我未使用;
问题
安装完后,可能还是不行,可通过lsmod|grep nvidia
查看是否已经加载nvidia驱动;如未加载,则执行modprobe nvidia
来加载驱动,如果不允许,则进入BIOS,关闭secure boot(为了防止恶意攻击),以使内核加载Nvidia驱动;参考How to Enable Secure Boot on Your Dell Device
Secure Boot protects the boot process against security attacks from
malicious code like malware and ransomware. Secure Boot is
firmware-dependent and requires that the computer BIOS is set to UEFI
mode.
总结
- 安装驱动后,内核并不一定会加载,
modprobe nvidia
来加载驱动,如果不允许,则进入BIOS,关闭secure boot
- modprobe.d是内核配置文件,mod指的是module,模块、内核之意
- 其他博客中提到查看显卡型号,使用
lspci|grep -i nvidia
,但无效,不过注意到了命令中的pci- 命令中的pci指的是pci插槽,插槽上插有声卡、网卡、视频卡,通常是乳白色