惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Y
Y Combinator Blog
博客园_首页
量子位
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
H
Help Net Security
The Cloudflare Blog
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
A
About on SuperTechFans
腾讯CDC
H
Hackread – Cybersecurity News, Data Breaches, AI and More
D
DataBreaches.Net
L
LangChain Blog
Stack Overflow Blog
Stack Overflow Blog
Jina AI
Jina AI
月光博客
月光博客
云风的 BLOG
云风的 BLOG
博客园 - 聂微东
Hugging Face - Blog
Hugging Face - Blog
雷峰网
雷峰网
C
Check Point Blog
V
V2EX
T
Tailwind CSS Blog
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
Microsoft Security Blog
Microsoft Security Blog

少数派

派早报:Google 发布 Fitbit Air 等 - 少数派 「新人报到」確認需求,再開始 - 少数派 从 SOLO 独立开发者社区,我看到了越来越多开发者开始做自己的产品 - 少数派 我怎么管理那些"不常做,但总会忘"的生活事项 - 少数派 人形机器人量产元年,数据才是具身智能的“生死线” - 少数派 BuhoLaunchpad 高度还原 Mac 启动台:开发历程与思考 - 少数派 五年陪伴依然不舍,DIY 换壳后让罗技 MX Master 3 继续服役 - 少数派 新玩意 240|少数派的编辑们最近买了啥? - 少数派 一日一技|为什么你应该关闭 iOS 的键盘声音 - 少数派 我做了个插件和 Skills,一键提取任何网站的设计规范 Design.md - 少数派 住在三四线城市的你,该开始录播客了 - 少数派 甘南秘境,大白高国 - 少数派 AI的审美:谁让把我变成川内倫子 - 少数派 返工怎能不烦恼,打工人片单总有一部是你的「嘴替」 - 少数派 为了让「上厕所」更健康,我做了一个小工具 - 少数派 AI + Skill,能够让生成的文章去除 AI 味吗? - 少数派 新玩意|韶音OpenDots ONE 耳夹式耳机 - 少数派 《美满》| 在每一个春天的晚上相爱(362) - 少数派 新玩意|优篮子 PS01 MagSnap 磁吸支架 - 少数派 自我整合手记 | 我开始早睡了:用稳定规则,为自由托底 - 少数派 用龙虾(OpenClaw)两个多月,我最深的12个体会 - 少数派 听歌时间到,12 张你可能错过的 2025 华语乐坛好专辑 - 少数派 承诺能追吗 - 少数派 macOS 26启动台没了? 我做了个不一样的App启动器 - Keboard - 少数派 《四海为家的人》| INTJ对话INTJ(361) - 少数派 你发过的那些黑历史,是时候一次清干净了 - 少数派 新玩意:安安静静玩,越玩越专注:计客密码机 - 少数派 iPad 用户首次体验 Android 平板:vivo Pad6 Pro - 少数派 数据逻辑强 - 少数派 极北行+ | 一路向北,探访日本至北之地 | 001 - 少数派
ArchLinux N卡驱动配置 - 少数派
2025-06-19 · via 少数派

    在 Arch Linux 上使用 NVIDIA 显卡时,闭源驱动(nvidia)通常能提供最佳性能和兼容性,尤其适合游戏、AI 计算和图形工作站等场景。本文将介绍驱动的安装、配置和常见问题解决方案,帮助你在 Arch Linux 上高效使用 NVIDIA 显卡。

适用读者

使用 NVIDIA 显卡的 Arch Linux 用户

需要官方驱动支持 CUDA、Optimus 或最新图形技术的用户

追求稳定性和性能的玩家或开发者

特点

 ✔ 自动适配最新内核(或 DKMS 支持)

 ✔ 完整 Vulkan、OpenGL 和 CUDA 支持 

✔ 针对笔记本双显卡(Optimus)的优化方案

接下来,我们将从驱动安装开始逐步展开。

1. 驱动选择

首先需要确认使用的是那一系列显卡,可根据 https://nouveau.freedesktop.org/CodeNames.html 地址查询自己的显卡对应的 GPU家族

https://wiki.archlinux.org/title/NVIDIA

如果以上驱动安装后都不能正常工作,您也许需要使用 nvidia-open-betaAUR 以获得更新版本的驱动。

在安装了 Intel CPU 11 代或更新版本的处理器以及Linux 5.18 (或更高版本)的系统上可能无法正常工作,原因是与其与 Indirect Branch Tracking 这个安全功能不兼容。您可以在 Arch_的启动流程中设置 ibt=off 内核参数来禁用它。请注意,这项安全功能负责缓解一些攻击技术的影响

Nvidia不再积极为这些显卡提供驱动。这意味着这些驱动不正式支持现在的Xorg版本。因此使用 Nouveau 驱动可能会更方便,因为它依然为这些老显卡提供对当前Xorg的支持。但是,Nvidia 提供的 legacy 驱动依旧可用,并且或许拥有更好的 3D 性能(稳定性)。

对于 32 位应用程序支持,请安装 multilib 仓库中对应的 lib32 nvidia 软件包(例如 lib32-nvidia-utils包)。

开始前的基础配置(配置AUR包管理工具,配置ArchLinuxCN源,确认桌面环境使用)

桌面环境确认(Wayland 与 X11)

1. X11(X Window System)

诞生时间:1984 年(历史悠久,广泛兼容)

架构:客户端-服务器模型(X Client ↔ X Server),支持网络透明性(远程图形渲染)。

特点

成熟稳定,兼容几乎所有 Linux 软件。

支持多窗口管理器和自定义配置(如 .Xresources)。

缺点

性能较低(额外的协议开销)。

安全性较弱(应用程序可监听输入事件)。

屏幕撕裂、延迟等问题较常见(依赖 compton/picom 等合成器修复)。

2. Wayland

诞生时间:2008 年(现代设计,逐步取代 X11)

架构:直接通信(应用 ↔ 显示服务器),简化流程,减少中间层。

特点

更轻量、高效,减少图形渲染延迟。

原生支持 VSync、高DPI 和触摸手势。

安全性更强(应用无法窃取键盘/鼠标输入)。

缺点

兼容性较差(部分 X11 应用需通过 XWayland 运行)。

NVIDIA 驱动支持较晚(需额外配置)。

3. 如何选择?

场景推荐协议原因
老旧硬件或专业软件X11兼容性最广
游戏或高刷新率需求Wayland低延迟,更好的帧同步
NVIDIA 显卡用户X11(或手动配置 Wayland)官方 Wayland 支持仍有限
触摸屏/4K 屏幕Wayland原生高DPI 和手势支持

4. 在 Arch Linux 上切换

检查当前会话

echo $XDG_SESSION_TYPE

Wayland 登录:选择 GNOME (Wayland)、KDE Plasma (Wayland) 等会话。

强制使用 X11:在登录管理器中选择带 X11 的选项,或添加 --server-args="-nolisten tcp"startx

个人使用感受:

因为KDE Plasma 6 大版本的更新,基础框架更新到了Qt 6,默认图形环境也变为了Wayland,所以我目前已从X11环境彻底全部迁移到了Wayland(碰到了一些奇怪的BUG但是整体体验和X11无差,并且随着滚动升级,BUG基本没在碰到过了,反之X11确越来越多问题了)。

X11环境我也使用了近几年了,说实话无太多感觉,不出BUG的环境就是好环境,但是自从ArchLinux与KDE Plasma 6 的更新后,X11下因为配置了双显卡,导致了我笔记本莫名其妙会卡死,在一番折腾下彻底放弃了X11(因为我的环境巨乱无比)。

配置AUR包管理工具

sudo pacman -S pikaur  #安装pikaur AUR包管理工具,pikaur的用法基本上与pacman一致

配置ArchLinux源

编辑/etc/pacman.conf 文件结尾新添加:

[archlinuxcn]
Server = https://mirrors.tuna.tsinghua.edu.cn/archlinuxcn/$arch

更新同步软件包数据库

sudo pacman -Sy archlinux-keyring
sudo pacman -Sy 

2. 驱动安装

根据1. 驱动选择 章节中,确定的显卡型号选定需要安装的包,我的是RTX3060对应的是NV170 family (Ampere) 可根据该WIKI确定为Ada Lovelace (NV190/ADXXX)系列选择:nvidia(适用于linux),nvidia-lts (适用于linux-lts),nvidia-dkms(适用于任意内核) 其中之一即可,当然我这里为了方便直接选择了nvidia-dkms,该包后期无需过多管理,如果你的显卡过于老旧可使用nvidia-open-dkms包,或指定驱动的包文件,利用pikaur直接安装即可

安装驱动

我安装的包,这里的包比较齐全,可以按需安装

pikaur -S egl-gbm egl-wayland egl-x11 libnvidia-container libvdpau libxnvctrl nvidia-container-toolkit nvidia-dkms nvidia-prime nvidia-settings nvidia-utils opencl-nvidia lib32-libvdpau

正常安装如下即可,后面可按需补充安装

sudo pacman -S nvidia-dkms nvidia-prime nvidia-utils nvidia-settings

1. 核心驱动与工具

包名用途
nvidia-dkmsNVIDIA 动态内核模块(DKMS)驱动,支持自定义内核(如 linux-zen)。
nvidia-utilsNVIDIA 用户态工具(如 nvidia-smi、Vulkan/OpenGL 驱动文件)。
opencl-nvidiaNVIDIA 的 OpenCL 支持(用于 GPU 计算,如机器学习、哈希破解等)。
lib32-nvidia-utilsNVIDIA 驱动的 32 位兼容库(运行旧版游戏或软件如 Steam 所需)。

2. 图形接口支持

包名用途
egl-gbm提供 EGL 接口的 GBM(Generic Buffer Management)支持,用于 Wayland 下的显存管理。
egl-waylandNVIDIA 驱动对 Wayland 的 EGL 支持(解决 Wayland 兼容性问题)。
egl-x11NVIDIA 驱动对 X11 的 EGL 支持(传统 X11 环境下的 OpenGL 加速)。
libvdpauVDPAU(视频解码加速接口),支持硬件解码(如 MPV/VLC 播放 4K 视频)。
lib32-libvdpauVDPAU 的 32 位兼容库。

3. 硬件控制与监控

包名用途
libxnvctrlNVIDIA X Control 库(供 nvidia-settings 读取 GPU 传感器数据)。
nvidia-settings图形化工具,调整 GPU 时钟、风扇转速、电源模式等。

4. 容器与虚拟化支持

包名用途
libnvidia-containerNVIDIA 容器运行时依赖库(供 Docker 调用 GPU)。
nvidia-container-toolkit让容器(如 Docker/Podman)支持 NVIDIA GPU(用于 Kubernetes/AI 训练)。

5. 多显卡(Optimus)支持

包名用途
nvidia-primeNVIDIA Optimus 双显卡切换工具(需配合 prime-run 命令使用)。

3. 配置与优化

在目前新版本中的驱动已经完成了默认配置无需其他额外配置,不过笔记本可能需要再进行配置来默认N卡独立显卡运行桌面环境或使用nvidia-prime来用N卡独显的方式启动应用程序

prime-run vulkaninfo # 使用N卡独显的方式运行程序,该方案由NVIDIA 官方提供

完全使用独显运行:

确认自己的桌面环境:

env | grep XDG

在XDG_SESSION_TYPE= 项可看到具体环境

X11 下(简单点直接使用optimus-manager即可):

pikaur -S optimus-manager-qt  #AUR源安装optimus-manager-qt包

安装完成后可直接在任务栏切换显卡,重新登陆即可切换成功:

Wayland下(安装all-ways-egpu包进行配置即可):

pikaur -S all-ways-egpu  # AUR源安装all-ways-egpu包

这个工具需要额外配置直接命令行运行 all-ways-egpu 命令,按照提示输入数字就好

确认显卡运行情况:

sudo nvidia-smi

4. 疑难杂症

出现黑屏情况,可以尝试修改内核参数:

方法一:

编辑/etc/default/grub文件,在 GRUB_CMDLINE_LINUX_DEFAULT="loglevel=3 quiet" quiet前添加

nvidia-drm.modeset=1

保存文件后更新grub

sudo update-grub

方法二:

编辑/etc/default/grub文件,在 GRUB_CMDLINE_LINUX_DEFAULT="loglevel=3 quiet" quiet前添加

acpi_osi=! acpi_osi="Windows 2009"

保存文件后更新grub

sudo update-grub

卡死无法开机可使用ArchLInux安装盘利用arch-chroot /mnt 挂载安装好的系统进行救援。

注意:需要先通过mount进行硬盘挂载

5. 参考文章

https://wiki.archlinuxcn.org/wiki/NVIDIA

https://nouveau.freedesktop.org/CodeNames.html

https://wiki.archlinuxcn.org/wiki/NVIDIA_Optimus#

https://github.com/Askannz/optimus-manager

https://forums.linuxmint.com/viewtopic.php?t=352940