如何用vscode连接远程WSL进行开发_在Windows下使用Linux环境【教程】

11次阅读

VS Code 原生支持直接连接 WSL,需在已启动的 WSL 终端中执行 code . 打开项目,自动启用 Remote – WSL;若误开 windows 版本则路径显示 /mnt/c/… 且左下角无 WSL 标识,应关闭所有窗口后重试。

如何用vscode连接远程WSL进行开发_在Windows下使用Linux环境【教程】

VS Code 直接连接 WSL 不需要额外配置 ssh,官方已原生支持——关键在于用对启动方式和确保 WSL 发行版处于运行状态。

code 命令从 WSL 终端打开 VS Code

这是最稳定、最推荐的方式。VS Code 会自动识别当前 WSL 环境并启用 Remote – WSL 扩展(如未安装会提示)。

  • 在 WSL 终端中执行:code .(打开当前目录)或 code /home/username/project(指定路径)
  • 首次运行会自动下载并安装 VS Code Server 到 WSL 的 ~/.vscode-server
  • 必须确保 WSL 已启动:若执行 code 报错 WSL distribution not found,先在 PowerShell 运行 wsl -l -v 确认发行版状态,再用 wsl -d ubuntu(替换为你实际发行版名)手动启动
  • 不要在 windows CMD/PowerShell 中运行 code .,那样打开的是 Windows 版本,无法访问 WSL 文件系统

远程窗口里文件路径显示为 /mnt/c/... 而不是 /home/...

这是典型“误开 Windows 版 VS Code”的表现:你看到的其实是 Windows 文件系统映射,而非 WSL 原生路径。

  • 检查左下角状态栏:如果显示 WSL: Ubuntu(或你的发行版名),说明连接成功;若显示 Windows 或无 WSL 标识,则当前是本地模式
  • 关闭所有 VS Code 窗口,**务必在 WSL 终端内重新执行 code .**
  • 避免双击 Windows 资源管理器里的文件夹打开 VS Code——这永远走 Windows 路径
  • VS Code 设置中禁用 remote.WSL.autoStart 可能导致连接失败,保持默认 true 即可

扩展在 WSL 里不生效或提示“已安装但不可用”

Remote – WSL 模式下,扩展需明确标记为“支持远程”且安装到 WSL 环境,而非 Windows 主体。

  • 在 Remote – WSL 窗口中打开扩展面板(Ctrl+Shift+X),顶部会显示 Extensions for WSL: Ubuntu
  • 搜索并安装扩展时,留意右上角是否出现 Install on WSL: Ubuntu 按钮;若只看到 Install,说明该扩展不支持远程或尚未适配
  • C/c++python、Prettier 等主流扩展均支持,但部分依赖 Windows GUI 或注册表的扩展(如某些主题预设、PowerShell 集成)会灰显不可用
  • 如需调试 Python,确保在 WSL 中已安装 python3pip3,并在 VS Code 设置中将 python.defaultInterpreterPath 设为 /usr/bin/python3

真正容易被忽略的点是:WSL2 默认启用 systemd 支持(Windows 11 22H2+ + WSLg),但多数开发场景并不需要;若你手动启用了 systemd=true 却没配置好,反而会导致 code 启动超时或卡死——保持默认不启用即可。

text=ZqhQzanResources