1. 概述
在本教程中,我们将深入了解如何通过 .run 文件在Linux上安装最新的NVIDIA驱动程序。这种方法可以让我们获取到最新的驱动程序,可能包含bug修复、性能提升和对最新游戏及软件的支持。
本文以Ubuntu为例,但同样的方法也适用于其他Linux发行版。
2. 删除已安装的NVIDIA驱动程序
首先,我们需要确保系统中没有已经安装的NVIDIA驱动程序,以便能够顺利安装最新的驱动程序。
我们可以使用 apt purge 命令删除任何现有的NVIDIA包(或驱动程序)及其配置文件:
$ sudo apt purge nvidia*
然后,使用 apt autoremove 命令删除与驱动程序相关的未使用的依赖项:
$ sudo apt autoremove
现在,所有NVIDIA驱动程序已经从系统中完全删除,我们可以继续安装新的驱动程序。
3. 下载 .run 文件
要下载最新的 .run 文件,可访问NVIDIA官方驱动下载页面。
可以通过 wget 命令进行下载:
$ wget https://download.nvidia.com/XFree86/Linux-x86_64/550.100/NVIDIA-Linux-x86_64-550.100.run
下载完成后,我们切换到 .run 文件所在的目录(例如,本例中是 /usr/nvidia):
$ cd /usr/nvidia
有一个类似 NVIDIA-Linux-x86_64-550.100.run 的文件,你的版本可能比我更新。
不过,我们暂时不执行它,因为还需要完成一些前置步骤。
4. 安装前置依赖
在安装驱动程序包之前,我们需要安装NVIDIA驱动程序正常运行所需的依赖项:
$ sudo apt install build-essential gcc-multilib dkms
如果使用的是Fedora,需要的依赖项是 epel-release、dkms 和 libstdc++.i686:
$ sudo yum install epel-release dkms libstdc++.i686
对于CentOS,我们需要安装 dkms 和 libstdc++.i686:
$ sudo dnf install dkms libstdc++.i686
Let’s proceed with some more pre-installation steps.
5. 禁用Nouveau驱动程序
Nouveau驱动程序是Linux内核默认包含的,为NVIDIA显卡提供软件驱动。但是,如果该驱动程序处于激活状态,它的内核模块就无法卸载,从而导致NVIDIA内核模块无法加载。因此,我们可能需要禁用Nouveau驱动程序。
为此,我们可以进入 /etc/modprobe.d 目录,创建一个名为 blacklist-nouveau.conf 的文件,并在其中添加以下内容:
$ cd /etc/modprobe.d
$ sudo touch blacklist-nouveau.conf
$ sudo nano blacklist-nouveau.conf
blacklist nouveau
options nouveau modeset=0
编辑完成后,保存并关闭文件。然后,重启系统生效。
6. 停止显示管理器
显示管理器负责管理操作系统的图形用户界面(GUI)。每个发行版都有默认的显示管理器。
在安装显卡驱动程序时,最好先停止系统默认的显示管理器,然后再执行 .run 文件,以确保安装过程顺利进行。
在Ubuntu中,默认的显示管理器是 lightdm,我们可以使用 systemctl 命令停止它:
$ sudo systemctl stop lightdm
在Fedora中,默认显示管理器是 gdm(GNOME显示管理器):
$ sudo systemctl stop gdm
在CentOS中,我们需要停止 kdm(KDE显示管理器):
$ sudo systemctl stop kdm
完成后,我们进入最后一步。
7. 正式安装 NVIDIA 驱动
现在,我们可以执行 .run 文件来安装最新的NVIDIA驱动程序。
首先,给文件赋予可执行权限:
$ chmod +x NVIDIA-Linux-x86_64-550.100.run
然后执行命令:
$ sh NVIDIA-Linux-x86_64-550.100.run
按下回车键后,安装程序将启动并在新窗口中开始安装过程。在此过程中,我们需要回答几个提示以继续进行安装。
首先,安装程序会询问是否将内核模块源注册到DKMS(动态内核模块支持)。DKMS是一个帮助构建和安装外部Linux内核模块的框架。
由于这样做可以使DKMS在安装不同内核后自动构建新模块,我们按回车键同意:
Would you like to register the kernel module sources with DKMS?
接着,安装程序会询问是否要安装NVIDIA的32位兼容库。回车继续:
Install NVIDIA's 32-bit compatibility libraries?
然后完成。
8. 总结
在本文中,我们详细介绍了如何使用 .run 文件在Linux系统上安装最新的NVIDIA驱动程序的步骤。