2023 Archlinux NVIDIA 3070 intel 双显卡驱动 + i3wm 解决方案
- 设备信息
- 背景
- 安装过程
- 安装桌面环境
设备信息
华硕天选3,CPU:12700H,GPU:GeForce 3070。
操作系统:6.1.4-arch1-1(默认linux内核,理论上lts和zen内核也可以,只要把包名换成相应的就好了,参见archwiki)。本文是linux
内核(默认内核)对应的驱动安装过程!
背景
本文写于2023年1月10日。显然,按照archwiki上的方法装挂了。于是通过收集各方资料,找到了如下成功解决方案。(xorg成功,wayland还没尝试)
本文没有archlinux系统的安装教程,要装系统出门左拐找archwiki。
本文将直截了当的、简明扼要的展示成功安装的过程,相应的原理及方法细节请自行查阅资料。
如果按照本文安装成功了,也请读一读archwiki里面的NVIDIA这一章,来进行完善。
安装过程
- 开启multilib,在/etc/pacman.conf中找到关于multilib的几行,将其取消注释,然后刷新系统:
# pacman -Syy
- 安装内核头文件。你一定已经装了
linux
包了对吧,那么只需要:
# pacman -S linux-headers
- 安装nvidia驱动及其工具:
archwiki上推荐装nvidia
,之前装了不行(也可能不是这个原因导致的),看了别人的博客之后发现装dkms版本的会比较合适。其他工具按wiki上装是可以的。有些工具有32位版本的,记得装上。(nvidia-dkms需要内核头文件才能编译)
# pacman -S nvidia-dkms nvidia-utils nvidia-settings nvidia-prime opencl-nvidia
# pacman -S lib32-nvidia-utils lib32-opencl-nvidia
- 改变内核启动参数(kernel parameters):根据bootloader不同,启动参数的改变方式也不同。
可以查一下archwiki上有关章节来进行更改。要点是一定要把ibt=off
加上,否则无法启动!!!
以最常见的grub为例:
编辑文件/etc/default/grub
,找到行GRUB_CMDLINE_LINUX_DEFAULT="..."
,在引号里附加上一个ibt=off
即可,注意要和其他参数用空格分开。保存退出,更新grub配置(路径可能会有所不同,/boot
可以换成你自己安装的时候定义的esp,以具体情况为准):
# grub-mkconfig -o /boot/grub/grub.cfg
- 不要装
xf86-video-intel
!!!如果装了,记得卸载:
# pacman -R xf86-video-intel
装一些mesa的驱动及工具:
# pacman -S glu libva-mesa-driver mesa mesa-amber mesa-demos mesa-utils opencl-mesa
# pacman -S vulkan-intel vulkan-mesa-layers
- 装完之后检查一下nouveau的模块有没有正确被拉黑:
# cat /usr/lib/modprobe.d/nvidia-utils.conf
里面应该有一句:blacklist nouveau
,没有就自己加上。
- 最重要的:重新生成initramfs,我第一次安装可能就是没做这一步,所以挂了:
先编辑文件/etc/mkinitcpio.conf
,找到里面有一行HOOKS=(...)
,把kms
这个词从里面去掉,然后运行如下命令:
# mkinitcpio -P
- 验证:重新启动!!!!重启登陆tty,运行如下命令,如果输出了一个关于你的显卡信息的一个矩形表格,那就是安装成功了,如果没有,那么恭喜,又双叒叕挂了。。。
#reboot
...
...
# nvidia-smi
安装桌面环境
这一步的前提是你已经重新启动好了,nvidia不挂了,nvidia-smi有反应了。。。
这一步就很常规了,要说明的是,i3在前两天发布的4.22中把i3-gaps整合进去了,所以跟以前的安装方式不太一样。基本的i3+sddm只要这么安装就行了,其中i3是一个组:
# pacman -S i3 sddm dmenu
再装一个终端模拟器,这里我喜欢kitty
,当然alacritty
之类的也是很好用的:
# pacman -S kitty
i3还可以继续配置,xorg也要继续配置,我可以考虑以后有空了写。(我可是桌面美化大师,哈哈)(雾)
设置sddm服务,并直接启动:
# systemctl enable --now sddm
如果可以进入桌面了,那么恭喜,折腾成功~
PS. 有些高分屏,如我的天选3,直接进桌面图标会很小。可以看一看archwiki中的HiDPI章节进行设置。