Linux服务器安装cuda和cudnn实战教程
- IT业界
- 2025-09-15 23:12:01

一、查看系统配置 1. 查看系统
使用以下命令可以查看 Linux 的系统架构
cat /etc/issue会输出如下结果:
Debian GNU/Linux 10 \n \l可以看到系统的版本为 Debian10
2. 查询显卡型号命令行输入:
nvidia-smi输出内容如下,可以查看显卡驱动(Driver Version)的版本号为 535.104.12,支持的 CUDA 版本为 12.2 以下
(base) root@7v0ut9u0b2vdl-0:/home# nvidia-smi Fri Feb 14 09:47:08 2025 +---------------------------------------------------------------------------------------+ | NVIDIA-SMI 535.104.12 Driver Version: 535.104.12 CUDA Version: 12.2 | |-----------------------------------------+----------------------+----------------------+ | GPU Name Persistence-M | Bus-Id Disp.A | Volatile Uncorr. ECC | | Fan Temp Perf Pwr:Usage/Cap | Memory-Usage | GPU-Util Compute M. | | | | MIG M. | |=========================================+======================+======================| | 0 NVIDIA A800 80GB PCIe On | 00000000:36:00.0 Off | 0 | | N/A 31C P0 46W / 300W | 7MiB / 81920MiB | 0% Default | | | | Disabled | +-----------------------------------------+----------------------+----------------------+ +---------------------------------------------------------------------------------------+ | Processes: | | GPU GI CI PID Type Process name GPU Memory | | ID ID Usage | |=======================================================================================| | No running processes found | 二、CUDA 安装 1. 安装依赖包首先需要安装 Linux 环境缺少的依赖包文件
sudo apt-get update sudo apt-get install gcc g++ sudo apt install kmod sudo apt install libxml2 2. 下载CUDA访问 CUDA Toolkit Archive | NVIDIA Developer 官网,选择 CUDA12.2.0 版本,依次选择,Linux->x86_64->Debian->10->runfile (local)
安装CUDA的方法有好几种,例如deb法,在这里我们主要使用runfile方法来安装runtime CUDA
wget developer.download.nvidia /compute/cuda/12.2.0/local_installers/cuda_12.2.0_535.54.03_linux.run执行上述命令完成下载,如果出现 443,多执行几次。
3. CUDA 安装 sudo sh cuda_12.2.0_535.54.03_linux.run执行上述命令,键入accept,如果已经安装显卡驱动,则取消掉“Driver”这个选项(在Driver位置键入 enter取消),光标移至Install,按ENTER键完成安装。
[!error] Driver CUDA冲突 问题描述
# sudo cat /var/log/cuda-installer.log [INFO]: Driver not installed. [INFO]: Checking compiler version... [INFO]: gcc location: /usr/bin/gcc [INFO]: gcc version: gcc version 8.3.0 (Debian 8.3.0-6) [INFO]: Initializing menu [INFO]: nvidia-fs.setKOVersion(2.16.1) [INFO]: Setup complete [INFO]: Installing: Driver [INFO]: Installing: 535.54.03 [INFO]: Executing NVIDIA-Linux-x86_64-535.54.03.run --ui=none --no-questions --accept-license --disable-nouveau --no-cc-version-check --install-libglvnd 2>&1 [INFO]: Finished with code: 256 [ERROR]: Install of driver component failed. Consult the driver log at /var/log/nvidia-installer.log for more details. [ERROR]: Install of 535.54.03 failed, quitting解决方案 此时打开一个新的终端窗口,输入
nvidia-smi如果会显示的话,说明你的电脑已经安装过了driver CUDA,需要在安装选择界面里面取消掉“Driver”这个选项,光标移至Install,按ENTER键完成安装。
到这里,你的电脑里就安装了两个CUDA:第一个 driver CUDA 就是当你输入指令nvidia-smi后显示的信息。第二个CUDA 就是我们通过runfile方法下载的runtime CUDA 12.2.0,此时下载成功的CUDA 11.0的位置在/usr/local/cuda-12.2目录下(注意:此时只是说你下载了CUDA 12.2,但是并不能说你的深度学习实验就可以用它来加速,因此需要配置环境变量,这也是最后一步)
4. 配置CUDA环境变量终端输入
vim ~/.bashrc键入 “i” 进入 INSERT模式,可以进行回车操作,复制以下变量,键入“ESC”退出INSERT模式。
#在安装成功后的显示中可以看到cuda的安装位置 export CUDA_HOME=/usr/local/cuda-12.2 export PATH=$CUDA_HOME/bin:$PATH export LD_LIBRARY_PATH=$CUDA_HOME/lib64:$LD_LIBRARY_PATH按 ESC 退出写入,最后键入:wq即可保存并退出。
终端输入以下命令,使环境变量生效
source ~/.bashrc 5. 验证安装在终端输入:
nvcc -V即可显示如下: (如果未显示cuda 12.2,则说明刚才的指令source ~/.bashrc没有立即生效,此时重启电脑,再输入nvcc -V ,若显示如下则成功!!!!)
(base) root@b8dut2v0rsevs-0:/home# nvcc -V nvcc: NVIDIA (R) Cuda compiler driver Copyright (c) 2005-2023 NVIDIA Corporation Built on Tue_Jun_13_19:16:58_PDT_2023 Cuda compilation tools, release 12.2, V12.2.91 Build cuda_12.2.r12.2/compiler.32965470_0 三、cuDNN 安装 1. cuDNN 下载进入 cuDNN 9.7.1 Downloads | NVIDIA Developer 官网,依次选择 Linux->x86_64->Tarball->12->deb (network)
wget developer.download.nvidia /compute/cudnn/redist/cudnn/linux-x86_64/cudnn-linux-x86_64-9.7.1.26_cuda12-archive.tar.xz 2. cuDNN 安装下载 cuDNN 的压缩包(通常是 .tgz 或 .zip 文件),解压并将文件复制到 CUDA 安装目录中:
tar -xvf cudnn-linux-x86_64-9.7.1.26_cuda12-archive.tar.xz sudo cp cudnn-linux-x86_64-9.7.1.26_cuda12-archive/include/cudnn*.h /usr/local/cuda-12.2/include sudo cp cudnn-linux-x86_64-9.7.1.26_cuda12-archive/lib/libcudnn* /usr/local/cuda-12.2/lib64 sudo chmod a+r /usr/local/cuda-12.2/include/cudnn*.h /usr/local/cuda-12.2/lib64/libcudnn*更新系统动态链接器的缓存,确保系统能够找到新的库文件:
sudo ldconfig /usr/local/cuda-12.2/lib64[!warning] cuDNN 的多个文件(共享库)不是符号链接 问题描述
(base) root@9i80kippsrhue-0:/usr/local/cuda-12.2/lib64# sudo ldconfig /usr/local/cuda-12.2/lib64 ldconfig: /usr/local/cuda-12.2/lib64/libcudnn_ops.so.9 is not a symbolic link ldconfig: /usr/local/cuda-12.2/lib64/libcudnn_heuristic.so.9 is not a symbolic link ldconfig: /usr/local/cuda-12.2/lib64/libcudnn_graph.so.9 is not a symbolic link ldconfig: /usr/local/cuda-12.2/lib64/libcudnn_engines_runtime_compiled.so.9 is not a symbolic link ldconfig: /usr/local/cuda-12.2/lib64/libcudnn_engines_precompiled.so.9 is not a symbolic link ldconfig: /usr/local/cuda-12.2/lib64/libcudnn_cnn.so.9 is not a symbolic link ldconfig: /usr/local/cuda-12.2/lib64/libcudnn_adv.so.9 is not a symbolic link ldconfig: /usr/local/cuda-12.2/lib64/libcudnn.so.9 is not a symbolic link警告表明 cuDNN 的多个文件(共享库)不是符号链接。如果 cuDNN 安装未正确设置,或者在安装过程中未创建预期的符号链接,则可能会发生这种情况。
解决方案 手动为 cuDNN 库创建符号链接,确保它们指向文件的最新版本,因为安装的是 cuDNN 9.7.1 ,因此可以将未链接的库通过下述进行链接。
sudo ln -sf libcudnn_ops.so.9.7.1 libcudnn_ops.so.9 sudo ln -sf libcudnn_heuristic.so.9.7.1 libcudnn_heuristic.so.9 sudo ln -sf libcudnn_graph.so.9.7.1 libcudnn_graph.so.9 sudo ln -sf libcudnn_engines_runtime_compiled.so.9.7.1 libcudnn_engines_runtime_compiled.so.9 sudo ln -sf libcudnn_engines_precompiled.so.9.7.1 libcudnn_engines_precompiled.so.9 sudo ln -sf libcudnn_cnn.so.9.7.1 libcudnn_cnn.so.9 sudo ln -sf libcudnn_adv.so.9.7.1 libcudnn_adv.so.9 sudo ln -sf libcudnn.so.9.7.1 libcudnn.so.9再次更新系统动态链接器的缓存,发现不再警告
sudo ldconfig /usr/local/cuda-12.2/lib64 3. 验证安装检查文件是否正确复制:
ls /usr/local/cuda/include/cudnn*.h ls /usr/local/cuda/lib64/libcudnn*运行以下命令检查 cuDNN 版本:
cat /usr/local/cuda-12.2/include/cudnn_version.h | grep CUDNN_MAJOR -A 2您应该看到类似以下的输出:
(base) root@d120lbmapqp7l-0:/home/deepseek# cat /usr/local/cuda-12.2/include/cudnn_version.h | grep CUDNN_MAJOR -A 2 #define CUDNN_MAJOR 9 #define CUDNN_MINOR 7 #define CUDNN_PATCHLEVEL 1 -- #define CUDNN_VERSION (CUDNN_MAJOR * 10000 + CUDNN_MINOR * 100 + CUDNN_PATCHLEVEL) /* cannot use constexpr here since this is a C-only file */ 参考文章cuda和cudnn的安装教程(全网最详细保姆级教程)_cudnn安装-CSDN博客 Ubuntu18.04安装CUDA11.0 Installation failed. See log at /var/log/cuda-installer.log for details. install of driver component failed.-CSDN博客 超详细介绍Ubuntu系统安装CUDA和cuDNN【一站式服务!!!】_ubuntu cuda-CSDN博客
Linux服务器安装cuda和cudnn实战教程由讯客互联IT业界栏目发布,感谢您对讯客互联的认可,以及对我们原创作品以及文章的青睐,非常欢迎各位朋友分享到个人网站或者朋友圈,但转载请说明文章出处“Linux服务器安装cuda和cudnn实战教程”
下一篇
C++格式讲解