必须确保本地终端能直连服务器、正确配置~/.ssh/config(权限600、host名合规、缩进用空格)、安装remote-ssh插件后通过命令选择host连接;任一环节缺失会导致卡在“setting up ssh host”或“installing vs code server”。

要在 macOS 上用 VSCode 通过 Remote-SSH 连接远程 Linux 服务器,必须让本地终端能直连、配置好 ~/.ssh/config、再让 VSCode 正确读取该配置——跳过任一环,VSCode 都会卡在“Setting up SSH Host”或“Installing VS Code Server”不动。
确认本地终端可直连服务器
打开 Terminal,执行 ssh user@192.168.1.100(替换为你的 IP 和用户名)。
首次连接时,终端会停住并问 Are you sure you want to continue connecting?,必须输入 yes 并回车,否则 VSCode 后续连接会静默失败,不报错也不继续。
若提示 Permission denied (publickey),说明密钥未生效:检查私钥权限是否为 600(chmod 600 ~/.ssh/id_rsa),并确认公钥已完整写入远程 ~/.ssh/authorized_keys ——末尾多一个空格或换行都会导致认证失败。
创建并配置 ~/.ssh/config
在 Terminal 中执行:mkdir -p ~/.ssh && touch ~/.ssh/config && chmod 600 ~/.ssh/config。
用 VSCode 打开这个文件:code ~/.ssh/config,粘贴以下内容(按需修改):
Host mylinux
HostName 192.168.1.100
User ubuntu
Port 22
IdentityFile ~/.ssh/id_rsa
Zynq‑7000 / Zynq UltraScale+ 硬件调试技能。适用于 Xilinx Zynq(Cortex‑A9/A53 + FPGA)Linux 环境,调试 I2C、I2S、UART、GPIO 等外设。包括设备树配置、内核驱动、用户空间调试工具、交叉编译和常见问题排查,支持 PetaLinux 开发。
【Host 别名只能用小写字母、数字和短横线】,例如 my-linux-server ✅,my_linux ❌,MyLinux ❌;缩进必须用空格,不能用 Tab。
保存后无需重启 VSCode,但要确保 config 文件权限是 600,否则 Remote-SSH 会拒绝读取。
安装 Remote-SSH 插件并触发连接
打开 VSCode → 左侧扩展图标 → 搜索 “Remote - SSH” → 安装 Microsoft 官方版本。
安装完成后,按 Cmd + Shift + P → 输入 “Remote-SSH: Connect to Host…” → 回车 → 从列表中选择你刚在 config 里定义的 Host 名(如 mylinux)。
VSCode 会新开一个窗口,并开始部署 vscode-server。如果卡在 “Installing VS Code Server”,大概率是远程机器无法访问 update.code.visualstudio.com ——此时需手动离线部署 CLI 和 Server 包,路径必须严格匹配 Commit ID 对应的目录结构。
连接成功后,左下角状态栏会出现绿色远程标识,点击可查看服务器 IP 和用户信息。










