一、什么是 WSL 2

时间来到 2017 年,事情正在起变化。微软正式发布了「适用于 Linux 的 Windows 子系统」,即人们熟知的 Windows Subsystem for Linux,简称 WSL。
在 2019 年,微软又基于 Hyper-V 架构的部分功能,推出了全新的 WSL 2。它能够在一个高度优化的虚拟化中运行完整的 Linux 内核。

WSL 2 的系统要求

WSL 2 使用了 Hyper-V 架构的一部分功能,但对 Windows 11 的版本并没有限制。家庭版、教育版、专业版和企业版都可以安装。
除了x86_64架构外,WSL 2 也支持ARM处理器。但要在基于 ARM 的设备上运行,所使用的 Linux 系统也必须是 ARM 版本。
如果你使用的虚拟机软件支持嵌套虚拟化,WSL 2 也可以在虚拟机中的 Windows 上运行。

为什么要安装WSL 2

AI大模型本地运行是需要显卡的,如果你需要对AI模型进行微调,必须是Linux系统,Windows系统是不行的。

为什么?因为微调涉及到的一些组件,Windows无法运行,只能是Linux系统才行。

虽然window有运行AI大模型的软件,比如大家熟悉的‌Ollama,LM Studio。这些只是能运行大模型而已,想要微调是不可能的。

我尝试安装过VirtualBox、VMware Workstation。使用这些虚拟化软件安装ubuntu系统,但是加载英伟达显卡有问题,不是很理想。

经过几天的尝试,在Windows系统中,想要通过ubuntu系统加载英伟达显卡,最好的方案就是WSL 2,能完美加载英伟达显卡。

注意:window11家庭版也是可以运行WSL 2,网上说什么必须要升级到专业版,都是扯淡的。

一般我们购买的游戏笔记本电脑,默认都是Windows11家庭版,没必要升级到专业版,还得购买激活码,太麻烦了。

二、安装 WSL 2

启用 WSL 和虚拟机平台功能

打开cmd窗口,运行以下2个命令

dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart

注意:运行过程比较漫长,大概15分钟左右,请耐心等待。

运行完成后,效果如下:

PS C:\WINDOWS\system32> dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart

部署映像服务和管理工具
版本: 10.0.26100.1150 映像版本: 10.0.26100.3775 启用一个或多个功能
[==========================100.0%==========================]
操作成功完成。
PS C:\WINDOWS\system32> dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart 部署映像服务和管理工具
版本: 10.0.26100.1150 映像版本: 10.0.26100.3775 启用一个或多个功能
[==========================100.0%==========================]
操作成功完成。

提示操作成功之后,必须要重启电脑。

更新wsl

自带的wsl更新命令,会非常慢。为了加快速度,直接从github里面下载最新版本。

https://github.com/microsoft/WSL/releases

使用迅雷下载

下载完成后,直接双击安装,下一步,下一步即可。

设置版本

以管理员身份打开Powershell,输入命令

wsl --set-default-version 2

三、WSL2运行ubuntu系统

使用自带的命令在线安装ubuntu系统,会特别的慢。

这里直接下载ubuntu镜像文件

https://learn.microsoft.com/en-us/windows/wsl/install-manual#downloading-distributions

下载最新版本24.04,开启迅雷下载,速度飞快。

下载完成后,会得到文件Ubuntu2404-240425.AppxBundle

将文件名,重命名为Ubuntu2404-240425.zip,不用担心文件会损坏,改成zip就是为了方便解压而已。

解压之后,得到文件夹Ubuntu2404-240425

进入文件夹,找到文件Ubuntu_2404.0.5.0_x64.appx,重命名为:Ubuntu_2404.0.5.0_x64.zip,然后解压。

得到文件夹Ubuntu_2404.0.5.0_x64

将文件夹复制到D盘,因为你的C盘空间,可能会不太够,只要是一个空间比较的大磁盘即可。

进入文件夹D:\Ubuntu_2404.0.5.0_x64,你会看到一个ubuntu2404.exe,直接双击即可

运行之后,会提示输入用户名和密码

注意:这里的用户,就是管理员,使用你的名字中文拼音或者英文名都行,密码随意。当然,和root用户,不是一个级别的。

登录成功之后,使用以下命令,切换到root用户

$ sudo su root
[sudo] password for xiao:
root@DESKTOP-1SGUH22:/home/xiao# whoami
root
root@DESKTOP-1SGUH22:/home/xiao#

安装组件net-tools,openssh-server

apt-get install -y net-tools openssh-server

查看ip地址

# ifconfig
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 172.28.255.140 netmask 255.255.240.0 broadcast 172.28.255.255
inet6 fe80::215:5dff:fe47:b74c prefixlen 64 scopeid 0x20<link>
ether 00:15:5d:47:b7:4c txqueuelen 1000 (Ethernet)
RX packets 2712288 bytes 4101955783 (4.1 GB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 275004 bytes 21708764 (21.7 MB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

注意:这个ip,Windows11是可以直接通讯的。所以你使用xshell客户端,也是可以连接的。

四、安装英伟达显卡驱动

我的游戏本,英伟达显卡型号是,NVIDIA GeForce RTX 5080 Laptop GPU,显存有16GB

内存有64GB,已经顶级配置了,因为主板最大只能支持64GB

固态硬盘2TB,也接近顶级了,因为主板只有2个硬盘插槽。

cpu是Intel Core i9 14900HX,是英特尔移动端性能比较高的cpu。

CUDA Toolkit

CUDA Toolkit 是NVIDIA 提供的一套开发工具,它包含了用于开发CUDA 应用程序所需的各种工具,如编译器、调试器和库。 因此,CUDA 和CUDA Toolkit 是有关系的,CUDA 是并行计算平台和编程模型,而CUDA Toolkit 是一套开发工具。

如果你想在 WSL 中使用 CUDA Toolkit,可以按照以下步骤进行安装:
1. 在 NVIDIA 官网找到与你的显卡和驱动程序兼容的 CUDA Toolkit 版本。

2. 在 WSL 的 Ubuntu 终端中安装 CUDA Toolkit。例如,安装 CUDA Toolkit 12.8:

wget https://developer.download.nvidia.com/compute/cuda/repos/wsl-ubuntu/x86_64/cuda-wsl-ubuntu.pin
sudo mv cuda-wsl-ubuntu.pin /etc/apt/preferences.d/cuda-repository-pin-600
wget https://developer.download.nvidia.com/compute/cuda/12.8.0/local_installers/cuda-repo-wsl-ubuntu-12-8-local_12.8.0-1_amd64.deb
sudo dpkg -i cuda-repo-wsl-ubuntu-12-8-local_12.8.0-1_amd64.deb
sudo cp /var/cuda-repo-wsl-ubuntu-12-8-local/cuda-*-keyring.gpg /usr/share/keyrings/
sudo apt-get update
sudo apt-get -y install cuda-toolkit-12-8

3. 将 CUDA 工具链添加到环境变量中:

echo 'export PATH=/usr/local/cuda/bin:$PATH' >> ~/.bashrc
echo 'export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH' >> ~/.bashrc
source ~/.bashrc

4. 验证 CUDA Toolkit
运行以下命令验证 CUDA Toolkit 是否安装成功:

# nvcc -V
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2025 NVIDIA Corporation
Built on Wed_Jan_15_19:20:09_PST_2025
Cuda compilation tools, release 12.8, V12.8.61
Build cuda_12.8.r12.8/compiler.35404655_0

NVIDIA 驱动程序

在 WSL 的 Ubuntu 终端中运行以下命令,安装与你的显卡兼容的 NVIDIA 驱动程序。例如,安装最新的驱动程序版本:

sudo apt install nvidia-utils-570-server

安装完成后,运行以下命令验证 NVIDIA 驱动程序是否正确安装:

nvidia-smi

效果如下:

# nvidia-smi
Wed May 7 15:19:11 2025
+-----------------------------------------------------------------------------------------+
| NVIDIA-SMI 570.133.20 Driver Version: 576.28 CUDA Version: 12.9 |
|-----------------------------------------+------------------------+----------------------+
| 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 GeForce RTX 5080 ... On | 00000000:01:00.0 On | N/A |
| N/A 45C P5 28W / 100W | 1870MiB / 16303MiB | 5% Default |
| | | N/A |
+-----------------------------------------+------------------------+----------------------+ +-----------------------------------------------------------------------------------------+
| Processes: |
| GPU GI CI PID Type Process name GPU Memory |
| ID ID Usage |
|=========================================================================================|
| No running processes found |
+-----------------------------------------------------------------------------------------+

可以看到显卡NVIDIA GeForce RTX 5080,显存为16303MiB,也就是16GB

五、WSL文件管理

Ubuntu运行成功之后,可以看到一个小企鹅图标,点击进去

这里可以看到Linux文件

注意:某些目录是不允许访问的。

如果你需要上传文件,可以上传到tmp目录,是可以的。

你也可以通过xftp工具进行上传也没问题。

进入本地目录,D:\Ubuntu_2404.0.5.0_x64,可以看到文件ext4.vhdx

上面展示的Linux文件系统的文件,都在这个硬盘文件里面,目前有18.6GB。

之后产生的所有文件,都在这里。

最后说明一下,WSL官方是不建议在生产环境中使用的,因为不稳定。

当然,我在使用过程中,也确实遇到了卡死情况。卡死了,怎么办?直接把cmd窗口关闭即可。

想要再次启动,直接运行D:\Ubuntu_2404.0.5.0_x64里面的ubuntu2404.exe文件即可。

WSL可以本地运行ubuntu系统,方便我们学习AI模型微调。在真正的生产环境中,是用Ubuntu服务器,直接加载服务器级别的显卡进行运算的。

当然,显卡价格是贵的离谱,一般都是公司买单。几十万,上百万的都有。

windows11 安装WSL2详细过程的更多相关文章

  1. 【Oracle RAC】Linux系统Oracle11gR2 RAC安装配置详细过程V3.1(图文并茂)

    [Oracle RAC]Linux系统Oracle11gR2 RAC安装配置详细过程V3.1(图文并茂) 2 Oracle11gR2 RAC数据库安装准备工作2.1 安装环境介绍2.2 数据库安装软件 ...

  2. Linux系统CentOS6.2版本下安装JDK7详细过程

    Linux系统CentOS6.2版本下安装JDK7详细过程 分类: Linux 2014-08-25 09:17 1933人阅读 评论(0) 收藏 举报 前言:        java 是一种可以撰写 ...

  3. iOS安装CocoaPods详细过程

    iOS安装CocoaPods详细过程 一.简介 什么是CocoaPods CocoaPods是OS X和iOS下的一个第三类库管理工具,通过CocoaPods工具我们可以为项目添加被称为“Pods”的 ...

  4. centos7.3 安装oracle 详细过程

    centos7.3安装oracle详细过程1.下载Oracle安装包:linux.x64_11gR2_database_1of2.zip 和 linux.x64_11gR2_database_2of2 ...

  5. Linux下安装mongodb详细过程

    本次安装mongodb使用yum.repo方式.详细过程请参考,也列出一些安装过程中的错误,欢迎指正. mongodb版本:3.0 先在linux下cd 到 /etc/yum.repos.d/ 新建脚 ...

  6. HBase 1.2.6 完全分布式集群安装部署详细过程

    Apache HBase 是一个高可靠性.高性能.面向列.可伸缩的分布式存储系统,是NoSQL数据库,基于Google Bigtable思想的开源实现,可在廉价的PC Server上搭建大规模结构化存 ...

  7. Win8-64位安装OpenSSL详细过程

    相关软件: 1.ActivePerl 5.22.1 : http://www.activestate.com/activeperl/downloads 2.Microsoft visual_studi ...

  8. JDK 在 Linux 上安装的详细过程

    1.下载JDK Linux上一般会安装Open JDK,如果有系统预装了OpenJDK的话需要先卸载掉OpenJDK, 卸载过程可以参考这里:https://www.cnblogs.com/sxdcg ...

  9. CentOS7下安装JDK详细过程

    Linux上一般会安装Open JDK,关于OpenJDK和JDK的区别:http://www.cnblogs.com/sxdcgaq8080/p/7487369.html 下面开始安装步骤: --- ...

  10. VMwear安装Centos7详细过程

      1.软硬件准备软件:推荐使用VMwear,我用的是VMwear 10镜像:CentOS7   硬件:因为是在宿主机上运行虚拟化软件安装centos,I3CPU双核.硬盘500G.内存4G以上. 2 ...

随机推荐

  1. P3092 [USACO13NOV] No Change G 题解

    传送门 题解 思路 看到 \(1\le k\le16\),我们想到状压DP. 以每枚硬币是否被使用为状态,对其进行枚举. 令 \(dp_i\) 表示状态 \(i\) 下最多能支付到第 \(dp_i\) ...

  2. VS2019 找不到资产文件 “xxxx\obj\project.assets.json”运行NuGet包还原以生成此文件

    参考地址:https://blog.csdn.net/weixin_42835409/article/details/107033059 下载 log4net 源码打开,编译报错: 严重性 代码 说明 ...

  3. [HDU5396] Expression 题解

    每次合并两个数,做过石子合并的人都能看出来是区间 dp. 设状态 \(dp_{i,j}\) 表示区间 \([i,j]\) 中合并为一个数的所有情况之和. 那么我们就可以枚举断点 \(k\): \(b_ ...

  4. 软件工程: SDLC V模型

    V型 V-model 代表一个开发过程,可以被认为是瀑布模型的扩展,是更通用的 V-model 的一个例子.不是以线性方式向下移动,而是在编码阶段之后向上弯曲工艺步骤,以形成典型的 V 形.V 模型展 ...

  5. 群晖NAS 6.2x Moments AI场景识别 补丁教程

    首先,我们需要在套件中心里,停用Moments: 正常情况下,群晖是不允许root账号直接登录的,必须使用管理员账户,然后sudo -i指令登录root账户,这样非常的麻烦.所以我们可以之际开启roo ...

  6. zabbix - [01] 概述

    参考:Zabbix教程(Zabbix监控系统精讲) 一.监控介绍 Cacti Cacti 是一套基于PHP.MySQL.SNMP以及RRD Tool开发的监测图形分析工具,Cacti 是使用轮询的方式 ...

  7. ZLMediaKit: 快速入门

    目录 ZLMediaKit是什么 编译 安装依赖库 构建项目 问题处理 问题1: srtp 未找到, WebRTC 相关功能打开失败 问题2:依赖库问题 安装 配置和运行 问题处理 问题1: 无权限监 ...

  8. xpath 定位表格里面内容

    向上找页面唯一元素,依次为: 表格体/第一行/第14列 实现代码 Xpath==//tbody/tr[1]/td[11]

  9. dockerfile 由于公钥不可用,无法验证以下签名

    报错 当我在打包 docker镜像时,发生了报错 $ sudo docker build -t dcgm-exporter:3.2.5 . 1.772 The following signatures ...

  10. websocket: the client is not using the websocket protocol: ‘upgrade’ token not found in ‘Connection’ head,客户端没有使用websocket协议:'upgrade'令牌未在'Connection'头中找到

    错误分析 websocket: the client is not using the websocket protocol: 'upgrade' token not found in 'Connec ...