Windows Subsystem Linux: Debian 使用笔记

适用于 Linux 的 Windows 子系统

适用于 Linux 的 Windows 子系统 (WSL) 可让开发人员直接在 Windows 上按原样运行 GNU/Linux 环境(包括大多数命令行工具、实用工具和应用程序),且不会产生传统虚拟机或双启动设置开销。

安装要求

  • 对于 x64 系统:版本 1903 或更高版本,内部版本为 18362 或更高版本。
  • 对于 ARM64 系统:版本 2004 或更高版本,内部版本为 19041 或更高版本。

启用 WSL 功能

安装方式二选一,需要管理员权限需重启

[未验证] 好像这个也行: wsl --install --no-distribution --web-download

使用 PowerShell

  • 启用
    1Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux -All -NoRestart
    2Enable-WindowsOptionalFeature -Online -FeatureName VirtualMachinePlatform -All -NoRestart
    
  • 禁用
    1Disable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux -NoRestart -Remove
    2Disable-WindowsOptionalFeature -Online -FeatureName VirtualMachinePlatform -NoRestart -Remove
    

使用 DISM

在 CMD 和 PowerShell 中均可使用

  • 启用
    1DISM /Online /Enable-Feature /All /NoRestart /FeatureName:Microsoft-Windows-Subsystem-Linux
    2DISM /Online /Enable-Feature /All /NoRestart /FeatureName:VirtualMachinePlatform
    
  • 禁用
    1DISM /Online /Disable-Feature /Remove /NoRestart /FeatureName:Microsoft-Windows-Subsystem-Linux
    2DISM /Online /Disable-Feature /Remove /NoRestart /FeatureName:VirtualMachinePlatform
    

安装及更新 WSL 内核

  • 查看当前状态
    1wsl --status
    2wsl --version
    
  • 安装/更新内核 (需管理员权限,需要代理)
    1wsl --update --web-download
    
  • 将 WSL2 设置为默认版本
    1wsl --set-default-version 2
    

安装系统

也是两种方式:命令行安装、手动安装

命令行方式安装

  • 下载需要代理
  • 添加 --web-download 参数下载最新的镜像 (否则 Debian 9 将等着你)
1wsl --install --distribution Debian --web-download

手动安装

  • 将直接下载 appxbundle 后安装
  1. 前往: https://store.rg-adguard.net/
  2. 搜索方式从 URL (Link) 改为 Productid
  3. 搜索 9MSVKQC78PK6
  4. 下载 TheDebianProject.DebianGNULinux_<version>_neutral_~_76v4gfsz19hv4.appxbundle
  5. 使用 Add-AppxPackage <FileName> 安装
  6. 在开始菜单中打开,并设置用户名和密码

设置系统

设置镜像

 1# 设置镜像所需关键字
 2export MIRROR_URL="http://mirrors.bfsu.edu.cn"
 3export BRANCH="bookworm"
 4export COMPONENT="main contrib non-free non-free-firmware"
 5
 6# 将镜像配置写入 sources.list
 7sudo tee /etc/apt/sources.list > /dev/null <<EOF
 8deb ${MIRROR_URL}/debian/ ${BRANCH} ${COMPONENT}
 9deb ${MIRROR_URL}/debian/ ${BRANCH}-updates ${COMPONENT}
10deb ${MIRROR_URL}/debian-security/ ${BRANCH}-security ${COMPONENT}
11EOF
12
13# 更新索引并安装 ca-certificates (HTTPS 依赖)
14sudo apt update && sudo apt install -y ca-certificates
15
16# 启用 HTTPS 并更新索引
17sudo sed -i 's/http:/https:/g' /etc/apt/sources.list && sudo apt update

完整更新系统

1# 更新索引并更新系统
2sudo apt update && sudo apt full-upgrade -y
3
4# 卸载无用包
5sudo apt autopurge -y

设置时区和语言

需重启 WSL 生效

 1# 设置时区
 2sudo ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
 3
 4# 取消语言生成文件注释
 5sudo sed -i 's/# en_US.UTF-8 UTF-8/en_US.UTF-8 UTF-8/g' /etc/locale.gen
 6sudo sed -i 's/# zh_CN.UTF-8 UTF-8/zh_CN.UTF-8 UTF-8/g' /etc/locale.gen
 7
 8# 生成语言并配置
 9sudo /usr/sbin/locale-gen
10echo 'LANG="zh_CN.UTF-8"' | sudo tee /etc/locale.conf

测试 WSLg

适用于 Linux 的 Windows 子系统 (WSL) 现在支持在 Windows 上以完全集成的桌面体验 (X11 和 Wayland) 运行 Linux GUI 应用程序。

  • 安装 vulkan-tools
1sudo apt install -y vulkan-tools
  • 运行 vkcubevkcube-wayland

Intel GPU 加速

安装下面的驱动,然后重启电脑:

https://www.intel.cn/content/www/cn/zh/download/19344/intel-graphics-windows-dch-drivers.html

使用 NVIDIA CUDA

先决条件

  • 确保运行Windows 11或Windows 10版本 21H2 或更高版本。
  • 安装 WSL 并为 Linux 分发版设置用户名和密码。
  • Windows 上已安装最新 NVIDIA 驱动

修复 libcuda.so.1 链接

问题表现: 在 apt 安装软件时报错

1ldconfig: /usr/lib/wsl/lib/libcuda.so.1 is not a symbolic link

解决方法: 在 Windows 上使用 管理员权限 运行(PowerShell):

1Set-Location C:\Windows\System32\lxss\lib
2Remove-Item libcuda.so
3Remove-Item libcuda.so.1
4New-Item -ItemType SymbolicLink -Path "libcuda.so.1" -Target "libcuda.so.1.1"
5New-Item -ItemType SymbolicLink -Path "libcuda.so" -Target "libcuda.so.1.1"

然后重启 WSL,在 WSL 内检查 CUDA 版本:

1/usr/lib/wsl/lib/nvidia-smi
CC BY-NC-SA 4.0 转载或引用本文时请遵守许可协议,注明出处、不得用于商业用途!
最后更新于 May 03, 2023 18:06 +0800
人最重要的特点是会思考,写博客的初衷是保存思维的电子快照。 当然各种文档工具亦或是简单的文本编辑器也能随时记录点滴,选择建个人网站无非是想满足技术爱好者的偏执。
Built with Hugo
主题 StackJimmy 设计