引言
所谓的WSL指的是用于 Linux 的 Windows 子系统(Windows Subsystem for Linux,WSL),开发人员可以在 Windows 计算机上同时访问 Windows 和 Linux 的强大功能。
WSL存在两个版本,WSL和WSL2,本博文安装WSL2.
配置及安装装WSL
首先在搜索栏搜 powershell,管理员身份打开。
然后安装
wsl --install
此命令将启用运行 WSL 并安装 Linux 的 Ubuntu 分发所需的功能。
- 启用 Windows 子系统(WSL)功能
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
其中关于参数的说明如下:
- /all:在所有用户上启用该功能
- /norestart:启用功能后不会立即重启
- 启用虚拟机平台功能。WSL2 依赖 Windows 虚拟机功能,需要额外启用:
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
- 将 WSL 默认版本设置为 WSL2
wsl --set-default-version 2
然后重启重启电脑,wsl的安装就完成了。
- 选择Linux分发版本.列出所有可用的在线Linux版本
wsl -l -o
# wsl --list --online
接下来自动安装(注意自动安装是默认安装在c盘的)
wsl --install -d 发行版名称
# 下面先安装20.04
wsl --install -d Ubuntu-20.04
安装完毕后出现弹窗,输入Linux系统的账户名称及密码即可。
然后按 Ctrl + D 退出即可。
而安装的系统在windows下也可以看到
常用命令记录
# 进入默认发行版
wsl
# 进入指定发行版
wsl -d 发行版名称
# 设定某个发行版为默认
wsl -s 发行版名称
# 可以通过输入命令列出已安装的 Linux 分发版并检查每个版本的 WSL:
wsl.exe --list --verbose
wsl -l -v
# 发行版的删除(操作不可逆)
wsl --unregister 发行版名称
# 关闭默认发行版
wsl --shutdown
# 关闭特定发行版
wsl -t 发行版名称
此外一切的操作跟ubuntu的是一样的~
网络环境
WSL中的linux如何实现跟windows的网络环境一模一样呢? 最基本的配置是:启用 WSL 2 的 镜像网络模式 (Mirror Networking Mode)
进入WSL setting中:
其他配置步骤:
- 在 Windows 中按下
Win + R,输入%UserProfile%并回车。 - 在打开的文件夹中寻找是否有
.wslconfig文件。如果没有,手动创建一个(注意后缀名不要有 .txt)。 - 使用记事本打开该文件,输入以下配置:
[wsl2]
networksMirror=true
dnsTunneling=true
firewall=true
autoProxy=true
networksMirror=true:核心设置。让 Linux 镜像 Windows 的网卡,IP 地址变得完全一致。dnsTunneling=true:解决 DNS 污染或解析失败问题。firewall=true:让 Windows 的防火墙规则自动应用到 WSL。autoProxy=true:如果 Windows 开启了系统代理,WSL 会自动同步。
为了让配置生效,保存后,用powerShell彻底关闭WSL
wsl --shutdown
重新打开检测ip:ifconfig(Linux)或ipconfig(Windows)
使用Antigravity
- 通过Antigravity打开项目(选择打开文件):
\\wsl$\Ubuntu-20.04\home\kwanwaipang\catkin_ws\FAPP\src