本文记录了 Windows 系统上 WSL2 高级设置选项参数的详细配置说明。
前言
WSL2 可以在 Windows 系统上提供无缝高效的 Linux 环境体验。
但是默认情况下,WSL2 中的 Linux 子系统资源分配(CPU 、内存、网络)可能不满足开发人员的需求。
微软提供了两种 WSL 设置的配置文件类型,其简单区别如表格所示:
配置文件 | 文件位置 | 适用范围 |
---|---|---|
.wslconfig |
Windows 用户目录下 | 作用于 WSL2 中的全部 Linux 发行版(仅 WSL2 可用) |
wsl.conf |
实际为 Linux 的 /etc/wsl.conf 文件 |
作用于 WSL 中的单独 Linux 发行版( WSL1 和 WSL2 均可用) |
根据实际使用场景,本文采用的是 .wslconfig
全局配置的方式。
Windows 版本 : Windows 11 家庭版,22H2
可用配置
WSL2 的全局配置需要使用 .wslconfig
文件。
目前 .wslconfig
文件内容可分为主要配置和实验性配置,这两者分别以 [wsl2]
和 [experimental]
作为区块名。
若想 .wslconfig
配置生效,需要把 .wslconfig
文件存放至 Windows 的用户目录下(该文件默认不存在)。
建立配置
- 在 Windows 终端执行以下命令打开用户目录
- 在 Windows 的用户目录下创建名为
.wslconfig
的文件,然后编辑.wslconfig
文件的内容即可
注意:
使用.wslconfig
全局配置需要 Windows 版本大于等于 19041 以及使用 WSL2 运行 Linux 发行版
执行命令wsl --shutdown
关闭 WSL2 中的发行版后才能使.wslconfig
配置生效(完全关闭 WSL2 中的 Linux 大约需要 8 秒)
主要配置
- 以下为
.wslconfig
文件中可用的主要配置(该部分以[wsl2]
作为区块名)
注意:
带有*
号的配置仅能在 Windows 11 系统上使用
带有**
号的配置仅能在 Windows 11 22H2 及以上版本使用
实验性配置
- 以下为
.wslconfig
文件中可用的实验性配置(该部分以[experimental]
作为区块名)
注意:
带有*
号的配置仅能在 Windows 11 系统上使用
带有**
号的配置仅能在 Windows 11 22H2 及以上版本使用
配置示例
本部分展示了 .wslconfig
文件的官方示例和我在使用的个人示例,可以根据示例配置自行修改并应用。
官方示例
- 以下为微软官方提供的
.wslconfig
文件配置内容示例
个人示例
- 以下为我个人使用的
.wslconfig
文件配置内容示例
总结
文中的示例仅用于 .wslconfig
配置文件, .wslconfig
配置文件作用于 WSL2 中的所有 Linux 发行版。
若在 .wslconfig
文件中设置 memory=2GB
,则 WSL2 中的所有 Linux 发行版将共用 2GB 内存。
.wslconfig
配置文件需要遵循 INI 语法。