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/