【Linux】使用WSL给Windows安装Linux子系统
引言
如果我在十几年前跟你说「Microsoft Love Linux」,你肯定觉得我鬼打墙了,Windows 和 Linux 可一直都是竞争对手。时任微软 CEO Steve Ballmer 还曾公开宣称 Linux 是「癌症」,毕竟 Linux 作为免费、开源的 Windows 替代品,抢走了微软不少的市场份额和营收。
后来,可能是为了与 VMware 等虚拟化厂商竞争,以及发展云计算平台的需要,微软在 Hyper-V 虚拟化平台上增加了对 Linux 的原生支持,让 Windows 也可以在 Hyper-V 虚拟机中运行 Linux 系统。但是,在 Hyper-V 中运行 Linux 虚拟机需要消耗大量的系统资源,而且宿主机(Host OS)与虚拟机(Guest OS)之间的交互也比较麻烦。
什么是 WSL 2?
时间来到 2017 年,事情正在起变化🤣。微软正式发布了「适用于 Linux 的 Windows 子系统」,即人们熟知的 Windows Subsystem for Linux,简称 WSL。
在 2019 年,微软又基于 Hyper-V 架构的部分功能,推出了全新的 WSL 2。它能够在一个高度优化的虚拟化中运行完整的 Linux 内核。
WSL 2 只需要较少的系统资源,就能实现 Windows 和 Linux 之间的无缝集成。虽然 WSL 2 也使用了虚拟化技术,但它会自动在后台运行和管理,无需用户手动配置或维护(要维护也可以)。
WSL 2 主要面向将 Windows 作为生产力工具,但又希望在 Linux 环境中完成工作的用户和开发人员。你可以运行grep、awk 和sed等命令行工具,以及依赖这些工具的 Bash 脚本。不仅如此,你还可以从 WSL 命令行启动 Windows 应用,甚至在 Windows 上运行 Linux 图形应用。
WSL的基本用法
安装
1
wsl --install
查看是否安装成功
1
wsl --version
手动更新 WSL 版本:
1
wsl --update
查看已安装的发行版、WSL 版本信息和当前状态
1
wsl --list --verbose
重新指定默认发行版
1
wsl --set-default <DistroName>
删除子系统
1
wsl --unregister Ubuntu-20.04
关闭所有虚拟机(一般在更改配置后使用,shutdown后需要等待8秒让配置生效)
1
wsl --shutdown
Windows 11 和 Linux 文件系统互访
Windows访问Linux
在左侧导航窗格中找到并点击「Linux」,就可以像浏览 Windows 文件一样浏览 Linux 文件了
Linux访问Windows
访问C盘直接1
cd /mnt/c
访问D盘同理
其他设置
1 | # 安装网络工具 |
需要注意的是,默认情况下 WSL 的网络和系统行为与传统 Linux 不同,WSL 的 SSH 服务无法直接被外部访问,因此,需要修改Windows系统用户主目录下的.wslconfig文件,设置:
1 | networkingMode=mirrored |
即可启用镜像网络模式,Windows和Linux共享一个相同的ip地址。
参考
https://www.sysgeek.cn/install-wsl-2-windows/