介绍
- 详情看参考官方文档:适用于 Linux 的 Windows 子系统文档 | Microsoft Docs
- 提供
Linux
系统环境,减少传统虚拟机或者双启动的设置开销。 - 可用功能:
- 在 Microsoft Store 中选择你偏好的
GNU/Linux
分发版。 - 运行 Bash shell 脚本和 GNU/Linux 命令行应用程序,包括:
- 工具:vim、emacs、tmux
- 语言:NodeJS、Javascript、Python、Ruby、C/C++、C# 与 F#、Rust、Go 等
- 服务:SSHD、MySQL、Apache、lighttpd、MongoDB、PostgreSQL。
- 使用自己的 GNU/Linux 分发包管理器安装其他软件。
- 使用类似于 Unix 的命令行 shell 调用 Windows 应用程序。
- 在 Windows 上调用 GNU/Linux 应用程序。
- 在 Microsoft Store 中选择你偏好的
wsl1和wsl2的性能比对:
功能 | WSL 1 | WSL 2 |
---|---|---|
Windows 和 Linux 之间的集成 | ✅ | ✅ |
启动时间短 | ✅ | ✅ |
与传统虚拟机相比,占用的资源量少 | ✅ | ✅ |
可以与当前版本的 VMware 和 VirtualBox 一起运行 | ✅ | ✅ |
托管 VM | ❌ | ✅ |
完整的 Linux 内核 | ❌ | ✅ |
完全的系统调用兼容性 | ❌ | ✅ |
跨 OS 文件系统的性能 | ✅ | ❌ |
WSL 2 仅适用于 Windows 10 版本 1903、内部版本 18362 或更高版本。
通过按 win
+ R
,检查 Windows 版本,然后键入 winver,选择“确定”。
WSL 2 也适用于 VMware 15.5.5+ 和 VirtualBox 6+。
WSL 2 Linux 内核是开源的。 可查看由构建该内核的团队撰写的博客文章随 Windows 一起提供 Linux 内核。
但目前存在以下问题:
- WSL 2 不支持访问串行端口。
- WSL 2 的跨os文件性能较弱
- WSL 2 的内存使用量会随使用而缩放。 如果有长时间运行的 WSL 会话或访问非常大量的文件,此缓存可能会耗尽 Windows 内存。
WSL安装
自动安装
可以直接去Microsoft Store商城直接下载,这样简单又快捷。
参考官方文档:安装 WSL | Microsoft Docs
安装指令:
1 | wsl --install |
如果你需要使用旧版本的WSL安装步骤(直接跳到下文—手动安装WSL):安装 WSL | Microsoft Docs
可通过以下命令安装指定的linux发行版:
先获取可用的
Linux
发行版列表1
wsl --list --online
指定安装的
Linux
发行版名称1
2wsl --install -d <Distribution Name> # <Distribution Name>是发行版的名称
wsl --install -d Ubuntu-22.04
Linux子系统迁移
这里为什么要迁移,我想大家都知道,如果你不迁移,默认使用的是C盘,这样你使用下去,会让你的C盘爆满,到时候你想迁移也是很无奈的,这里先一步迁移是因为安装时还很小,后续迁移太大,执行起来估计很麻烦。
查询安装的
Linux
子系统1
wsl -l --all -v
停止
Linux
子系统1
2wsl --shutdown Ubuntu22.04
wsl -l --all -v这里你执行
wsl -l --all -v
去看会显示1
2
3NAME STATE VERSION
* Ubuntu-22.04 Stopped 2
# 主要看 Ubuntu-22.04 右边显示的 Stopped,如果没有关闭显示的是 Running。将
Linux
子系统导入其他盘1
2wsl --export Ubuntu22.04 d:\wsl\Ubuntu22.04.tar
# 创建一个路径,把Linux进行压缩保存注销当前
Linux
子系统1
wsl --unregister Ubuntu22.04
重新导入linux子系统
1
wsl --import Ubuntu22.04 D:\wsl\Ubuntu22.04 D:\wsl\Ubuntu22.04.tar
左边的是你需要安装的路径,右边是你刚才压缩的路径位置。
这里我们还需要找回账户
1
ubuntu2204 config --default-user name(这里填写你的Linux用户名)
扩展内容
Linux用源是国外的源,这里使用都需要
换apt源
更改sources.list文件,更改前先进行备份
1
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
备份好后开始进行编辑
1
sudo vim /etc/apt/sources.list
开始进行编辑sources.list文件
按下键盘上的 I 键进行编辑(终端下面出现Import或者插入才行)
将原内容 全部用 # 注释掉(或者删掉),然后将从下面的apt清华源网址中找到的对应版本的apt源复制粘贴
退出进行编辑保存
按下esc键或shift+:,然后 :wq 保存
更换完源后需要更新+软件更新:
1
sudo apt update && sudo apt upgrage -y && sudo apt autoremove
这里准备了几个国内源:
国内源
Ubuntu 22.04 LTS 阿里源
1
2
3
4
5
6
7
8
9
10deb http://mirrors.aliyun.com/ubuntu/ jammy main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ jammy main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ jammy-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ jammy-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ jammy-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ jammy-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ jammy-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ jammy-proposed main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ jammy-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ jammy-backports main restricted universe multiverseUbuntu 22.04 LTS 清华源
1
2
3
4
5
6
7
8
9
10
11
12
13# 默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消注释
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-updates main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-backports main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-backports main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-security main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-security main restricted universe multiverse
# 预发布软件源,不建议启用
# deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-proposed main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-proposed main restricted universe multiverseUbuntu 22.04 LTS 中科大源
1
2
3
4
5
6
7
8
9
10deb https://mirrors.ustc.edu.cn/ubuntu/ jammy main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ jammy main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ jammy-updates main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ jammy-updates main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ jammy-backports main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ jammy-backports main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ jammy-security main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ jammy-security main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ jammy-proposed main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ jammy-proposed main restricted universe multiverseUbuntu 22.04 LTS 163源
1
2
3
4
5
6
7
8
9
10deb http://mirrors.163.com/ubuntu/ jammy main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ jammy-security main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ jammy-updates main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ jammy-proposed main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ jammy-backports main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ jammy main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ jammy-security main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ jammy-updates main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ jammy-proposed main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ jammy-backports main restricted universe multiverse
到这里就基本完成了,这里版本我安装没有出现任何问题,如果你有什么问题可以在评论区留言。