当前位置: 首页 > ops >正文

ubuntu24.04安装CUDA和VLLM

前期说明

系统具体版本:Ubuntu24.04.2-LTS

在这里插入图片描述

🔧 Ubuntu 24.04 专用 CUDA 安装步骤

# 1. 添加官方 NVIDIA 仓库
distribution=$(. /etc/os-release;echo $ID$VERSION_ID | sed -e 's/\.//g')
echo "deb https://developer.download.nvidia.com/compute/cuda/repos/$distribution/x86_64 /" | sudo tee /etc/apt/sources.list.d/cuda.list# 2. 添加签名密钥
sudo apt-key adv --fetch-keys https://developer.download.nvidia.com/compute/cuda/repos/$distribution/x86_64/3bf863cc.pub# 3. 更新并安装 CUDA Toolkit
sudo apt update
sudo apt install -y cuda-toolkit-12-5  # 24.04 推荐使用 12.5 版本# 4. 设置环境变量
echo 'export PATH=/usr/local/cuda-12.5/bin:$PATH' | sudo tee -a /etc/profile.d/cuda.sh
echo 'export LD_LIBRARY_PATH=/usr/local/cuda-12.5/lib64:$LD_LIBRARY_PATH' | sudo tee -a /etc/profile.d/cuda.sh
source /etc/profile# 5. 验证安装
nvcc --version  # 应显示 CUDA 12.5

在这里插入图片描述

💡 如果仍遇到依赖问题,使用以下替代方案

# 1. 安装基础依赖
sudo apt install -y build-essential libtinfo6 libncurses5# 2. 创建符号链接解决兼容性问题
sudo ln -s /usr/lib/x86_64-linux-gnu/libtinfo.so.6 /usr/lib/x86_64-linux-gnu/libtinfo.so.5
sudo ln -s /usr/lib/x86_64-linux-gnu/libncurses.so.6 /usr/lib/x86_64-linux-gnu/libncurses.so.5# 3. 仅安装核心组件
sudo apt install -y --no-install-recommends \cuda-compiler-12-5 \cuda-cudart-dev-12-5 \cuda-libraries-dev-12-5 \cuda-nvml-dev-12-5

✅ 验证安装是否成功

# 测试 CUDA
python -c "import torch; print(torch.cuda.is_available()); print(torch.version.cuda)"# 测试 vLLM 基础功能
python -c "from vllm import LLM; print('vLLM loaded successfully')"

在这里插入图片描述
这样就安装成功了

⚠️ 针对 Ubuntu 24.04 的重要提示

  1. CUDA 版本选择

    • Ubuntu 24.04 官方支持 CUDA 12.5,不兼容CUDA12.4!
    • vLLM 完全兼容 CUDA 12.5
  2. Python 版本

    • Ubuntu 24.04 自带 Python 3.12
    • vLLM 目前建议使用 Python 3.10
    • 使用 Conda 创建独立 Python 3.10 环境
  3. 系统依赖

    # 安装必要系统库
    sudo apt install -y libcusparse-12-5 libcublas-12-5 libcusolver-12-5
    
  4. 如果仍遇到问题,考虑使用 Docker 方案:

    docker run --gpus all -it --rm nvcr.io/nvidia/pytorch:24.05-py3
    # 在容器内安装 vLLM
    pip install vllm
    
http://www.xdnf.cn/news/15843.html

相关文章:

  • #SVA语法滴水穿石# (014)关于链式蕴含的陷阱
  • 学习C++、QT---30(QT库中如何自定义控件(自定义按钮)讲解)
  • Python桌面版数独(二版)-增加4X4、6X6
  • 元宇宙经济的四个要素
  • python 字典中取值
  • SpringBoot的配置文件
  • python的pywebview库结合Flask和waitress开发桌面应用程序简介
  • 反欺诈业务 Elasticsearch 分页与导出问题分析及解决方案
  • 基于单片机的智能家居安防系统设计
  • Linux文件系统三要素:块划分、分区管理与inode结构解析
  • Linux: rsync+inotify实时同步及rsync+sersync实时同步
  • Claude Code 逆向工程分析,探索最新Agent设计
  • 【机器学习深度学习】量化与选择小模型的区别:如何理解两者的优势与局限?
  • Day1||Vue指令学习
  • PyTorch的基础概念和复杂模型的基本使用
  • Facebook 开源多季节性时间序列数据预测工具:Prophet 快速入门 Quick Start
  • macOs上交叉编译ffmpeg及安装ffmpeg工具
  • 测试中的bug
  • 基于深度学习的自然语言处理:构建情感分析模型
  • urllib.parse.urlencode 的使用详解
  • AI+预测3D新模型百十个定位预测+胆码预测+去和尾2025年7月20日第144弹
  • Uniapp 纯前端台球计分器开发指南:能否上架微信小程序 打包成APP?
  • 安全信息与事件管理(SIEM)系统架构设计
  • 【前端】懒加载(组件/路由/图片等)+预加载 汇总
  • AI绘画生成东汉末年赵云全身像的精细提示词
  • 四、多频技术与复杂场景处理
  • 基于卷积傅里叶分析网络 (CFAN)的心电图分类的统一时频方法
  • SpringBoot3集成MapstructPlus
  • GaussDB select into和insert into的用法
  • 基于智慧经营系统的学校住宿登记报表分析与应用探究-毕业论文—仙盟创梦IDE