Fedora Linux 64 位上的 NVIDIA GeForce 驱动程序安装
NVIDIA 驱动程序是您的 NVIDIA 图形 GPU 以更好的性能运行所需的程序。它在您的 Linux 操作系统(在本例中为 Fedora)和您的硬件(NVIDIA 图形 GPU)之间进行通信。
停止 GUI 并通过修改 GRUB 启动菜单禁用 nouveau 驱动程序后,可以使用 Bash 命令安装 NVIDIA 驱动程序。
要在其他 Linux 发行版上安装 Nvidia 驱动程序,请遵循我们的 Nvidia Linux 驱动程序指南。
在本 NVIDIA 驱动程序安装指南中,您将了解到:
如何使用 RPM Fusion 自动安装 NVIDIA 图形驱动程序以及手动使用 nvidia.com 的官方 NVIDIA 驱动程序
如何识别操作系统上的 NVIDIA 显卡型号
哪里可以下载 Fedora Linux 的 NVIDIA 驱动程序包
如何在 Fedora Linux 上成功编译和安装 Nvidia 驱动程序的先决条件
如何禁用 nouveau 驱动程序
如何在 Fedora Linux 操作系统上成功安装 NVIDIA 驱动程序。
在 Fedora Linux 上安装 NVIDIA GeForce 视频驱动程序
如何在 Fedora Linux 上安装 NVIDIA 驱动程序的分步说明
使用 RPMFusion 安装 Nvidia 驱动程序
使用 RPM Fusion 在 Fedora Linux 上安装 Nvidia 驱动程序是最简单且推荐的方法,因为您不必在每次有新的内核更新时重新编译驱动程序。
打开终端并通过执行以下命令识别您的 Nvidia 显卡型号:
$ lspci -vnn | grep VGA 01:00.0 VGA compatible controller [0300]: NVIDIA Corporation GP106 [GeForce GTX 1060 6GB] [10de:1c03] (rev a1) (prog-if 00 [VGA controller])
全面更新您的系统。
$ sudo dnf update
注意
未能完全更新系统可能会导致内核版本不匹配,从而导致 “NVIDIA 内核模块丢失。 Falling back to nouveau.” nvidia 驱动程序安装和系统重启后出现错误消息。启用 RPM 融合:
$ sudo dnf install https://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm $ sudo dnf install https://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm
最后,通过选择以下选项之一来安装相关的 Nvidia 驱动程序包:对于最近的 GeForce/Quadro/Tesla 执行:
$ sudo dnf install akmod-nvidia
对于旧版 GeForce 400/500 执行:
$ sudo dnf install xorg-x11-drv-nvidia-390xx akmod-nvidia-390xx
对于旧版 GeForce 8/9/200/300 执行:
$ sudo dnf install xorg-x11-drv-nvidia-340xx akmod-nvidia-340xx
全做完了。重新启动您的系统:
$ sudo reboot
Fedora Linux 上的 NVIDIA 驱动程序
手动安装 Nvidia 驱动程序
如果由于某种原因使用 RPM fusion 安装 Nvidia 驱动程序失败,或者您只是希望获得可能无法通过 RPM fusion 渠道获得的最新 Nvidia 驱动程序版本,您可以尝试手动安装 Nvidia 驱动程序。
打开终端并通过执行以下命令识别您的 Nvidia 显卡型号:
$ lspci -vnn | grep VGA 01:00.0 VGA compatible controller [0300]: NVIDIA Corporation GP106 [GeForce GTX 1060 6GB] [10de:1c03] (rev a1) (prog-if 00 [VGA controller])
根据您的 Nvidia 卡型号和 Linux 操作系统,使用搜索条件从 nvidia.com 下载 Nvidia 驱动程序包。
为您的 VGA 卡下载合适的 Nvidia 驱动程序。
Linux 长期分支 (LLB) 与 Linux 短期分支 (SLB)
Long-Lived Branch 驱动程序为 Unix 客户提供 ISV 认证以及最佳稳定性和性能。该驱动程序最常部署在企业中,为通常需要的持续错误修复和安全更新提供支持。
短期分支驱动程序为早期采用者和前沿开发人员提供在集成到长期分支之前访问最新驱动程序功能的权限。 参考:nvidia.com
或者,如果您知道自己在做什么,则可以直接从 Nvidia Linux 驱动程序列表下载驱动程序。准备好后,您应该会得到一个类似于下图所示的文件:
$ ls NVIDIA-Linux-x86_64-* NVIDIA-Linux-x86_64-430.50.run
接下来,安装成功编译和安装 Nvidia 驱动程序所需的软件包。
$ sudo dnf groupinstall "Development Tools" $ sudo dnf install libglvnd-devel
通过修改 GRUB 启动菜单永久禁用
nouveau
驱动程序:$ sudo grub2-editenv - set "$(sudo grub2-editenv - list | grep kernelopts) nouveau.modeset=0"
重新启动您的 Fedora Linux 系统:
警告
根据您的 Nvidia VGA 型号,您的系统可能会出现问题。在此阶段,请准备好亲自动手。重新启动后,您可能根本就没有 GUI。确保您的系统上启用了 SSH 服务器,以便能够远程登录或使用 CTRL+ALT+F2 切换 TTY 控制台并继续安装。$ sudo reboot
必须在 Xorg 服务器停止时安装 Nvidia 驱动程序。通过以下方式切换到文本模式:
$ sudo systemctl isolate multi-user.target
通过 TTY 控制台或远程 SSH 登录执行以下命令来安装 Nvidia 驱动程序:
$ sudo bash NVIDIA-Linux-x86_64-*
当出现提示时,回答
YES
以安装 NVIDIA 的 32 位兼容性库并自动更新您的 X 配置文件。注意
错误:无法找到当前运行的内核的内核源代码树
如果您在执行以下命令期间收到上述错误消息,请按照有关如何在 CentOS/RHEL Linux 系统上安装内核源的内核源说明进行操作。再次重新启动系统。
$ sudo reboot
在运行显卡基准测试的 Fedora Linux GNOME 工作站上安装了 Nvidia 驱动程序。
故障排除
用户登录后,Xorg 服务器上的 GDM 不会启动,并且用户最终会出现黑屏。 Xorg 日志包含以下或类似的错误消息:
[ 3515.464] (II) systemd-logind: got pause for 13:68
[ 3515.738] (II) systemd-logind: got resume for 13:64
[ 3515.757] (II) NVIDIA(0): Setting mode "DFP-1:nvidia-auto-select"
[ 3515.793] (II) NVIDIA(0): ACPI: failed to connect to the ACPI event daemon; the daemon
[ 3515.793] (II) NVIDIA(0): may not be running or the "AcpidSocketPath" X
[ 3515.793] (II) NVIDIA(0): configuration option may not be set correctly. When the
[ 3515.793] (II) NVIDIA(0): ACPI event daemon is available, the NVIDIA X driver will
[ 3515.793] (II) NVIDIA(0): try to use it to receive ACPI event notifications. For
[ 3515.793] (II) NVIDIA(0): details, please see the "ConnectToAcpid" and
[ 3515.793] (II) NVIDIA(0): "AcpidSocketPath" X configuration options in Appendix B: X
[ 3515.793] (II) NVIDIA(0): Config Options in the README.
[ 3515.793] [dix] couldn't enable device 8
[ 3515.793] (II) systemd-logind: got resume for 13:66
[ 3515.793] [dix] couldn't enable device 6
[ 3515.794] (II) systemd-logind: got resume for 13:65
[ 3515.794] [dix] couldn't enable device 7
[ 3515.794] (II) systemd-logind: got resume for 13:72
[ 3515.794] [dix] couldn't enable device 14
[ 3515.794] [dix] couldn't enable device 17
[ 3515.794] (II) systemd-logind: got resume for 13:71
[ 3515.794] [dix] couldn't enable device 13
[ 3515.794] (II) systemd-logind: got resume for 13:67
[ 3515.794] [dix] couldn't enable device 9
[ 3515.794] (II) systemd-logind: got resume for 13:73
[ 3515.794] [dix] couldn't enable device 15
[ 3515.794] (II) systemd-logind: got resume for 13:69
[ 3515.794] [dix] couldn't enable device 11
[ 3515.794] [dix] couldn't enable device 16
[ 3515.794] (II) systemd-logind: got resume for 13:70
[ 3515.794] [dix] couldn't enable device 12
[ 3515.794] (II) systemd-logind: got resume for 13:68
[ 3515.794] [dix] couldn't enable device 10
尝试重新启动 systemd 的 systemd-logind 服务:
$ sudo systemctl restart systemd-logind