在ECS服务器上安装GPU驱动进行机器学习训练,以下是详细操作步骤:
一、准备工作
1. 确认GPU型号
# 查看GPU信息(安装驱动前可能只能看到型号)
lspci | grep -i nvidia
2. 系统要求
- Ubuntu 18.04/20.04/22.04(推荐)
- CentOS 7/8 或 Rocky Linux
- 确保有sudo权限
二、安装NVIDIA驱动
方法1:自动安装(推荐)
# Ubuntu/Debian
sudo apt update
sudo apt install ubuntu-drivers-common
sudo ubuntu-drivers autoinstall
# 或使用官方驱动
sudo apt install nvidia-driver-535 # 根据CUDA要求选择版本
方法2:手动安装
# 1. 添加官方PPA(Ubuntu)
sudo add-apt-repository ppa:graphics-drivers/ppa
sudo apt update
# 2. 查看可用驱动版本
ubuntu-drivers devices
# 3. 安装推荐版本
sudo apt install nvidia-driver-535
# 4. 重启
sudo reboot
方法3:使用NVIDIA官方.run文件
# 1. 下载驱动
wget https://us.download.nvidia.com/tesla/535.104.05/NVIDIA-Linux-x86_64-535.104.05.run
# 2. 禁用nouveau驱动
sudo bash -c "echo blacklist nouveau > /etc/modprobe.d/blacklist-nvidia-nouveau.conf"
sudo bash -c "echo options nouveau modeset=0 >> /etc/modprobe.d/blacklist-nvidia-nouveau.conf"
sudo update-initramfs -u
# 3. 安装依赖
sudo apt install build-essential libglvnd-dev pkg-config
# 4. 运行安装程序
sudo chmod +x NVIDIA-Linux-x86_64-*.run
sudo ./NVIDIA-Linux-x86_64-*.run
三、安装CUDA Toolkit
方法1:使用官方网络安装
# 下载并安装CUDA
wget https://developer.download.nvidia.com/compute/cuda/12.2.2/local_installers/cuda_12.2.2_535.104.05_linux.run
sudo sh cuda_12.2.2_535.104.05_linux.run
方法2:使用APT仓库(Ubuntu)
# 1. 添加CUDA仓库
wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/cuda-keyring_1.1-1_all.deb
sudo dpkg -i cuda-keyring_1.1-1_all.deb
sudo apt update
# 2. 安装CUDA
sudo apt install cuda-toolkit-12-2
四、安装cuDNN
# 1. 下载cuDNN(需要NVIDIA开发者账号)
# 从官网下载:https://developer.nvidia.com/cudnn
# 2. 安装
sudo dpkg -i cudnn-local-repo-ubuntu2204-8.9.5.30_1.0-1_amd64.deb
sudo cp /var/cudnn-local-repo-*/cudnn-local-*-keyring.gpg /usr/share/keyrings/
sudo apt update
sudo apt install libcudnn8 libcudnn8-dev
五、配置环境变量
# 添加到 ~/.bashrc 或 ~/.zshrc
export PATH=/usr/local/cuda/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH
export CUDA_HOME=/usr/local/cuda
# 使配置生效
source ~/.bashrc
六、验证安装
# 1. 验证驱动
nvidia-smi
# 2. 验证CUDA
nvcc --version
# 3. 运行CUDA测试
cd /usr/local/cuda/samples/1_Utilities/deviceQuery
sudo make
./deviceQuery
七、安装深度学习框架
PyTorch
# 使用pip安装
pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118
# 或使用conda
conda install pytorch torchvision torchaudio pytorch-cuda=11.8 -c pytorch -c nvidia
TensorFlow
pip install tensorflow[and-cuda]
# 或
pip install tensorflow-gpu
八、ECS特定注意事项
1. 云厂商GPU实例
- 阿里云:部分实例预装驱动,可通过控制台选择
- 腾讯云:提供GPU驱动和CUDA的镜像
- AWS:使用Deep Learning AMI(预装环境)
2. 使用云厂商提供的镜像
# 很多云厂商提供预装环境的镜像
# 创建实例时选择:
# - GPU提速计算型实例
# - 预装CUDA的公共镜像
3. 磁盘空间
# 确保有足够空间(建议50GB+)
df -h
九、常见问题解决
1. 驱动安装失败
# 清理旧驱动
sudo apt purge nvidia-*
sudo apt autoremove
# 重新安装
sudo apt install nvidia-driver-535
2. CUDA版本不匹配
# 查看CUDA与驱动兼容性
# https://docs.nvidia.com/cuda/cuda-toolkit-release-notes/index.html
3. 权限问题
# 将用户添加到video组
sudo usermod -a -G video $USER
十、最佳实践建议
-
使用容器化方案(推荐):
# 使用NVIDIA Docker docker run --gpus all -it nvidia/cuda:12.2.2-base-ubuntu22.04 -
创建系统快照:安装前创建系统盘快照
-
使用配置脚本:
#!/bin/bash # 自动化安装脚本 wget https://raw.githubusercontent.com/NVIDIA/nvidia-docker/master/ubuntu20.04/nvidia-docker.list # ... 添加自动化安装步骤 -
监控GPU使用:
# 实时监控 watch -n 1 nvidia-smi
使用nvtop
sudo apt install nvtop
按照以上步骤,你应该能在ECS服务器上成功搭建GPU机器学习训练环境。建议从云厂商提供的预装镜像开始,可以节省大量配置时间。
CLOUD技术笔记