上传和下载文件
AICoder 是智算云平台上的一个云端辅助开发环境,提供免费的 CPU 实例,专为管理和辅助 AI 工作负载而设计。
AICoder 支持通过跳板机使用 scp、sftp 和 rsync 在本地与云端实例间传输文件,帮助您管理数据集、代码等资源。本文将介绍如何使用这些工具进行文件和文件夹的上传与下载。
准备工作
- 您已成功创建并启动 AICoder 实例。
- 您已将 SSH 公钥添加到 AICoder 实例。详见 SSH 公钥管理。
快捷获取文件传输命令
一键复制
登录智算云平台,打开 AICoder Shell,在右上角点击密钥按钮,在弹窗中获取 scp / rsync 等文件传输命令。

SCP 上传命令格式解析:
scp -J <ssh-jumper> localfile root@<aicoder-id>:/remotefileRsync 上传命令格式解析:
rsync -av -P --partial-dir=.rsync-part -e "ssh -J <ssh-jumper>" localfile root@<aicoder-id>:/remotefile<ssh-jumper>为跳板机地址。请注意替换为平台提供的跳板机地址,需以弹窗中展示的地址为准。root为默认用户名(旧版实例可能使用其他用户名,请重启实例更新)。<aicoder-id>为 AICoder 实例 ID(如aic-c8lkg5b88mieqw6b)。
注意
- 建议您直接复制弹窗中拼接好的命令,修改对应源文件和目标文件目录即可开始上传,无需手动拼接上传命令。
- AICoder 实例 ID 在重置或重启后保持不变,但如果更换可用区,则 AICoder 实例不同。
- 新手提示:文件传输命令需在本地计算机运行,而非 AICoder 实例上。
手动拼接命令
您也可以自行自行拼接命令,以下是拼接命令需要的关键字段。
<ssh-jumper>为跳板机地址。请注意替换为平台提供的跳板机地址,需以弹窗中展示的地址为准。root为默认用户名(旧版实例可能使用其他用户名,请重启实例更新)。<aicoder-id>为 AICoder 实例 ID(如aic-c8lkg5b88mieqw6b)。
使用 scp 传输文件和文件夹
scp 适合快速传输文件或文件夹,通过跳板机操作如下:
上传文件:
scp -J ssh-jumper.cloud.infini-ai.com localfile username@aicoder_id:/remotefile示例:
scp -J ssh-jumper.cloud.infini-ai.com ~/Desktop/v2.jpg root@aic-c8lkg5b88mieqw6b:/home/jane下载文件:
scp -J ssh-jumper.cloud.infini-ai.com username@aicoder_id:/remotefile localfile示例:
scp -J ssh-jumper.cloud.infini-ai.com root@aic-c8lkg5b88mieqw6b:/home/jane/v2.jpg ~/Desktop传输文件夹(使用 -r 递归复制):
上传:
shellscp -r -J ssh-jumper.cloud.infini-ai.com ~/Desktop/myfolder root@aic-c8lkg5b88mieqw6b:/home/jane下载:
shellscp -r -J ssh-jumper.cloud.infini-ai.com root@aic-c8lkg5b88mieqw6b:/home/jane/myfolder ~/Desktop
注意
-r 选项会覆盖目标位置的同名文件,请谨慎使用。
传输大文件
在传输大文件时,可以使用以下方法确保传输过程不会因网络中断或退出 shell 而中断。
注意
在租户在多个可用区均有资源池的情况下,一个用户可能有多个 AICoder 实例。在传输大文件前,请确保使用正确的 aicoder_id,避免误传。
使用 rsync 传输大文件
在向智算云平台传输数据时,scp / sftp 是常用的命令行工具。但是如果对断点续传有比较高的要求,rsync 可能是更好的选择。
- 一个典型场景是文件夹包含大量小文件和几个大文件,并且网络带宽有限,那么
rsync的增量传输和断点续传功能能够有效地减少带宽使用和传输时间。 - AICoder 中已内置 rsync,无需自行安装。
- AICoder 已直接提供一键复制可 rsync 上传命令。
完整的 rsync 命令示例如下。该命令会将当前本地的 /path/to/local/directory 目录传输到 AICoder aic-c7vyfhj5usmnsows 挂载的高性能存储 /mnt/public 目录下,并同时启用了传输进度展示、压缩、和断点续传能力。
rsync -avzP --partial-dir=.rsync-partial -e "ssh -J <ssh-jumper>" /path/to/local/directory root@<aicoder-id>:/mnt/public-a保持文件属性,-v显示详情,-P显示进度并支持续传。<ssh-jumper>为 SSH 跳板机地址。请务必替换为 AICoder Shell 中展示的真实跳板机地址。/path/to/local/directory为本地目录路径,上传时需替换为直接替换真实目录。<aicoder-id>为 AICoder ID,例如aic-c7vyfhj5usmnsows。/mnt/public为共享高性能存储目录,可替换为实际的目标路径。
使用 tmux 实现后台传输
tmux 是个强大的终端复用器,可以保持会话在后台运行,即使连接断开也不会中断传输任务。
启动一个新的
tmux会话:shelltmux在
tmux会话中执行scp/rsync等耗时操作的命令。按
Ctrl+B然后按D将会话分离。要重新连接到
tmux会话:shelltmux ls tmux attach-session -t <session-id>其中
<session-id>需要替换为tmux ls命令列出的会话 ID。
工具对比
选择合适的工具取决于具体需求:
| 特性 | scp | sftp | rsync |
|---|---|---|---|
| 适用场景 | 快速单次文件/文件夹传输 | 频繁文件操作/管理 | 备份、同步,增量传输 |
| 命令结构 | 简单直接 | 稍复杂 | 灵活,选项丰富 |
| 交互性 | 非交互式 | 交互式 shell | 非交互式,但可通过选项实现复杂操作 |
| 文件管理 | 不提供 | 提供,支持导航 | 不提供文件管理,专注于同步 |
| 文件夹复制 | 支持递归复制(-r 选项) | 支持 | 内置支持递归,高效 |
| 文件传输 | 适合大文件传输 | 适合小文件/文件夹传输 | 适合大文件和增量传输,断点续传 |
| 文件操作 | 无 | 支持部分文件传输命令(put、get、mput、mget) | 支持更多同步选项,如删除、权限保持等 |
| 优点 | 简单命令,递归复制,适合大文件传输 | 交互式管理,部分文件命令,适合小文件/文件夹传输 | 增量传输,效率高,功能强大,灵活 |
| 缺点 | 不适用于交互式文件管理 | 更多命令需学习,大文件传输效率或不如scp | 选项较多,学习曲线稍陡峭 |
| 效率 | 简单快速,单次大文件传输 | 交互操作更方便,但原始传输速度或较低 | 增量传输大幅提高效率,尤其在同步场景下 |
提示
单次传输用 scp,频繁操作选 sftp,大文件或同步用 rsync。