Centos7 安装独立显卡驱动



安装基础依赖环境

Yum install gcc kernel-delve -y

 

注意事项,保证内核版本和源码版本一样,否则,安装报错误6:

ls /boot | grep vmlinu
  • 查看源码包版本
rpm -aq | grep kernel-devel

从上面的输出中可以看出内核版本号和内核源码版本。为了解决这个错误,需要从FC官方网站上下载与内核版本对应的源码包进行安装。
可以在以下网站下载并安装:
http://rpmfind.net/linux/rpm2html/search.php?query=kernel-devel

 

源码安装

1 在英伟达官网下载相应驱动

搜索出相应的驱动后,不要直接点,而是右健,Save Link as...

否则,会出现下载半天没动静的情况。

存放的路径上最好不要有中文。

我存放的路径是 ~/Downloads/NVIDIA-Linux-x86_64-346.47.run

 

2 屏蔽默认带有的nouveau

使用su命令切换到root用户下: su root

打开/lib/modprobe.d/dist-blacklist.conf

 

将nvidiafb注释掉。

#blacklist nvidiafb

 

然后添加以下语句:

blacklist nouveau

options nouveau modeset=0

3 重建initramfs image步骤

mv /boot/initramfs-$(uname -r).img /boot/initramfs-$(uname -r).img.bak

dracut /boot/initramfs-$(uname -r).img $(uname -r)

4 修改运行级别为文本模式

systemctl set-default multi-user.target

5 重新启动, 使用root用户登陆

reboot

 

6 查看nouveau是否已经禁用

ls mod | grep nouveau

如果没有显示相关的内容,说明已禁用。

 

7 进入下载的驱动所在目录

chmod +x NVIDIA-Linux-x86_64-346.47.run

./NVIDIA-Linux-x86_64-346.47.run

安装过程中,选择accept

如果提示要修改xorg.conf,选择yes

8 修改运行级别回图形模式

systemctl set-default graphical.target

9 重新启动,OK

在Applications--Other可以看见NVIDIA X Server Settings菜单。 

问题:

错误1:

ERROR: The Nouveau kernel driver is currently in use by your system.  This driver is incompatible with the NVIDIA driver, and must be disabled before proceeding.  Please consult the NVIDIA driver README and your Linux distribution's documentation for details on how         to correctly disable the Nouveau kernel driver.

解释:如果没有执行屏蔽nouveau操作,报以上错误。

 

错误2:

unable to find the development too 'cc' in you path; please make sure that you have the package 'gcc

解决办法:

yum install gcc

错误3:

错误4:

ERROR: Unable to find the kernel source tree for the currently running kernel.  Please make sure you have installed the kernel source files for your

 kernel and that they are properly configured; on Red Hat Linux systems, for example, be sure you have the  'kernel-source' or 'kernel-devel' RPM installed.  If you know the correct kernel source files are installed, you may specify the kernel source path with the '--kernel-source-path' command line option.

解决办法:

yum install kernel-delve

错误5:

ERROR: Unable to find the kernel source tree for the currently running kernel.  Please make sure you have installed the kernel source files for your kernel and that they are properly configured; on Red Hat Linux systems, for example, be sure you have the         'kernel-source' or 'kernel-devel' RPM installed.  If you know the correct kernel source files are installed, you may specify the kernel source path with the '--kernel-source-path' command line option.

 解决方法:

./NVIDIA-Linux-x86_64-390.67.run --kernel-source-path=/usr/src/kernels/3.10.0-862.3.2.el7.x86_64/

错误6:

ERROR: Unable to load the kernel module 'nvidia.ko'.  This happens most frequently when this kernel module was built against the wrong or improperly configured kernel sources, with a version of gcc that differs from the one used to build the target kernel, or if another driver, such as nouveau, is present and prevents the NVIDIA kernel module from obtaining ownership of the NVIDIA GPU(s), or no NVIDIA GPU installed in this system is supported by this NVIDIA Linux graphics driver release.

         Please see the log entries 'Kernel module load error' and 'Kernel messages' at the end of the file '/var/log/nvidia-installer.log' for more information.

解决办法:

  • 可以通过以下方式查看内核版本和源码包版本:
ls /boot | grep vmlinuz
  • 如果上面的命令输出中有多个内核,则按grub.conf中指定的文件为准。
rpm -aq | grep kernel-devel
kernel-devel-2.6.35.13-92.fc14.i686
  • 从上面的输出中可以看出内核版本号和内核源码版本。为了解决这个错误,需要从FC官方网站上下载与内核版本对应的源码包进行安装。

         可以在以下网站下载并安装:
        http://rpmfind.net/linux/rpm2html/search.php?query=kernel-devel

备注:执行更新内核操作好需要重新执行屏蔽nouveau,及重建initramfs image步骤。

 

警告:

 

WARNING: nvidia-installer was forced to guess the X library path '/usr/lib64' and X module path '/usr/lib64/xorg/modules'; these paths were not queryable from the system.  If X fails to find the NVIDIA X driver module, please install the `pkg-config` utility and the

           X.Org SDK/development package for your distribution and reinstall the driver.

字符模式安装警告信息,可忽略。

安装cuda

参考:

错误:

Installing the CUDA Toolkit in /usr/local/cuda-6.5 ...
Missing recommended library: libGLU.so
Missing recommended library: libXmu.so

解决:安装第三方软件

yum install freeglut-devel libX11-devel libXi-devel libXmu-devel  \

make mesa-libGLU-devel

测试CUDA

[root@fengyun6 ~]# find / -name deviceQuery

/root/NVIDIA_CUDA-9.0_Samples/1_Utilities/deviceQuery

/usr/local/cuda-9.0/extras/demo_suite/deviceQuery

/usr/local/cuda-9.0/samples/1_Utilities/deviceQuery

若出现以下信息,则表示安装成功

[root@fengyun6 ~]# /usr/local/cuda-9.0/extras/demo_suite/deviceQuery

/usr/local/cuda-9.0/extras/demo_suite/deviceQuery Starting...

 

 CUDA Device Query (Runtime API) version (CUDART static linking)

 

Detected 1 CUDA Capable device(s)

 

Device 0: "GeForce GTX 1080 Ti"

  CUDA Driver Version / Runtime Version          9.1 / 9.0

  CUDA Capability Major/Minor version number:    6.1

  Total amount of global memory:                 11178 MBytes (11721113600 bytes)

  (28) Multiprocessors, (128) CUDA Cores/MP:     3584 CUDA Cores

  GPU Max Clock rate:                            1645 MHz (1.64 GHz)

  Memory Clock rate:                             5505 Mhz

  Memory Bus Width:                              352-bit

  L2 Cache Size:                                 2883584 bytes

  Maximum Texture Dimension Size (x,y,z)         1D=(131072), 2D=(131072, 65536), 3D=(16384, 16384, 16384)

  Maximum Layered 1D Texture Size, (num) layers  1D=(32768), 2048 layers

  Maximum Layered 2D Texture Size, (num) layers  2D=(32768, 32768), 2048 layers

  Total amount of constant memory:               65536 bytes

  Total amount of shared memory per block:       49152 bytes

  Total number of registers available per block: 65536

  Warp size:                                     32

  Maximum number of threads per multiprocessor:  2048

  Maximum number of threads per block:           1024

  Max dimension size of a thread block (x,y,z): (1024, 1024, 64)

  Max dimension size of a grid size    (x,y,z): (2147483647, 65535, 65535)

  Maximum memory pitch:                          2147483647 bytes

  Texture alignment:                             512 bytes

  Concurrent copy and kernel execution:          Yes with 2 copy engine(s)

  Run time limit on kernels:                     No

  Integrated GPU sharing Host Memory:            No

  Support host page-locked memory mapping:       Yes

  Alignment requirement for Surfaces:            Yes

  Device has ECC support:                        Disabled

  Device supports Unified Addressing (UVA):      Yes

  Device PCI Domain ID / Bus ID / location ID:   0 / 1 / 0

  Compute Mode:

     < Default (multiple host threads can use ::cudaSetDevice() with device simultaneously) >

 

deviceQuery, CUDA Driver = CUDART, CUDA Driver Version = 9.1, CUDA Runtime Version = 9.0, NumDevs = 1, Device0 = GeForce GT

X 1080 TiResult = PASS

安装cudnn


下载:https://developer.nvidia.com/rdp/cudnn-archive

安装cudnn

tar -xvf cudnn-8.0-linux-x64-v6.0.tgz -C /usr/local/