驱动选择
查看系统内核版本 : uname -r
查看显卡情况 : lspci -k | grep -A 2 -E "(VGA|3D)"
根据显卡型号选择驱动版本 :
- 查找代号(如 NV50, NVC0等): 英伟达代号查询页
- 若上面的页面找不到显卡的型号,可到英伟达历史型号列表页查找
- 英伟达驱动下载站查找
如:
1 | lspci -k | grep -A 2 -E "(VGA|3D)" |
搜索GM108
1 | NV110 family (Maxwell) |
根据相应的型号安装相应驱动 :
- 对于
GeForce 630-900
、10-20
和Quadro / Tesla / Tegra K
系列卡以及较新的(NVE0
,NV110
和较新的2010年及以后的卡),安装nvidia
或nvidia-lts
(用于linux-lts
内核) - 对于2010-2011年左右的
GeForce 400/500/600
系列卡(NVCx
和NVDx
),安装nvidia-390xx-dkms
(AUR) - 更老的显卡推荐直接用开源驱动
nouveau
,或参考Arch wiki
在64位的操作系统上,需要32位程序发挥驱动的优势,可从multilib
源中安装 nvidia 相应的lib32包(如lib32-nvidia-utils
)
安装驱动
1 | sudo pacman -S nvidia lib32-nvidia-utils |
重启, nvidia 包含一个将 nouveau 模块列入黑名单的文件,因此必须重新启动
使用optimus-manager实现双显卡切换
安装 optimus-manager
: sudo pacman -S optimus-manager
配置optimus-manager
确保 /etc/X11/xorg.conf
和 /etc/X11/xorg.conf.d
下没有其他显卡和显示相关的配置,如果有的话可备份后删除,原因是 optimus-manager
会生成显卡配置文件 /etc/X11/xorg.conf.d/10-optimus-manager.conf
,多个显卡配置文件可能导致出错,更多参考optimus-manager说明文件
1 | tree /etc/X11 |
启动optimus-manager服务
1 | sudo systemctl enable optimus-manager |
配置文件详解
1 | [optimus] |
使用
切换到nvidia: optimus-manager --switch nvidia
切换到Intel: optimus-manager --switch intel
设置开机使用intel: optimus-manager --set-startup=intel
optimus-manager [参数]
可选参数:
1 | -h,--help 显示此帮助消息并退出 |
使用图形界面配置: yay -S optimus-manager-qt
Gnome shell插件:
Manjaro双显卡
Manjaro官方提供一个驱动驱动管理工具mhwd
,可用于直接安装相关驱动
mhwd [指令]
指令 | 说明 |
---|---|
--pci | 仅列出PCI设备和驱动程序配置 |
--usb | 仅列出USB设备和驱动程序配置 |
-h/--help | 显示帮助 |
-v/--version | 显示mhwd的版本 |
-f/--force | 强制重新安装 |
-d/--detail | 显示-l / -li / -lh的详细信息 |
-l/--list | 列出设备的可用配置 |
-la/--listall | 列出所有驱动程序配置 |
-li/--listinstalled | 列出已安装的驱动程序配置 |
-lh/--listhardware | 列出硬件信息 |
-i/--install <usb/pci> <config(s)> | 安装驱动程序配置 |
-ic/--installcustom <usb/pci> <path> | 安装自定义配置 |
-r/--remove <usb/pci> <config(s)> | 删除驱动程序配置 |
-a/--auto <usb/pci> <free/nonfre> <classid> | 自动安装classid的配置 |
--pmcachedir <path> | 设置程序包管理器缓存路径 |
--pmconfig <path> | 设置程序包管理器配置 |
--pmroot <path> | 设置软件包管理器root |
安装闭源驱动
nvidia : sudo mhwd -f -i pci video-hybrid-intel-nvidia-prime
nvidia-390xx : sudo mhwd -f -i pci video-hybrid-intel-nvidia-390xx-bumblebee
使用默认的bumblee管理显卡
将用户加入到bumblee组: sudo gpasswd -a $USER bumblebee
设置bumblebeed开机启动: sudo systemctl enable bumblebeed
重启
修复无法进入桌面
若重启无法进入桌面,在开机后黑屏的地方按 Ctrl+Alt+F3
即可进入 tty
,在终端中进行相关配置
查询BusID
1 | lspci | grep -E "VGA|3D" |
nvidia的BusID为: PCI:1:0:0
将 /etc/X11/xorg.conf.d/90-mhwd.conf
备份然后修改为如下配置
1 | Section "Module" |
重启
测试性能
安装性能测试工具: sudo pacman -S mesa-demos glmark2
测试集显性能
1 | glxgears |
测试独显性能
1 | optirun glxgears |
NVIDIA setting
面板打不开使用命令 : optirun -b none nvidia-settings -c :8
使用optimus-manager管理
关闭bumblebeed
1 | sudo systemctl stop bumblebeed |
安装 optimus-manager
然后启动服务
1 | sudo pacman -S optimus-manager |
根据上文内容配置 optimus-manager
然后重启即可。
其他
很多硬件厂商的BIOS驱动对Linux不友好,无法顺利加载ACPI模块,从而导致无法驱动独立显卡,这就需要修改grub启动文件使ACPI模块能正常工作
修改 /etc/default/grub
1 |
|
更新grub文件使生效: sudo update-grub
重启