[Arch]-12-从AMD显卡替换Nvidia显卡

引言

这篇文章记录Manjaro系统环境中,从A卡替换到N卡的过程,在替换之后出现CPU占用率从3%跳到15%反复出现,排查后发现是N卡开源驱动的问题,替换成官方闭源驱动完美解决。

文章目录

0×1.Arch如何将Amd卡替换成Nvidia卡

实验系统:EndeavourOS

主机替换前显卡:AMD

主机替换后显卡:Nvidia 3080

本来想着EndeavourOS 已经集成了Nvidia的开源驱动,直接将A卡取出来,换上N卡完事,但进入系统后,CPU的使用率有点奇怪,监控中显示CPU的使用率在0%~15%这个区间,有规律的跳动,从0直接跳15再到0再到15,看起来就像是在跳机械舞,查阅了部分资料后,分析出问题可能出现在自带的Nouveau驱动上,需要替换安装官方的闭源驱动才行,然后就有了下面的操作:

					
					# 1.安装N卡闭源驱动和组件
					987@zyj1.hk987.xyz:~$ sudo pacman -S nvidia-dkms nvidia-utils nvidia-settings lib32-nvidia-utils

					# 2.创建内核参数文件
					# 分支1:如果是使用systemd-grub引导
					#查看这个路径和这个文件是否存在
					987@zyj1.hk987.xyz:~$ sudo ls /etc/kernel/cmdline
					#EndeavourOS默认使用Systemd-grub作为引导,有这个文件,所以只需要在文件末尾加个nvidia-drm.modeset=1参数
					987@zyj1.hk987.xyz:~$ sudo vim /etc/kernel/cmdline
					nvme_load=YES nowatchdog rw root=UUID=8b3b....d8d4307 nvidia-drm.modeset=1

					# 分支2:如果是使用grub引导
					#只需要将参数加在/etc/default/grub文件中
					987@zyj1.hk987.xyz:~$ sudo vim /etc/default/grub
					#找到这一行
					GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"  # 你的内容可能略有不同,比如包含 nowatchdog、rw 等
					# 在引号内的末尾用空格隔开,添加 nvidia-drm.modeset=1,修改后示例:
					GRUB_CMDLINE_LINUX_DEFAULT="quiet splash nvidia-drm.modeset=1"

					# 3.刷新引导
					987@zyj1.hk987.xyz:~$ sudo reinstall-kernels

					# 4.重启电脑,使用下面的命令验证,能够看到一大片输出就是安装成功了
					nvidia-smi
					
					

如果在安装过程中遇到问题(比如停电或者死机),重启了,这个时候很可能会开机卡在一个黑色屏幕进不去系统,可以通过进入tty3(ctrl+alt+f3),然后重复上面安装N卡闭源驱动的过程,直到安装完成重启,就能成功进入系统了。

内核大版本升级之后(例如从5.0升级到6.0),重启系统很有可能卡在有SYSTEM Clean提示的黑屏上,这个时候可以使用Ctrl+Alt+F3进入字符界面,登录进系统后,再重新安装N卡驱动。