Windows11安装WSL2(Windows Subsystem for Linux)

1 配置Windows环境

任务栏搜索功能,打开 启用或关闭Windows功能 界面,勾选以下两项,然后点击 确定。

然后 重启电脑

2 安装Linux子系统

2.1 安装默认子系统版本:

bash 复制代码
# 下载安装速度比较慢,--web-download 参数提升下载速度
wsl --install --web-download

弹出的用户账户控制界面选择 是。

2.2 进入/退出Linux

bash 复制代码
# 进入
wsl -d Ubuntu

# 退出
exit

或者 PowerShell

3 迁移子系统到其他盘

子系统默认安装到C盘:

C:\Users\xxx\AppData\Local\wsl{0b1453cf-0d9f-477b-9258-feb84e4b5281}

为了不占用C盘,将子系统迁移到别的盘。

  1. 导出镜像
bash 复制代码
# 导出之前先关闭所有子系统
wsl --shutdown

# 导出到F盘
wsl --export Ubuntu F:\WSL\Ubuntu-24.04.tar
  1. 导入镜像到F盘
bash 复制代码
wsl --import Ubuntu-24.04 F:\WSL\Ubuntu-24.04 F:\WSL\Ubuntu-24.04.tar
  1. 卸载安装在C盘的子系统
bash 复制代码
wsl --unregister Ubuntu

附录一:wsl相关命令

  1. 安装与配置
bash 复制代码
# 安装WSL和默认Ubuntu发行版
wsl --install

# 查看可安装的Linux发行版
wsl --list --online
wsl -l -o

# 安装指定发行版
wsl --install -d Ubuntu-22.04
wsl --install -d Debian

# 更新WSL内核
wsl --update

# 设置WSL默认版本
wsl --set-default-version 2
  1. 查看与管理发行版
bash 复制代码
# 列出已安装的发行版
wsl --list --verbose
wsl -l -v

# 设置默认发行版
wsl --set-default Ubuntu-22.04

# 启动指定发行版
wsl -d Ubuntu-22.04

# 以root用户启动
wsl -u root

# 卸载已安装的发行版
wsl --unregister Ubuntu
  1. 系统控制
bash 复制代码
# 关闭所有WSL实例
wsl --shutdown

# 终止指定发行版
wsl --terminate Ubuntu-22.04

# 设置发行版版本
wsl --set-version Ubuntu 2
  1. 备份和迁移
bash 复制代码
# 导出发行版备份
wsl --export Ubuntu-22.04 D:\backup\ubuntu22.tar

# 从备份导入新实例
wsl --import Ubuntu-New D:\WSL\NewUbuntu\ D:\backup\ubuntu22.tar --version 2

# 自定义导入路径
wsl --import Ubuntu-Dev D:\WSL\MyUbuntu rootfs.tar.gz --version 2
  1. 访问Windows文件
bash 复制代码
# 进入C盘
cd /mnt/c/

# 访问用户目录
ls /mnt/c/Users/你的用户名/

# 创建桌面快捷链接
ln -s /mnt/c/Users/你的用户名/Desktop/ ~/Desktop

# 从WSL调用Windows命令
explorer.exe .          # 打开当前目录到资源管理器
code .                  # 用VSCode打开当前目录

# 从Windows复制文件到WSL
copy file.txt \\wsl$\Ubuntu-22.04\home\user\
  1. 高级用法
bash 复制代码
# 在PowerShell中运行WSL命令
wsl ls -la
wsl python3 /home/username/script.py

# 执行单行命令不进入交互
wsl -d Ubuntu-22.04 -e bash -c "ls /"

# 执行多个命令
wsl bash -c "cd /home && mkdir test && echo done"
相关推荐
GeW9 小时前
超详细!RHCE10版通用备考策略,内含评分细则解读
linux
用户0413284651310 小时前
Linux 服务开机自启动怎么配置?systemctl enable 原理详解
linux
草莓熊Lotso18 小时前
【Redis 初阶】Set 类型深度解析:去重集合的运算能力与实战场景
linux·网络·数据库·windows·redis·tcp/ip·缓存
张文君19 小时前
ubuntu26.04坏道坏块分区隔离急速版260831-V0.12
linux·python
IT大白鼠19 小时前
Docker 实战 ELKF 日志监控:容器日志全栈收集分析方案
运维·docker·容器
贝锐1 天前
从国产化信创设备到商用安卓终端,向日葵如何帮助企业实现统一运维管理?
linux·运维·远程控制
Julien20041 天前
调查和解决 SELinux 问题
linux·运维·服务器·网络·学习方法
天远Date Lab1 天前
零信任架构实战:基于天远双人婚姻评估查询构建自动化房产按揭联合审查网关
运维·人工智能·架构·自动化
2601_962074681 天前
自己编译RustDesk,并将自建ID服务器和key信息写入客户端
运维·服务器
小张同学a.1 天前
Docker 容器实战 1—— docker 基础与镜像构建
linux·运维·docker·容器