对于Ubuntu桌面版系统来说,NVIDIA显卡驱动安装的大多可以通过桌面完成。Ubuntu服务器系统由于没有GUI界面,安装显卡驱动则必须通过命令行完成,安装步骤与服务器版有些不同,且难度也略大。
Ubuntu服务器版可以通过run文件方式安装驱动,也可以通过ppa源+apt-get命令安装。本文将这对两种进行简单介绍。
系统版本:Ubuntu16.04-server 显卡:NVIDIA GTX 1080Ti
http://www.geforce.cn/drivers
选择合适的驱动程序:我选择的是NVIDIA-Linux-x86_64-384.130.run。该步骤需要使用浏览器完成,因此需要使用一台带有图形界面的电脑完成该操作并将run文件拷贝到U盘中,为接下来的挂载到服务器上安装驱动做准备。
Ubuntu系统集成的显卡驱动程序是nouveau,它是第三方为NVIDIA开发的开源驱动,我们需要先将其屏蔽才能安装NVIDIA官方驱动。 如果我们直接安装驱动的话,往往会报错:ERROR: The Nouveau kernel driver is currently in use by your system. This driver is incompatible with the NVIDIA driver。
将驱动添加到黑名单blacklist.conf中,但是由于该文件的属性不允许修改。所以需要先修改文件属性。
查看属性:
sudo ls -lh /etc/modprobe.d/blacklist.conf
修改属性:
sudo chmod 666 /etc/modprobe.d/blacklist.conf
用vim编辑器打开:
sudo vim /etc/modprobe.d/blacklist.conf
在该文件后添加以下几行:
blacklist vga16fb
blacklist nouveau
blacklist rivafb
blacklist rivatv
blacklist nvidiafb
并执行:
sudo update-initramfs -u
重启后执行:
lsmod | grep nouveau
没有输出即为屏蔽好了。
对于桌面版系统而言,需要先用sudo service lightdm stop 关闭当前图形界面。
对于服务器版系统,则需要将含有run文件的U盘手动挂载到/mnt/usb目录下,教程如下:点击打开链接。然后通过 cd /mnt/usb命令进入该目录里。
若之前安装过显卡驱动,需要先卸载掉。建议装驱动前都执行以下该指令,有益无害。
sudo apt-get --purge remove nvidia-*
该指令能卸载驱动并不保留配置文件。
安装指令如下:
sudo chmod a+x NVIDIA-Linux-x86_64-384.130.run
sudo ./NVIDIA-Linux-x86_64-384.130.run -no-x-check -no-nouveau-check -no-opengl-files
在上述指令中,–no-opengl-files表示只安装驱动文件,不安装OpenGL文件,这个参数最重要。–no-x-check 安装驱动时不检查X服务。–no-nouveau-check 安装驱动时不检查nouveau(注:这个选项和1.2禁止集成的nouveau驱动组成双保险,其实一项操作就可以了)。
Ubuntu服务器版由于在安装系统时只装了OpenSSH server和standard system utilities,一些必备的development tool并没有安装,需要接下来手动安装。在安装驱动程序的过程中,会因为缺少gcc、g++、make等development tool而报错导致无法完成驱动程序安装(ERROR:Ubable to find the development tool 'make' in your path...),不用担心,手动安装这些开发包后再次执行安装指令即可。另外,安装过程中出现的弹框根据默认选项选择即可。手动安装development tool指令为:
sudo apt-get install gcc
sudo apt-get install g++
sudo apt-get install make
对于桌面版系统而言,安装完后使用sudo service lightdm start 回到图形界面。
可以通过nvidia-smi命令查看GPU和驱动程序信息,若出现以下结果,则表明驱动程序安装成功。
可以使用cat /proc/driver/nvidia/version命令查看驱动程序版本
另外,对于桌面版系统而言,可以使用nvidia-settings命令设置一些参数,执行该命令后以弹窗的形式出现。而服务器版系统由于没有桌面环境,执行nvidia-settings命令会报错(ERROR: A problem occured when loading the GUI library. Please check your installation and library path. You may need to specify this library when calling nvidia-settings. Please run `nvidia-settings --help` for usage information.)
PPA(Personal Package Archives)也就是个人软件包集很多软件包由于各种原因吧,不能进入官方的Ubuntu软件仓库。为了方便Ubuntu用户使用,launchpad.net提供了ppa,允许用户建立自己的软件仓库,自由的上传软件。PPA也被用来对一些打算进入Ubuntu官方仓库的软件,或者某些软件的新版本进行测试。Launchpad是Ubuntu母公司canonical有限公司所架设的网站,是一个提供维护、支援或联络Ubuntu开发者的平台。
通过PPA的方式安装更加直接,只需在命令行中输入以下命令即可:
sudo add-apt-repository ppa:graphics-drivers/ppa //安装指定PPA源,执行该指令后会出现大段内容介绍,按[Enter]键执行即可
sudo apt-get update //更新源
sudo apt-get install nvidia-384 //驱动版本不同,对应不同的数字 网速决定安装速度
sudo apt-get install mesa-common-dev //CUDA所需要的库
sudo apt-get install freeglut3-de
安装过程可能需要比较长的时间。若没有出现错误,则重启后用nvidia-smi指令查看GPU信息即可;若出现错误需要根据具体情况在网上找解决方案。我的服务器在安装时出现了错误:
Processing trigger: for initramfs-tools
update-initramfs: Generating /boot/initrd.img-4.4.0-116-generic
W: Processing trigger for ureadhead
花了三个小时在网上找教程也没有解决该问题...网上说是/boot分区空间不足,然而并不存在该问题。最终选择了run文件方式安装好驱动。
参考教程:
https://blog.csdn.net/u012759136/article/details/53355781
https://blog.csdn.net/tianrolin/article/details/52830422