标签 nvidia 下的文章

注意:避免通过 NVIDIA 网站提供的软件包安装 NVIDIA 驱动程序。通过 pacman 安装允许将驱动程序与系统的其余部分一起升级。

这些说明适用于默认内核linux或linux-lts。

1.如果您不知道您拥有什么显卡,请通过以下方式找到:

lspci -k | grep -A 2 -E "(VGA|3D)"

2、根据NVIDIA GPU型号,选择对应的版本:

sudo pacman -S nvidia
  • 或者,对于图灵Turing(NV160/TUXXX)系列或更新,可以为Linux内核上的开源内核模块安装nvidia-open软件包(在其他内核上必须使用nvidia-open-dkms)。
sudo pacman -S nvidia-open
sudo pacman -S nvidia-470*
sudo pacman -S nvidia-390*

DRM 内核模式设置

要启用 DRM(直接渲染管理器)内核模式设置,请添加内核参数:nvidia-drm.modeset=1

sudo vim /etc/default/grub

添加到这一行GRUB_CMDLINE_LINUX_DEFAULT

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash nvidia-drm.modeset=1"

添加模块到 mkinitcpio

sudo vim /etc/mkinitcpio.conf
MODULES=(nvidia nvidia nvidia_modeset nvidia_uvm nvidia_drm)
sudo mkinitcpio -p linux

为了避免在 NVIDIA 驱动程序升级后忘记更新 initramfs 的可能性,您可能需要使用 pacman HOOK:

sudo vim /etc/pacman.d/hooks/nvidia.hook
[Trigger]
Operation=Install
Operation=Upgrade
Operation=Remove
Type=Package
Target=nvidia
Target=linux
# Change the linux part above and in the Exec line if a different kernel is used

[Action]
Description=Update NVIDIA module in initcpio
Depends=mkinitcpio
When=PostTransaction
NeedsTargets
Exec=/bin/sh -c 'while read -r trg; do case $trg in linux) exit 0; esac; done; /usr/bin/mkinitcpio -P'

不支持的驱动程序

如果您使用的是较旧的卡,NVIDIA 将不再主动支持您的卡的驱动程序。这意味着这些驱动程序不正式支持当前的Xorg版本。因此,使用Nouveau驱动程序可能更容易,它支持当前Xorg的旧卡。

但是,NVIDIA的旧版驱动程序仍然可用,可能会提供更好的3D性能/稳定性。

对于特斯拉 Tesla(NV50/G80-90-GT2XX)系列,请安装nvidia-340xx-dkmsAUR软件包。
对于居里Curie(NV40/G70)系列及更早版本,驱动程序不再针对Arch Linux打包。

NVIDIA GPU代号

Code name Official Name Nvidia 3D object codename
NV04 Riva TNT, TNT2 Fahrenheit
NV10 GeForce 256, GeForce 2, GeForce 4 MX Celsius
NV20 GeForce 3, GeForce 4 Ti Kelvin
NV30 GeForce 5 / GeForce FX Rankine
NV40 GeForce 6, GeForce 7 Curie
NV50 GeForce 8, GeForce 9, GeForce 100, GeForce 200, GeForce 300 Tesla
NVC0 GeForce 400, GeForce 500 Fermi
NVE0 GeForce 600, GeForce 700, GeForce GTX Titan Kepler
NV110 GeForce 750, GeForce 900 Maxwell
NV130 GeForce 1060, GeForce 1070 Pascal
NV140 NVIDIA Titan V Volta
NV160 GeForce RTX 2060, GeForce GTX 1660 Turing
NV170 GeForce RTX 3060, GeForce RTX 3070 Ampere