可能是Arch分支最正确的显卡驱动方案

这个文章有点儿啰嗦…要看解决方案到底是什么的,就直接拉到文章最后一节


笔记本,Intel核显+NVIDIA独显,解决方案?

只安装NVIDIA独显闭源驱动?大黄蜂切换?nouveau?

正确的方式是什么?


一、为什么放弃了大黄蜂

本身我一直推荐用户通过大黄蜂+bbswitch来实现双显卡切换。但直到前些日子我打算玩儿theHunter:Call of the Wild(猎人:野性的呼唤),它不能运行了。

我知道这个游戏是Windows专属,所以它是通过Proton来实现运作的。但是根据protondb.com给出的数据,这个游戏的支持度是很好的。

怪哉!

实在没有办法,只好用steam play bumblebee为关键词搜索,偶然看到了个描述(原网页懒得找了):大黄蜂不支持dxvk

原来问题在这里。

那就不得不放弃大黄蜂了。

二、选啥方案

只安装闭源驱动?

性能是好,但是太费电啊…

nouveau?

省电,还能自动切换,但独显性能太渣了啊…况且好像还不能执行CUDA?

Ubuntu有着Linux世界里边最好的I+N双显卡解决方案,叫做PRIME。这个方案是通过在显卡管理器中更改配置文件达到使用核显或独显的目的的。Arch有没有类似的?

三、找到了可能是最好的方案

ArchWiki一查,还真有:nvidia-xrun

很明显,这个方案比Ubuntu的PRIME方案复杂了太多太多。而且使用时还需要切换到一个字符界面。但它确实能提供完整的英伟达显卡性能,在不使用的时候也可以关闭。

顺着这篇wiki,我又来到了Graphics索引页面。然后看到了一个名字为NVIDIA Optimus的Wiki项。要知道,Arch下面的显卡方案往往都被归类为Optimus。所以点进这个Wiki看一看

emmm... nouveau, Bumblebee, nvidia-xrun。没什么特别的。

难道就只有这种通过tty载入独显驱动一条路了吗?

不!任何时候都请记住:养成查看英文页面的好习惯。

看到变化了吗?看到英文页面的5.4小节了吗?就是它!只需从托盘右键选择一个显卡,就可以自动注销并切换!比Ubuntu需要打开显卡管理器—选择配置文件—手动注销再登录还要简便!而且还不需要xrun那样事先配置一堆文件!简直是赶超Ubuntu驱动管理的最佳选择!

四、配它

简单到什么程度?只需装几个软件包,再点几下鼠标即可完成:

pacman -S nvidia bbswitch    
# nvidia: 英伟达闭源驱动。如果使用自定义内核,或者不想驱动崩掉,那就安装nvidia-dkms
# bbswitch: 切换使用的节能工具。如果使用自定义内核,那就安装bbswitch-dkms

yaourt -S optimus-manager-qt
# 托盘程序(可视化切换及设置)。会自动安装核心程序
# 如果配置有archlinuxcn源,那么同样可以使用pacman来安装
# 如果使用KDE桌面,另有optimus-manager-qt-kde可供选择

现在重启,应该就能看到托盘多出了一个小图标了。右键点击它,选择设置—OptimusSwitching method选择Bbswitch,确定保存。

完成了。以后只需要右键这个图标,选择对应的配置方案,便可进行切换了。


所以,总结一句话:

一定记得看英文页面


注:

  • 根据项目readme,仅支持Arch分支的发行版
  • manjaro由于自带电源管理和自己的大黄蜂驱动方案(一样的残缺),需要对照git项目,删除/修改指定的配置文件以完成部署

对应的git项目 点这里

如果发现默认设置还是不能启动proton游戏,尝试如图配置

创建时间:2019年10月03日
最后修订:2020年01月03日
另请参阅:
ArchlinuxManjaronvidia显卡
上一篇
打赏
下一篇

添加新评论

已有 18 条评论

 阿家 5 个月前 • |

我是个蓝天nb60的本子,8700+1050ti。始终都装不上linux,有些安装界面都进不去,不管是哪个发行版,连centos都装不上。

 等我稍后补充昵称 5 个月前 • |
@阿家

一般不应该这样。能进到安装程序的有吗?没有的话就要考虑一下BIOS的引导顺序了

 王森 2 个月前 • |

为什么我选了英特尔方案,英伟达显卡还是显示a1启动着

 王森 2 个月前 • |

发现是bbswitch的问题,只要装了它,就开不了机

 等我稍后补充昵称 2 个月前 • |
@王森

bbswitch可以关掉n卡 然后开不了机的话,之前有屏蔽过核显吗?有装过核显驱动吗?如果既没屏蔽也装了核显驱动了,那么尝试acpi_call拿个选项,或者把启动配置调整一下再试

 228780975 2 个月前 • |
@等我稍后补充昵称

那就是说装不装bbswitch都无所谓?

 等我稍后补充昵称 2 个月前 • |
@228780975

这是两种关闭n卡的方法。要么装bbswitch通过这个关掉N卡,要么装acpi_call来实现相同的目的。如果没有节电需求,那么这两个可以都不要

 228780975 2 个月前 • |
@等我稍后补充昵称

懂了

 228780975 2 个月前 • |
@等我稍后补充昵称

谢谢啦

 228780975 2 个月前 • |
@等我稍后补充昵称

话说我有遇到个新问题,装了核显驱动之后,fn快捷键就亮度调节用不了,其余都可以

 等我稍后补充昵称 2 个月前 • |
@228780975

这就是驱动模块的问题了 可以试试其他的核显驱动

 LeeSin 2 个月前 • |

作者大大,我按照教程把这三个都装上以后就进不去桌面了,sddm无法加载,在tty手动加载sddm的报错内容和我只安装了核芯显卡驱动及开源nouveau驱动那时候差不多,都报错类似的内容:(这是安装了bbswitch等之后重启时加载sddm的报错)
Running:/usr/bin/X -nolisten tcp -auth /var/run/sddm/{58759915-5890-4503-be7a-4d7e19091ad7} -background none -noreset -displayfd 16 -seat seat0 vt1
Failed to read display number from pipe
Display server failed to start,exiting.
请问应该如何解决?

 等我稍后补充昵称 2 个月前 • |
@LeeSin

这个需要把i915模块改成kms模式启动 https://wiki.archlinux.org/index.php/Kernel_mode_setting#Early_KMS_start

 aimil 2 个月前 • |

前来感谢up主让我的manjaro从闪屏到正常,nice!

 23333 1 星期前 • |

站主,请问dkms与不带dkms有什么区别吗

 等我稍后补充昵称 1 星期前 • |
@23333

dkms到本机编译,适合用自定义内核(比如linux-zen这种内核)的用户,不带dkms就只能用在默认的内核上(就是通过pacman -S linux得到的内核)

 23333 1 星期前 • |
@等我稍后补充昵称

那如果是默认的内核安dkms会更稳定吗?

 等我稍后补充昵称 1 星期前 • |
@23333

一般没有什么区别,只有英伟达显卡驱动在极少数情况下会更稳定。