Codex 桌面版远程连接 Ubuntu进行开发
本文记录一种适合 Windows + VMware Ubuntu + C/C++ 项目 的开发方式:Windows 运行 Codex 桌面端,Codex 通过 SSH 连接 Ubuntu 虚拟机,在 Ubuntu 的项目目录中读代码、改代码、运行编译命令。Codex 官方远程连接流程也是先配置 SSH host,再在 Codex App 的 Settings → Connections 中添加或启用远程 SSH 主机,并选择远程项目文件夹。
1. 整体结构
Windows
├── Codex 桌面端
├── OpenSSH 客户端
└── VMware
└── Ubuntu
└── C/C++ 项目目录
最终效果:
Windows Codex 桌面端
↓ SSH
Ubuntu 虚拟机
↓
/home/ning/share/Item/kvStore/kvStore_selfLearning
↓
Codex 读取代码、修改代码、执行 gcc/make/cmake/gdb 等命令
2. Ubuntu 安装 SSH 服务
在 Ubuntu 虚拟机中执行:
sudo apt update
sudo apt install -y openssh-server
sudo systemctl enable --now ssh
查看 Ubuntu IP:
ip -4 addr
例如本文使用:
192.168.206.129
3. Windows 配置 SSH
先确认 Windows 有 OpenSSH:
ssh -V
如果 ssh 命令找不到,可以直接使用:
C:\Windows\System32\OpenSSH\ssh.exe -V
建议把下面目录加入 Windows 环境变量 Path:
C:\Windows\System32\OpenSSH
然后编辑 SSH 配置:
notepad $env:USERPROFILE\.ssh\config
写入:
Host ubuntu24.04/129
HostName 192.168.206.129
User ning
Port 22
IdentityFile C:/Users/27736/.ssh/id_ed25519
IdentitiesOnly yes
测试连接:
ssh ubuntu24.04/129
4. 配置免密码 SSH 登录
Codex 桌面端远程连接时,建议使用 SSH 密钥登录,不要依赖手动输入密码。
Windows 生成密钥:
ssh-keygen -t ed25519 -C "windows-to-ubuntu-codex" -f $env:USERPROFILE\.ssh\id_ed25519 -N ""
把公钥写入 Ubuntu:
type $env:USERPROFILE\.ssh\id_ed25519.pub | ssh ubuntu24.04/129 "mkdir -p ~/.ssh && chmod 700 ~/.ssh && cat >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys"
再次测试:
ssh ubuntu24.04/129
如果不再要求输入密码,说明免密登录成功。
5. Ubuntu 安装 Codex CLI
虽然使用的是 Windows Codex 桌面端,但远程 Ubuntu 上也需要安装 Codex CLI。Codex 官方 Linux/macOS 安装命令是:curl -fsSL https://chatgpt.com/codex/install.sh | sh。
在 Ubuntu 中执行:
curl -4 -fsSL https://chatgpt.com/codex/install.sh | sh
如果提示找不到 codex,加入 PATH:
echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bashrc
source ~/.bashrc
检查:
which codex
codex --version
Windows 端也要能通过 SSH 找到远程 Codex:
ssh ubuntu24.04/129 "bash -lc 'which codex && codex --version'"
正常输出类似:
/home/ning/.local/bin/codex
codex-cli 0.142.0
6. 处理 bubblewrap 沙箱提示
Ubuntu 24.04 上启动 Codex 时,可能出现 bubblewrap 或 user namespace 相关提示。Codex 官方说明,Codex 会在沙箱中读取和编辑当前 workspace,并在越过工作区边界或使用网络时请求确认。
推荐安装:
sudo apt update
sudo apt install -y bubblewrap apparmor-profiles apparmor-utils
如果仍提示 user namespace 限制,可加载 AppArmor profile:
sudo install -m 0644 \
/usr/share/apparmor/extra-profiles/bwrap-userns-restrict \
/etc/apparmor.d/bwrap-userns-restrict
sudo apparmor_parser -r /etc/apparmor.d/bwrap-userns-restrict
7. Codex 桌面端添加 Ubuntu 连接
打开 Windows Codex 桌面端:
设置 → 连接 → SSH
添加或启用:
ubuntu24.04/129
看到绿色状态后,说明 SSH 连接成功。
然后选择远程项目目录:
/home/ning/share/Item/kvStore/kvStore_selfLearning
注意 Linux 路径区分大小写,selfLearning 中的 L 必须大写。
8. 第一次使用相关指令
进入项目后,先不要直接让 Codex 修改代码。建议先验证目录:
请运行 pwd 和 ls,确认当前工作目录。暂时不要修改任何代码。
期望看到:
/home/ning/share/Item/kvStore/kvStore_selfLearning
然后再让 Codex 阅读项目:
请先阅读当前 C 项目结构,说明每个文件的作用,暂时不要修改任何代码。
如果要修改代码,建议明确范围:
请只修改 xxx.c 和 xxx.h,不要修改其他文件。修改前先说明修改计划,等我确认后再改。
9. 推荐开发习惯
在让 Codex 修改项目之前,先用 Git 保存现场:
cd 具体目录地址
git status
git add .
git commit -m "checkpoint before codex task"
如果 Codex 改坏了,可以恢复:
git restore .
10. 常见问题
1. Codex 桌面端检测不到 SSH
确认 Windows 能执行:
ssh -V
ssh ubuntu24.04/129
并确认 SSH config 在:
C:\Users\27736\.ssh\config
2. Permission denied
通常是密钥没配置好。检查 Ubuntu 权限:
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys
3. 输入 ssh 失败,但完整路径能用
把下面路径加入 Windows Path:
C:\Windows\System32\OpenSSH
4. Codex 找不到远程 codex 命令
Ubuntu 中执行:
echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bashrc
source ~/.bashrc
Windows 测试:
ssh ubuntu24.04/129 "bash -lc 'which codex && codex --version'"
总结
最终使用流程是:
1. Ubuntu 开启 SSH
2. Windows 配置 SSH host:ubuntu24.04/129
3. Windows 配置 SSH 密钥免密码登录
4. Ubuntu 安装 Codex CLI
5. Codex 桌面端添加 SSH 主机
6. 选择 Ubuntu 项目目录
7. 在 Windows Codex 桌面端中远程开发 Ubuntu 项目
更多推荐




所有评论(0)