1003 字
5 分钟
Win11_24H2安装WSL2
2025-06-09

启用功能#

  1. 启用「Hyper-V」 PixPin_2025-06-08_08-56-38
  2. 启用「Windows虚拟机监控程序平台」和「适用于Linux的Windows子系统」 PixPin_2025-06-08_08-58-12
  3. 重启计算机
  4. 将 WSL 默认版本设置为 WSL2(我这里的Windows版本已经默认设置为WSL2了,Win10低版本需要手动设置)

Win10手动更新wsl内核至wsl2#

进入这个页面:WSL更新页面手动下载,下载Windows Subsystem for Linux Update - 5.10.102.2,然后手动运行,如果失败请查看解决使用wsl_update_x64.msi手动更新wsl内核失败问题

WSL2安装Ubuntu#

  1. 更新Linux子系统

    Terminal window
    wsl.exe --update
  2. 查看可用的 WSL 发行版:

    Terminal window
    wsl --list --online

    输入如下:

    Terminal window
    PS C:\Users\xh> wsl --list --online
    以下是可安装的有效分发的列表。
    使用“wsl.exe --install <Distro>”安装。
    NAME FRIENDLY NAME
    AlmaLinux-8 AlmaLinux OS 8
    AlmaLinux-9 AlmaLinux OS 9
    AlmaLinux-Kitten-10 AlmaLinux OS Kitten 10
    AlmaLinux-10 AlmaLinux OS 10
    Debian Debian GNU/Linux
    FedoraLinux-42 Fedora Linux 42
    SUSE-Linux-Enterprise-15-SP5 SUSE Linux Enterprise 15 SP5
    SUSE-Linux-Enterprise-15-SP6 SUSE Linux Enterprise 15 SP6
    Ubuntu Ubuntu
    Ubuntu-24.04 Ubuntu 24.04 LTS
    archlinux Arch Linux
    kali-linux Kali Linux Rolling
    openSUSE-Tumbleweed openSUSE Tumbleweed
    openSUSE-Leap-15.6 openSUSE Leap 15.6
    Ubuntu-18.04 Ubuntu 18.04 LTS
    Ubuntu-20.04 Ubuntu 20.04 LTS
    Ubuntu-22.04 Ubuntu 22.04 LTS
    OracleLinux_7_9 Oracle Linux 7.9
    OracleLinux_8_7 Oracle Linux 8.7
    OracleLinux_9_1 Oracle Linux 9.1
  3. 安装20.04版本

    Terminal window
    wsl --install -d Ubuntu-20.04
  4. 设置用户名和密码

  5. 完成

常用指令#

  • wsl -l -v:查看已安装的发行版及其状态
  • wsl -d Ubuntu-20.04 :-d代表启动指定版本

WSL安装的子系统可以直接访问Windows中的文件,例如D盘挂载到Ubuntu的/mnt路径下

换源#

国内直接访问Linux官方的服务器还是挺慢的,这里换成国内的阿里源:

  1. 将系统源文件复制一份备用

    Terminal window
    sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
  2. 用vim编辑器打开源文件

    Terminal window
    sudo vim /etc/apt/sources.list
  3. 清空sources.list文件(vim输入49dd即可清空),并粘贴国内源

    Terminal window
    deb http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse
    deb-src http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse
    deb http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse
    deb-src http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse
    deb http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse
    deb-src http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse
    deb http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse
    deb-src http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse
    deb http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse
    deb-src http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse
  4. 更新

    Terminal window
    sudo apt-get -y update && sudo apt-get -y upgrade

VS Code连接#

  1. WSL终端安装open-ssh

    Terminal window
    sudo apt update && sudo apt install openssh-server -y
  2. 修改ssh配置 编辑 /etc/ssh/sshd_config

    Terminal window
    sudo vim /etc/ssh/sshd_config

    修改以下关键配置:

    Port 2222 # 避免和 Windows 的默认 SSH 端口 22 冲突
    ListenAddress 0.0.0.0 # 允许所有 IP 连接
    PasswordAuthentication yes # 允许密码登录(可选,建议用密钥)
  3. 重启ssh服务

    Terminal window
    sudo service ssh restart

    检查是否运行:

    Terminal window
    sudo service ssh status
  4. 配置 Windows 防火墙 打开2222端口,在 PowerShell(管理员) 运行:

    Terminal window
    New-NetFirewallRule -DisplayName "WSL SSH" -Direction Inbound -LocalPort 2222 -Protocol TCP -Action Allow

    或者手动在 Windows Defender 防火墙 中修改也可以

  5. 获取WSL的IP地址 WSL 每次启动时 IP 可能变化,可以通过以下方式获取: 在WSL中输入:

    Terminal window
    hostname -I

    或者在PowerShell 运行:

    Terminal window
    wsl hostname -I

    推荐直接通过localhost进行连接,当WSL启动多个系统时,可以按端口号进项区分。

  6. 免密登录(可选)PowerShell 运行:

    Terminal window
    ssh-keygen -t ed25519

    默认保存在 C:\Users\你的用户名\.ssh\id_ed25519。 复制公钥到WSL用户的~/.ssh/authorized_keys文件中,即可免密登录

解决使用wsl_update_x64.msi手动更新wsl内核失败问题#

  1. 打开「设置」>「应用」>「应用和功能」,搜索 “Windows Subsystem for Linux Update” ,然后手动尝试卸载

    • 如果卸载成功,再运行wsl_update_x64.msi就可以正常更新了
    • 如果卸载失败,需要接着往下看。
  2. 记下刚才搜索到的 Windows Subsystem for Linux Update 版本号,访问:WSL更新页面手动下载

    例如,你搜索到的是 5.10.16 旧版本,就是下载 5.10.16 ,下载 msi 包目的是卸载!不是更新!

  3. 右键刚才下载的 msi 包,点击卸载,大概率会提示 “无法访问你试图使用的功能所在的CD-ROM或其他可移动式磁盘” 。

    然后,点击浏览,手动定位你当前的 msi 包,就可以成功卸载 WSL内核,再尝试运行wsl_update_x64.msi

Win11_24H2安装WSL2
https://fuwari.cbba.top/posts/win11_24h2安装wsl2/
作者
Chen_Feng
发布于
2025-06-09
许可协议
CC BY-NC-SA 4.0