默认情况下,启动 WSL
后需要保持启动窗口(终端)保持开启,如果关闭这个终端,WSL
会几秒后自动退出,如果需要 WSL
作为开发环境或一些 docker
服务需要常驻运行,这种前台运行的模式显然是不合适的,应该让 WSL
随系统自动启动并保持在后台运行。
后台运行
在命令行下使用 wsl -l -v
得到想要启动的 WSL
版本,比如我的机器上是 Ubuntu-22.04
,后面命令中使用 Ubuntu-22.04
来代表目标 WSL
版本。
(base) PS C:\Users\kb> wsl -l -v
NAME STATE VERSION
* Ubuntu-22.04 Running 2
新建一个 wsl-d.vbs
文件(文件命名随意)作为启动脚本,里面内容如下:
set ws=wscript.CreateObject("wscript.shell")
ws.run "wsl -d Ubuntu-22.04", 0
后续启动 WSL
时直接运行这个启动脚本就会让 WSL
在后台运行了。
退出
退出还是正常的就可以了:
# 直接退出默认 wsl
wsl --shutdown
# 指定 wsl 退出
wsl -t Ubuntu-22.04
开机启动
如果想要在 windows
启动时就直接后台运行 WSL
。
快捷键 WIN + R
运行,输入 shell:startup
打开启动目录后,把上面哪个 wsl-d.vbs
脚本文件复制进去就就可以了。