马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
×
Ubuntu Server 20.04 上装 NVIDIA 驱动和 CUDA,最大的坑不是下载慢,而是顺序:驱动没装好就去装 CUDA、或者驱动装了但 nouveau 没禁掉,各种 nVIDIA-SMI failed。这里按 550 驱动 + CUDA 12.4 的实际流程走一遍,顺带把 ssh 掉线那个经典问题一起解决。
第一章:安装 NVIDIA 驱动
1.1 先看有没有 gcc
gcc -v
没有的话一次性把开发包齐了:
sudo apt-get install build-essential
1.2 禁用 nouveau 开源驱动
编辑 /etc/modprobe.d/blacklist-nouveau.conf,写入:
blacklist nouveau
blacklist lbm-nouveau
options nouveau modeset=0
alias nouveau off
alias lbm-nouveau off
再单独关一次 KMS:
echo "options nouveau modeset=0" | sudo tee -a /etc/modprobe.d/nouveau-kms.conf
sudo update-initramfs -u
sudo reboot
重启后执行 lsmod | grep nouveau,如果没有任何输出,说明禁用成功;还有输出就回退到 1.2 重做。
1.3 装驱动
先看系统推荐哪个版本:
ubuntu-drivers devices
输出里找到 recommend 标注的驱动包。这里因为用的是 Ubuntu Server,最终选了 nvidia-driver-470-server(推荐项里有 nvidia-driver-550-server-open,桌面卡另当别论):
sudo apt install nvidia-driver-550-server-open
1.4 验证驱动
nvidia-smi
能刷出 GPU 监控 表就是装好了。附上当时的实际输出作为参考:
Thu Apr 4 21:30:29 2024
+-----------------------------------------------------------------------------------------+
| NVIDIA-SMI 550.54.14 Driver Version: 550.54.14 CUDA Version: 12.4 |
|-----------------------------------------+------------------------+----------------------+
| GPU Name Persistence-M | Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
|=========================================+========================+======================|
| 0 NVIDIA GeForce RTX 3060 Off | 00000000:01:00.0 On | N/A |
| 0% 33C P8 89W / 170W | 57MiB / 12288MiB | 0% Default |
+-----------------------------------------------------------------------------------------+
| Processes: |
| GPU GI PI ID Type Process name GPU Memory |
|=================================================================================|
| 0 N/A N/A 951 G /usr/lib/xorg/Xorg 36MiB |
| 0 N/A N/A 1186 G /usr/bin/gnome-shell 6MiB |
+-----------------------------------------------------------------------------------------+
从这张表里能读到两个信息:驱动版本 550.54.14,以及它配套的 CUDA 版本是 12.4——下面装 toolkit 就按这个版本走。
1.5 nvidia-smi 报 failed 怎么办
如果 nvidia-smi 抛出:
NVIDIA-SMI has failed because it couldn't communicate with the NVIDIA driver.
Make sure that the latest NVIDIA driver is installed and running.
先 ll /usr/src/ 看驱动源码包是不是确实装上了;装了的话,多半是还没重启,reboot 一次再试。
第二章:安装 CUDA
到 NVIDIA 官方的 CUDA Toolkit Archive 页面选对应版本,这里用 12.4,采用 runfile 形式:
sudo wget https://developer.download.nvidia.com/compute/cuda/12.4.0/local_installers/cuda_12.4.0_550.54.14_linux.run
sudo sh cuda_12.4.0_550.54.14_linux.run
关键:runfile 安装时务必跳过驱动
当安装器提示"已经检测到驱动已安装"时,直接选 continue。在选择安装内容的步骤里,一定要把 Driver 前面的 x 取消掉——驱动我们上一章已经装好了,这里再装一遍就是灾难。
装完会看到一段总结,大意是:Driver: Not Selected(跳过了)、Toolkit 装到了 /usr/local/cuda-12.4/,并提示要把 /usr/local/cuda-12.4/bin 加进 PATH、把 /usr/local/cuda-12.4/lib64 加进 LD_LIBRARY_PATH(或者写进 /etc/ld.so.conf 再跑 ldconfig)。最后那句 *** WARNING: Incomplete installation! ... A driver of version at least 550.00 is required for CUDA 12.4 属于正常提示,因为刚才确实没装驱动。
export PATH=/usr/local/cuda-12.4/bin PATH
export LD_LIBRARY_PATH=/usr/local/cuda-12.4/lib64 LD_LIBRARY_PATH
export CUDA_HOME=/usr/local/cuda
nvcc -V
能打印出编译器信息就成功了:
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2024 NVIDIA Corporation
Built on Tue_Feb_27_16:19:38_PST_2024
Cuda compilation tools, release 12.4, V12.4.99
Build cuda_12.4.r12.4/compiler.33961263_0
nvcc: command not found 怎么办
如果提示 Command 'nvcc' not found, but can be installed with: sudo apt install nvidia-cuda-toolkit,说明环境变量没落盘。按三步走:
- 进 CUDA 目录确认 nvcc 在不在:
cd /usr/local/cuda/bin,ls 看是否有 nvcc。
- 在,就把变量写进用户配置:
vim ~/.bashrc,末尾追加:
export PATH=/usr/local/cuda-12.4/bin PATH
export LD_LIBRARY_PATH=/usr/local/cuda-12.4/lib64 LD_LIBRARY_PATH
export CUDA_HOME=/usr/local/cuda
- 更新配置:
source ~/.bashrc,再跑 nvcc -V 即可。
顺带解决的 ssh 掉线问题
装完驱动重启后,有些机器会出现"ssh 连一段时间就断"的情况,常见诱因是 nouveau 的 KMS 模式和 Xorg 抢设备。把 nouveau 的 modeset 关掉(1.2 那步)之后,这类掉线基本就消失了。
排错顺序总结
- lsmod 里还有 nouveau → 没禁干净,回 1.2 重做并 update-initramfs。
- nvidia-smi failed 但 /usr/src 有驱动 → 重启一次。
- nvcc not found → 变量没写进 .bashrc,source 一下。
- CUDA 版本和驱动版本不匹配 → 跟着 nvidia-smi 显示的版本号选 toolkit,别自己拍脑袋。
qidao123.com企服评测-应用市场 编辑提示 |