目录:
一. 前言
二. 系统环境
三. 安装WSL2 Ubuntu
四. 安装Nvidia驱动
五. 安装CUDA Toolkit
六. 验证安装
一. 前言
本文主要介绍在Windows11上如何安装Ubuntu子系统,以及安装Nvidia驱动和CUDA Toolkit,为运行开源大模型做准备。
二. 系统环境
- CPU:i9-14900K
- 内存:128G
- 显卡:4090
- Windows版本:Windows11 专业版 23H2 22631.2861
注意:安装好Windows 11,就可以进入下面的步骤三,先不用安装显卡驱动
三. 安装WSL2 Ubuntu
1.WSL2 安装 Ubuntu
右键单击PowerShell并选择“以管理员身份运行”,输入下面命令,二选一,执行完成后,重启计算机
# 安装默认的Ubuntu-22.04
wsl --install
# 安装指定的版本
wsl --install -d Ubuntu-24.04
备注:如果命令执行报错:无法解析服务器的名称或地址,需要修改hosts文件,把下面的配置加上:
185.199.110.133 raw.githubusercontent.com
2.设置子系统用户名密码
重启计算机之后,会自动弹出子系统窗口,设置一下用户名和密码,例如:llm/llm
3.修改WSL2默认路径(目的是为了节约C盘空间,非必须的步骤,可以跳过)
i)先关闭子系统
PowerShell:
wsl --shutdown
ii) 导出备份包
PowerShell:
wsl --export Ubuntu D:\wsl\ubuntu.tar
iii) 注销子系统,释放占用的C盘空间
PowerShell:
wsl --unregister Ubuntu
iv) 新目录导入子系统(需确保目标目录已存在)
PowerShell:
wsl --import Ubuntu D:\wsl\Ubuntu22 D:\wsl\ubuntu.tar --version 2
v) 恢复子系统默认用户
PowerShell:
ubuntu.exe config --default-user llm
vi) 启动子系统
PowerShell:
ubuntu
vii) 清理备份文件(可以不清理,可以随时回退到这个干净的ubuntu系统)
PowerShell:
rm D:\wsl\ubuntu.tar
四. 安装Nvidia驱动
1.下载显卡驱动
官方网站:官方驱动 | NVIDIA
按照自己的显卡型号选择,搜索,下载
2.安装驱动
选择默认的NVIDIA显卡驱动和 GeForce Experience选项,安装选项为精简,安装完成后重启下电脑。
3.验证
i) PowerShell,输入nvidia-smi,显示出下图驱动和CUDA版本,就表示成功了
ii) PowerShell,输入wsl,进入Ubuntu子系统命令行,输入 nvidia-smi ,同样显示下图表示成功了
五. 安装CUDA Toolkit
1.选择要下载CUDA Toolkit版本
官方网站:https://developer.nvidia.com/cuda-toolkit-archive
选择和nvidia-smi命令返回的CUDA版本相同的链接
2.选择CUDA Toolkit运行环境
参照下图
3.执行命令安装
Powershell中,执行命令wsl,进入子系统,然后执行上一个步骤中的SHELL脚本。
wget https://developer.download.nvidia.com/compute/cuda/repos/wsl-ubuntu/x86_64/cuda-keyring_1.1-1_all.deb
sudo dpkg -i cuda-keyring_1.1-1_all.deb
sudo apt-get update
sudo apt-get -y install cuda-toolkit-12-5
4.配置环境变量
i)增加环境变量
子系统中,修改当前用户的bashrc文件
vim ~/.bashrc
文件结尾,加入下面的内容
export PATH=/usr/local/cuda-12.5/bin${PATH:+:${PATH}}
注意修改CUDA目录路径和你安装的路径保持一致
ii)使环境变量生效
source ~/.bashrc
六. 验证安装
子系统中执行
nvcc -V
成功了。
参考文档:
微软WSL官方教程:安装 WSL | Microsoft Learn
NVIDIA CUDA Installation Guide for Linux:CUDA Installation Guide for Linux