发新帖

笔记本双显卡驱动及外接显示器的配置

jfy_99 / 2020-4-24 10:10
浏览: 3403 / 回复: 47
查看: 3403|回复: 50

笔记本双显卡驱动及外接显示器的配置

[复制链接]
收藏
跳转到指定楼层
本帖最后由 jfy_99 于 2020-6-7 15:52 编辑

大家好,这里是又一个介绍笔记本双显卡的帖子,讲的是常见的Intel核芯显卡 + NVIDIA独立显卡的组合。另外,还会从外接显示器的角度比较一些驱动方案,供大家参考。

首先,我们需要了解笔记本双显卡和屏幕的连接方式。
1.内置显示器常与核显相连,除了少数使用台式机主板的笔记本可以在BIOS中禁用核显,大部分笔记本内置显示器的信号都由核显输出。
2.笔记本还配有信号输出接口,如HDMI、DP接口等。这里有两种连接方式:连接核显或连接独显。如果接口与独显相连,常常会出现外接显示器无信号的情况,这时需要手动配置驱动。

然后看一看深度显卡驱动管理器中的方案:
deepin-graphics-driver-manager.png
1.Intel默认驱动
也可以叫做Intel开源核显驱动,能很好地集成在linux内核中,兼容性较好。使用核显的好处是省电,并且硬件加速视频解码的能力强,用于浏览网页、看视频已经足够。因此个人建议,新装的系统应该首先切换至Intel默认驱动,再根据需求决定是否安装独显驱动。
遗憾的是,系统自带的影院和浏览器暂时都不支持硬解。播放器可以使用vlc或mpv,浏览器需要使用带有vaapi补丁的chromium(比如这个Ubuntu的PPA软件源:https://launchpad.net/~saiarcot895/+archive/ubuntu/chromium-beta),这里先不展开讲了。
当然,对于独显连接输出接口的笔记本电脑,仅使用Intel默认驱动是无法连接外接显示器的。

2.开源驱动
由社区开发的N卡开源驱动,名称叫做nouveau。双显卡笔记本安装新系统后,这是显卡驱动管理器中的默认方案。如其中所说,开源驱动性能较弱,并且对新显卡、新特性支持不完善。因为没有认真体验过,所以就不多加评论了……

3.大黄蜂方案
一个比较老的方案,安装时会自动安装NVIDIA官方闭源驱动。在不用时会将独显断电,需要使用时在终端中输入“optirun”或“primusrun”加命令以启用独显。这是一个方便且省电的方案,但有一定性能损失。注意:大黄蜂方案与下面所述的手动配置方案是互斥的,如果要手动配置,请不要切换至大黄蜂方案。
那么使用optirun启用独显后,能否连接外接显示器呢?如果不做特殊的设置是不行的。可以参考大黄蜂方案的wiki(https://github.com/Bumblebee-Project/Bumblebee/wiki/Multi-monitor-setup)进行配置,但是我没有成功……因此个人建议使用手动配置方案,可能比这个更简单。

接下来介绍的是deepin 20 Beta中的手动配置方案,需要用到终端。不过我相信按照步骤一步步来,还是不困难的。
1.直接安装NVIDIA闭源驱动
论坛里已经有不少介绍安装闭源驱动的方法,这里提供我个人的建议:不建议到NVIDIA官网下载驱动,而尽量使用软件源内提供的版本,配置更方便。
在显卡驱动管理器切换到Intel默认驱动后,打开终端,输入以下命令
  1. sudo apt install nvidia-driver nvidia-smi nvidia-settings
复制代码
这条命令依次安装的是NVIDIA 440.59驱动、命令行信息显示工具和图形界面的配置工具。sudo是使用管理员权限,需要输入登录密码,注意密码字符是不显示在屏幕上的,输入完成后回车即可。安装过程中可能会提示内核模块冲突,这是正常的,确认后继续安装,完成后重启即可。
对于较旧的显卡,需要使用较早的驱动。请前往NVIDIA官网:https://www.nvidia.cn/drivers/unix/,依次点击440、390和340驱动,查看产品支持列表。
按照官网给出的产品支持列表,GeForce 600系列以前及部分较新的显卡,应该安装390系列驱动。打开终端,依次输入
  1. sudo apt update
  2. sudo apt install -t buster nvidia-legacy-390xx-driver nvidia-legacy-390xx-smi nvidia-settings-legacy-390xx
复制代码
更新软件包列表,并安装390.132驱动。
对于GeForce 400系列以前及部分较新的显卡,应该安装340系列驱动。深度软件仓库中的340.107驱动可能较旧,建议从debian stable软件源安装新版本。使用以下命令:
  1. echo 'deb https://mirrors.ustc.edu.cn/debian/ buster main contrib non-free' | sudo tee -a /etc/apt/sources.list
  2. echo 'APT::Default-Release "apricot";' | sudo tee -a /etc/apt/apt.conf
  3. sudo apt update
  4. sudo apt install -t buster nvidia-legacy-340xx-driver nvidia-legacy-340xx-smi nvidia-settings-legacy-340xx
复制代码
第1行:使用中科大提供的debian stable镜像源,在国内下载速度快很多,也可以换成其他镜像源。
第2行:将深度软件源设置为默认。
第3行:更新软件包列表。
第4行:安装NVIDIA 340.108驱动。
安装好了NVIDIA驱动,独显会保持通电状态,一些软件已经可以自动调用独显。当然通常独显是不工作的,“NVIDIA X 服务器设置”也无法打开。
可以预料,在Intel默认驱动上直接安装NVIDIA驱动是无法连接外接显示器的,因为独显默认不工作。接下来需要手动切换显卡以开启独显。

2.双显卡的手动切换方案
来自管理员aida的帖子(https://bbs.deepin.org/forum.php?mod=viewthread&tid=178542),我把步骤写成了脚本,便于经常切换。解压压缩包,运行NVIDIA.sh切换至独显,运行Intel.sh切换至核显。
双显卡切换脚本.tar.gz (1.05 KB, 下载次数: 341)

评分

参与人数 2贡献 +6 收起 理由
zty199 + 3 加分鼓励 : )
loaden + 3 加分鼓励 : )

查看全部评分

1

主题

20

帖子

88

积分

-r--------

Rank: 1

积分
88
sadenyv 发表于 2020-4-24 13:24:14 | 显示全部楼层
请问在终端中打开后,这个密码输入不上,就像键盘失灵一样是什么原因啊
截图录屏_选择区域_20200424132300.png

点评

????????????  发表于 2020-4-24 17:43

0

主题

1

帖子

111

积分

-r--------

Rank: 1

积分
111
manton94 发表于 2020-4-24 13:55:07 | 显示全部楼层
sadenyv 发表于 2020-4-24 13:24
请问在终端中打开后,这个密码输入不上,就像键盘失灵一样是什么原因啊

密码是不显示的,输入完成回车就行了

2

主题

10

帖子

219

积分

-r--r-----

Rank: 2

积分
219
l164144501 志愿者 发表于 2020-4-24 16:32:47 来自移动端 | 显示全部楼层
挺实用的

2

主题

54

帖子

526

积分

-r--r--r--

Rank: 3Rank: 3

积分
526
jfy_99 发表于 2020-4-24 22:02:51 | 显示全部楼层

感谢支持!

84

主题

2737

帖子

7757

积分

-rw-rw-rw-

Rank: 6Rank: 6

积分
7757
ifango 发表于 2020-4-25 10:12:01 | 显示全部楼层
sadenyv 发表于 2020-4-24 13:24
请问在终端中打开后,这个密码输入不上,就像键盘失灵一样是什么原因啊

这个密码本身就不显示,你输入完毕之后 回车就行。

0

主题

1

帖子

6

积分

-r--------

Rank: 1

积分
6
liancxl 发表于 2020-4-25 11:24:49 | 显示全部楼层
之前没有用过Linux的系统吗? 终端里面输入密码是不显示任何字符的,可以DIY配置显示*号,方法自行百度

1

主题

5

帖子

52

积分

-r--------

Rank: 1

积分
52
qwers 发表于 2020-4-25 12:51:18 | 显示全部楼层
本帖最后由 qwers 于 2020-4-25 14:19 编辑

按照楼主的方法出现了错误,帮忙看看,N卡是525M
微信图片_20200425141837.jpg
微信图片_20200425141353.jpg

2

主题

54

帖子

526

积分

-r--r--r--

Rank: 3Rank: 3

积分
526
jfy_99 发表于 2020-4-25 13:30:23 | 显示全部楼层
qwers 发表于 2020-4-25 12:51
“nvidia-legacy-390xx-driver”,问下XX应该怎么查询,直接输入XX,显示无法定位

非常抱歉……390版本的最新驱动还没有进入buster-backports软件源,是我疏忽了。而且nvidia-smi和nvidia-settings的软件包名也不对,需要修改一下。
试试以下命令:
  1. sudo apt install nvidia-legacy-390xx-driver nvidia-legacy-390xx-smi nvidia-settings-legacy-390xx
复制代码

1

主题

5

帖子

52

积分

-r--------

Rank: 1

积分
52
qwers 发表于 2020-4-25 14:27:17 | 显示全部楼层
按照这个命令运行后,sudo apt install nvidia-legacy-390xx-driver nvidia-legacy-390xx-smi nvidia-settings-legacy-390xx,出现好多错误
微信图片_20200425142510.png

2

主题

54

帖子

526

积分

-r--r--r--

Rank: 3Rank: 3

积分
526
jfy_99 发表于 2020-4-25 15:16:23 | 显示全部楼层
qwers 发表于 2020-4-25 12:51
按照楼主的方法出现了错误,帮忙看看,N卡是525M

从拍照的输出来看很像是装过大黄蜂方案,它会让NVIDIA驱动无法启动。需要进入Live系统,按照压缩包里的Intel.sh(或参照aida的帖子),反向操作一次并重启。如果能进入主系统,执行
  1. sudo apt purge bumblebee*
复制代码

卸载大黄蜂,然后看能不能切换。

2

主题

54

帖子

526

积分

-r--r--r--

Rank: 3Rank: 3

积分
526
jfy_99 发表于 2020-4-25 15:25:20 | 显示全部楼层
qwers 发表于 2020-4-25 14:27
按照这个命令运行后,sudo apt install nvidia-legacy-390xx-driver nvidia-legacy-390xx-smi nvidia-settin ...

这个错误很奇怪,好像是编译出错了。中间一行说要查看一个make.log,里面应该有详细的错误信息。

1

主题

5

帖子

52

积分

-r--------

Rank: 1

积分
52
qwers 发表于 2020-4-25 19:38:22 | 显示全部楼层
jfy_99 发表于 2020-4-25 15:25
这个错误很奇怪,好像是编译出错了。中间一行说要查看一个make.log,里面应该有详细的错误信息。 ...

重新下载了官方驱动,一切安装完美,能打开NVIDIA-SMI,只是不占内存,显卡不工作.
然后使用你的NVIDIA.SH,开机后如图,进不了图形界面,不知啥原因?
微信图片_20200425193420.jpg
微信图片_20200425193410.jpg

2

主题

54

帖子

526

积分

-r--r--r--

Rank: 3Rank: 3

积分
526
jfy_99 发表于 2020-4-25 21:31:05 | 显示全部楼层
qwers 发表于 2020-4-25 19:38
重新下载了官方驱动,一切安装完美,能打开NVIDIA-SMI,只是不占内存,显卡不工作.
然后使用你的NVIDIA.SH,开 ...

好尴尬……这种情况我没遇到过,也不知道是什么原因。我猜是N卡没能正常开启,脚本又让各个服务运行在N卡上,然后就进不了图形界面。可能是脚本有漏洞,某一步没有正常执行。
如果能找到脚本所在的目录,请运行Intel.sh回退这些操作,然后按管理员aida的帖子手动配置。如果配置成功,欢迎分享经验。抱歉给你带来麻烦了!

2

主题

54

帖子

526

积分

-r--r--r--

Rank: 3Rank: 3

积分
526
jfy_99 发表于 2020-4-25 21:44:13 | 显示全部楼层
看了一下NVIDIA 390.132驱动的发行说明,里面修复了在5.4.0内核上的编译错误。Deepin 20 Beta的内核是5.3,不知道会不会也有这个错误。如果是这样,那么安装软件源内的390.116驱动可能就会报10楼那样的错误,只能去官网下载最新驱动安装了。

1

主题

5

帖子

52

积分

-r--------

Rank: 1

积分
52
qwers 发表于 2020-4-25 22:02:41 | 显示全部楼层
jfy_99 发表于 2020-4-25 21:31
好尴尬……这种情况我没遇到过,也不知道是什么原因。我猜是N卡没能正常开启,脚本又让各个服务运行在N卡 ...

不知道是哪的配置有问题,手工设置过一样没成功.
只能将N卡官方驱动卸载,才能启动进入图形界面.
目前只能闲置N卡了.
期待以后版本能解决吧!

2

主题

54

帖子

526

积分

-r--r--r--

Rank: 3Rank: 3

积分
526
jfy_99 发表于 2020-4-25 22:18:34 | 显示全部楼层
qwers 发表于 2020-4-25 22:02
不知道是哪的配置有问题,手工设置过一样没成功.
只能将N卡官方驱动卸载,才能启动进入图形界面.
目前只能闲 ...

感谢你的回复,解决显卡驱动这个老大难问题只能在曲折中前进……

25

主题

712

帖子

2183

积分

-rw-rw-r--

Rank: 5Rank: 5

积分
2183
zty199 发表于 2020-5-4 21:12:59 | 显示全部楼层
楼主的脚本好厉害,这次长见识了......不过我之前有改好的xorg.conf,就把intel脚本简化成把xorg.conf改名为xorg.conf.bak这样了,还原起来也很容易。而且不需要删除display_setup.sh,直接在lightdm.conf里面注释掉这个脚本的调用语句就好了。

唯一有问题的就是楼主说的第三个,我的笔记本是HD630+GTX1050,实测在安装nvidia-prime之后,是没办法直接用NVIDIA.sh切换回N卡独立渲染的,窗口特效无法开启,图标部分反色,调用独显的应用程序闪退。只有卸载掉nvidia-prime重新登录后才恢复正常......可以考虑在NVIDIA.sh脚本加上sudo apt --purge nvidia-prime卸载命令。就是Intel.sh怎么把nv-prime装回去就要自己改路径了......不知道是不是因为我nvidia-prime没有配置好的原因......
Device: HP Pavilion Gaming Laptop 15-cb073tx
CPU: Intel Core i5-7300HQ
GPU: Intel HD Graphics 630 / NVidia GeForce GTX 1050
Network: Broadcom bcm94360cs2 / Realtek RTL8111
Audio: Realtek ALC295
OS: Windows 10 2004 / Deepin 20 / macOS Big Sur

2

主题

54

帖子

526

积分

-r--r--r--

Rank: 3Rank: 3

积分
526
jfy_99 发表于 2020-5-5 08:37:52 | 显示全部楼层
zty199 发表于 2020-5-4 21:12
楼主的脚本好厉害,这次长见识了......不过我之前有改好的xorg.conf,就把intel脚本简化成把xorg.conf改名 ...

非常感谢!
我一开始的想法和你差不多,第一次配置后只需要修改xorg.conf和lightdm.conf就好了。后来想到要发给大家一键使用,就得完成第一次配置,于是现学现卖写了这个脚本。没有经过严格的测试,如果有漏洞欢迎指出。
关于手动切换和prime方案的共存,抱歉没有仔细研究过。看描述是独显没有运行,可以先检查一下脚本中涉及的配置文件是否正确。另外大黄蜂方案完全关闭独显,会导致手动切换和prime方案失败,所以要彻底删除大黄蜂方案的配置文件。并且除脚本和prime安装包的内容外,无需在/etc/X11、/usr/share/X11、/etc/lightdm中添加其他内容。
顺便说说另一个帖子里的问题:根据我的测试结果,使用prime-run时浏览器确实无法运行在独显上,包括Chrome和Firefox,都会回退到CPU渲染,只有手动切换到独显时才能使用GPU渲染。(其实核显跑浏览器还不错……)其他问题应该是独显没有正常驱动。
期待你的问题能够解决!

25

主题

712

帖子

2183

积分

-rw-rw-r--

Rank: 5Rank: 5

积分
2183
zty199 发表于 2020-5-6 02:42:47 | 显示全部楼层
本帖最后由 zty199 于 2020-5-6 02:50 编辑
jfy_99 发表于 2020-5-5 08:37
非常感谢!
我一开始的想法和你差不多,第一次配置后只需要修改xorg.conf和lightdm.conf就好了。后来想到 ...

感谢提醒......经过了穷举法测试后总算找到哪里出问题了......
xorg.conf里面我定义了两个Screen,核显和独显各一个,在Layout里面根据identifier名字指定了screen。结果实际上切换回独显渲染时,指定的screen部分参数似乎没有正确识别,核显我设置的30位色深,而n卡只支持24位,所以造成了这个问题......把色深统一为24为就没问题了。所以果然还是n卡的锅......
Device: HP Pavilion Gaming Laptop 15-cb073tx
CPU: Intel Core i5-7300HQ
GPU: Intel HD Graphics 630 / NVidia GeForce GTX 1050
Network: Broadcom bcm94360cs2 / Realtek RTL8111
Audio: Realtek ALC295
OS: Windows 10 2004 / Deepin 20 / macOS Big Sur
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回列表 返回版块 返回顶部