Mac 上用 Codex 远程连接 Ubuntu|SSH 配置 + 免密登录
·
Mac 上通过 Codex 远程连接 Ubuntu。
配置完成之后,可以直接在 Mac 的 Codex 中操作 Ubuntu 里的终端、项目代码和开发环境。
实际配置过程。
1. Ubuntu 安装并开启 SSH
在 Ubuntu 终端执行:
sudo apt update
sudo apt install openssh-server
启动 SSH:
sudo systemctl enable ssh
sudo systemctl start ssh
查看 SSH 状态:
sudo systemctl status ssh
如果显示:
active (running)
说明 SSH 服务已经正常启动。
2. 查看 Ubuntu 用户名和 IP
查看用户名:
whoami
查看 IP:
hostname -I
例如:
用户名:111
IP:111.11.11.11
3. 在 Mac 测试 SSH 连接
Mac 打开终端,输入:
ssh 111@111.11.11.11
第一次连接可能会询问是否继续连接,输入:
yes
然后按照提示完成身份验证。
如果可以成功进入 Ubuntu 终端,说明:
Mac → SSH → Ubuntu
这一层连接已经打通。
4. 在 Mac 配置 SSH 免密登录
在 Mac 终端执行:
ssh-keygen -t ed25519
一路按 Enter 即可。
默认会生成:
~/.ssh/id_ed25519
~/.ssh/id_ed25519.pub
其中:
id_ed25519是私钥,不要泄露。
id_ed25519.pub是公钥,可以放到 Ubuntu 上。
打开 Mac 终端:
nano ~/.ssh/config
我的配置类似:
Host ubuntu-pc
HostName 111.11.11.11
User 111
IdentityFile ~/.ssh/id_ed25519
IdentitiesOnly yes
这里几个参数分别表示:
Host ubuntu-pc 给 Ubuntu 设置一个连接别名。
HostName 111.11.11.11 Ubuntu 电脑的 IP 地址。
User 111 Ubuntu 登录用户名。
IdentityFile ~/.ssh/id_ed25519 指定 Mac 使用的 SSH 私钥文件。
IdentitiesOnly yes 让 SSH 优先只使用上面指定的这个密钥进行身份认证。
所以配置完成之后,我就可以直接使用:
ssh ubuntu-pc
来连接 Ubuntu, 也可以写完整的:
ssh 111@111.11.11.11
如果可以正常进入 Ubuntu,说明 SSH 配置没有问题。
实际配置过程:
Mac 上已有/生成 SSH 密钥
↓
Mac 的 ~/.ssh/config 指定私钥
↓
配置 ubuntu-pc SSH 主机
↓
Mac 测试 SSH 连接
↓
Codex 读取 SSH 主机配置
不用不是单独在 Ubuntu 端手动配置密钥文件。
5. 在 Codex App 中添加 Ubuntu
打开 Codex App,进入 SSH 连接设置。
添加:
ubuntu-pc
这里的 ubuntu-pc 就是刚刚在:
~/.ssh/config
里面配置的:
Host ubuntu-pc
Codex 官方目前支持基于 SSH 的远程连接,并可以读取 ~/.ssh/config 中定义的 SSH Host 别名来添加远程主机。(OpenAI开发者)
可以先在 Mac 测试:
ssh ubuntu-pc
或者:
ssh 111@111.11.11.11
Mac 终端 SSH 能正常连接后,再配置 Codex 会比较顺利。
6. 在 Codex 中验证连接
添加 Ubuntu SSH 主机后,可以让 Codex执行:
在远程环境 ssh 111@111.11.11.11 中执行:
whoami
这里最终应返回:
111
说明:
Codex
↓
SSH
↓
Ubuntu
已经真正连接成功。
还可以继续测试:
pwd
hostname
ls -lah
查看远程 Ubuntu 当前目录、主机名和文件。
7. 后续就可以用 Codex 操作 Ubuntu
例如:
在远程环境 111@111.11.11.11 中,
进入 /home/111/项目目录,
分析整个项目的代码结构。
或者:
在 Ubuntu 远程环境中运行当前 Python 项目,
如果出现报错,分析原因并修改。
之后就可以在 Mac 上通过 Codex 操作 Ubuntu 里的:
Python
C++
ROS
CUDA
Git
模型训练
代码调试
项目文件
配置流程是:
Ubuntu 开启 SSH
↓
查看 Ubuntu 用户名和 IP
↓
Mac 测试 SSH 连接
↓
Mac 配置 ~/.ssh/config
↓
指定 IdentityFile ~/.ssh/id_ed25519
↓
设置 SSH 主机别名 ubuntu-pc
↓
Codex 添加 ubuntu-pc
↓
Codex 指定远程 SSH 环境
↓
执行 whoami
↓
返回 111
↓
连接成功
更多推荐



所有评论(0)