WSL

WSL,是Windows Subsystem for Linux(适用于 Linux 的 Windows 子系统)的简称。可让直接在 Windows 上运行 GNU/Linux 程序,且比虚拟机开销小,速度快。

简介

时间轴

安装

Windows 10 版本 2004 及更高版本(内部版本 19041 及更高版本)可以直接安装:

wsl --install

了解更多 >> WSL 文档:安装 WSL


旧版安装

1. 启用WSL功能。以管理员身份打开 PowerShell 并运行以下命令,按照成功后重启系统:

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

2. 更新到 WSL 2,如果不能更新则需升级系统。首先启用虚拟机功能,以管理员身份打开 PowerShell 并运行:

dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart

然后下载WSL的Linux 内核更新包并安装。接下来设置WSL 2 设置为默认版本,打开PowerShell输入如下命令:

wsl --set-default-version 2

3. 安装 Linux 分发版。打开Microsoft Store,选择并安装。更多分发版见官网安装文档。

4. 安装Windows 终端,使用更方便。

了解更多 >> WSL 文档:安装 WSL 1 与更新到 WSL 2


WSL命令

名称 描述 示例
卸载 wsl --unregister <版本名称>

<版本名称>可以通过wsl --list查看,如wsl --unregister Ubuntuwsl --unregister Ubuntu-20.04

了解更多 >> WSL 文档:WSL 的基本命令


移动到其他盘

先安装好一个WSL系统,如Ubuntu-22.04,导出再导入即可:

# 停止运行
wsl --shutdown

# 导出该系统到文件
wsl --export Ubuntu-22.04 D:\temp\Ubuntu-22.04.tar

# 注销卸载原来的系统
wsl --unregister Ubuntu-22.04

# 指定位置,并导入系统
wsl --import Ubuntu-22.04 D:\ubuntu-22.04\ D:\temp\Ubuntu-22.04.tar

默认情况下,使用 --import 时,总是作为根用户启动。 可以在系统内/etc/wsl.conf指定原来的用户名(示例yourname)默认启动。

# 主机上运行Ubuntu-22.04
wsl -d ubuntu-22.04

# 在buntu-22.04系统内,设置默认启动用户为yourname
echo -e "[user]\ndefault=你的用户名" >> /etc/wsl.conf

# 主机上关闭正在运行的虚拟机
wsl --shutdown Ubuntu-22.04

了解更多 >> WSL 文档:导入要与 WSL 一起使用的任何 Linux 发行版 WSL 文档:WSL 的基本命令


使用GPU

WLS中使用

在 WSL 2 设置NVIDIA CUDA :

  • 1.在Windows上安装 NVIDIA 驱动程序:https://www.nvidia.com/Download/index.aspx 。安装后在Windows和WSL中输入nvidia-smi,检查是否安装成功。 注意,不要在 WSL 中安装任何 Linux 显示驱动程序。

Docker中使用

在Docker中使用,只需要Windows安装好NVIDIA 驱动程序即可。

使用TensorFlow测试GPU是否可用

docker run --gpus all -it --rm tensorflow/tensorflow:latest-gpu \
   python -c "import tensorflow as tf; print(tf.test.is_gpu_available())"


了解更多 >> WSL 文档:WSL 中 ML 的 GPU 加速入门 TensorFlow 文档:安装/Docker Nvidia 文档:NVIDIA Container Toolkit 安装 Nvidia 文档:CUDA on WSL Nvidia 文档: WSL2 上的 CUDA 用户指南


资源

官网

相关文章