本文所使用的操作系统是深度Deepin V20,我们将在笔记本双显卡下安装NVIDIA闭源驱动,总共5个步骤。其实Deepin V20开源驱动已经能流畅的运行系统了,能满足基本的需求,如果不是硬件需求,建议不要安装闭源驱动,因为会带来不稳定的风险。
在Deepin V20系统中安装NVIDIA闭源驱动的5个步骤 可先参考在Deepin系统中安装英伟达NVIDIA显卡驱动的方法。 步骤1、下载驱动 确认显卡型号,使用命令: lspci | egrep "VGA|3D"
注:红框部分就是你的显卡型号,然后去NVIDIA官方下载对应的驱动,地址是:https://www.geforce.cn/drivers。 其中GeForce xx series是台式机显卡驱动,GeForce xx series (Notebooks)是笔记本驱动,请注意分辨并正确下载。 比如我这台机器是GTX1060,我就按照下图这样设置:
下载下来的文件是NVIDIA-Linux-x86_64-xxx.xx.run格式的。 步骤2、禁用NVIDIA开源驱动nouveau 新建一个黑名单让系统启动的时候不去加载开源驱动: sudo vim /etc/modprobe.d/blacklist-nouveau.conf 写入以下内容: blacklist nouveau options nouveau modeset=0 按ESC键,输入 :wq 保存,然后重启。 重新进入系统之后输入以下代码检查是否禁用成功: lsmod | grep nouveau 如果没有输出内容,证明禁用成功了。 步骤3.安装NVIDIA闭源驱动 按CTRL+ALT+F3进入TTY命令行模式,帐号密码是你登陆系统的帐号和密码。 进入之后先检查之前时候安装过闭源驱动和大黄蜂方案,如果有最好卸载掉: nvidia-smi 没输出内容证明没有安装过闭源驱动: sudo apt remove --purge nvidia* bumblebee* 安装过闭源驱动用上述方法无法卸载的,尝试: nvidia-uninstall 确认卸载完成之后,下面开始安装。 先给安装包赋予运行权限: sudo chmod +x ~/Download/NVIDIA-Linux-x86_64-440.82.run 接着切换到运行级别3来运行驱动安装程序(不切换好像安装不了,进安装界面就直接error): sudo init 3 运行驱动安装程序: sudo sh ~/Download/NVIDIA-Linux-x86_64-440.82.run 安装里的选项里,只有yes和no的,请选yes,有3个选项的选择中间那个over 的,最后进度条走完那个弹窗的2个选项,选No,到这一步就算安装完成了,不过不要重启还需要配置,这时候重启可能会黑屏。 步骤4、配置xorg 查看显卡的BusID,后面配置要用: lspci | egrep "VGA|3D"
如图所示,我的2张显卡分别对应的是: 00:02:00 intel 01:00:00 nvidia 参考:在deepin stable系统中配置Intel+Nvidia双显卡的方法。 然后新建一个xorg.conf: sudo vim /etc/X11/xorg.cnf 这里要进行转换一下,00:02:00 --> 0:2:0 01:00:00 --> 1:0:0。 配置内容如下: Section "Device" Indentifier "nvidia" Driver "nvidia" BusID "PCI:1:0:0" Option "AllowEmptyInitialConfiguration" EndSection Section "Device" Identifier "intel" Driver "modesetting" BusID "PCI:0:2:0" EndSection 再接着新建一个display_setup.sh: sudo vim /etc/lightdm/display_setup.sh 内容如下: #!/bin/sh xrandr --setprovideroutputsource modesetting NVIDIA-0 xrandr --auto 然后赋予权限: sudo chmod +x /etc/lightdm/display_setup.sh 然后在lightdm里配置启用这个脚本: sudo vim /etc/lightdm/lightdm.conf 找到 display-setup-script这一行,去掉前面的注释,将display_setup.sh这个目录填进去: display-setup-script=/etc/lightdm/display_setup.sh 做完这些操作就可以重启了。 如果发现重启之后无法进入桌面,按CTRL+ALT+F3进入TTY命令行模式,可以试试排错,一般来说不能进入桌面,应该是lightdm.service出了问题,可以用: systemctl status lightdm.service 来查看lightdm的状态。 还可以尝试看看日志来确认错误,一般出错的可能在ligthdm和xorg连接上,可以查看x-0.log这个文件来看看问题处在哪里。 步骤5、配置NVIDIA渲染资源 这一步适用Deepin V20以前的版本,可以有效解决滚动撕裂和拖动撕裂,但无法解决控制面板滚动左边条目上出现的白线问题。 可以进入桌面了之后,安装步骤算完成了。但是你用nvidia-smi的时候会发现nvidia的显存占用一直是0。那说明根本没起作用,接下来我们来配置一下。 运行: nvidia-xconfig 会备份之前的xorg.conf为xorg.conf.backup,生成一个新的xorg.conf,按照以下格式来修改xorg.conf文件,需要修改或新增的地方我用 {} 标注出来,其他地方能不动最好别动: # nvidia-xconfig: X configuration file generated by nvidia-xconfig # nvidia-xconfig: version 440.82 Section "ServerLayout" Identifier "Default Layout" Screen "{nvidia}" 0 0 //修改,原先应该是Default Screen InputDevice "Keyboard0" "CoreKeyboard" InputDevice "Mouse0" "CorePointer" Inactive "intel" EndSection Section "InputDevice" # generated from default Identifier "Keyboard0" Driver "kbd" EndSection Section "InputDevice" # generated from default Identifier "Mouse0" Driver "mouse" Option "Protocol" "auto" Option "Device" "/dev/psaux" Option "Emulate3Buttons" "no" Option "ZAxisMapping" "4 5" EndSection Section "Device" Identifier "intel" Driver "{modesetting}" //修改,原先应该是nvidia {BusID "PCI:0:2:0"} //新增 EndSection {Section "Screen" //新增 Identifier "intel" //新增 Device "intel" //新增 DefaultDepth 24 //新增,这行内容来自下面nvidia生成的,必须跟下面那个Screen的DefaultDepth一致 EndSection} Section "Device" Identifier "nvidia" Driver "nvidia" {BusID "PCI:1:0:0"} //新增,生成之后不包括这个参数,这行下面的Option 移到 Screen里去了 EndSection Section "Screen" Identifier "{nvidia}" //修改,原先的值为Default Screen Device "nvidia" {Option "AllowEmptyInitialConfiguration"} //新增,这行原先属于上面那个Section "Device" Identifier "nvidia" 的,不过官方文档说的是加上这里 DefaultDepth 24 //这个下面还有一个SubSection,官方文档没有我给删除了 EndSection 主要修改的是2个Device和2个Screen,每个显卡对应1个Device 1个Screen,然后在内容最上面那条的Screen引用n卡的Screen。 然后加一个内核启动参数: sudo vim /boot/grub/grub.cfg 找到 'Deepin 20 Beta GNU/Linux' 下面的 linux /boot/vmlinuz-5.3.0-3-amd64 这一行, 在最末尾加上nvidia-drm.modeset=1,按ESC输入:wq保存 配置完成之后重启,再试试nvidia-smi,就可以看到NVIDIA卡占用不再是0了。而且还有一个很重要的标识:
你会发现,你运行的程序的进程都会在这里出现,这才是真正的用上了NVIDIA卡驱动。 到了这一步,意味着在Deepin V20系统中安装NVIDIA闭源驱动全部完成了。
相关主题 |