本文用于在 MinIO、阿里云 OSS 等对象存储之间同步数据,适合做对象存储迁移、备份和数据整理。
安装 rclone
官方安装文档:
1 | https://rclone.org/install/ |
Linux 安装脚本:
1 | sudo -v |
配置文件位置
rclone 默认配置文件通常在:
1 | ~/.config/rclone/rclone.conf |
可通过命令交互式配置:
1 | rclone config |
S3 兼容配置示例
MinIO 示例:
1 | [minio] |
阿里云 OSS 示例:
1 | [aliyun-oss] |
请不要把真实密钥提交到 Git 仓库。迁移完成后也要检查服务器上的配置文件权限。
同步命令
从 MinIO 同步到阿里云 OSS:
1 | rclone sync minio:bucket aliyun-oss:bucket |
常用参数:
| 参数 | 作用 |
|---|---|
--dry-run |
只预演,不真正执行 |
--progress |
显示传输进度 |
--transfers 8 |
并发传输数量 |
--checkers 16 |
并发检查数量 |
--log-file rclone.log |
输出日志文件 |
建议先预演:
1 | rclone sync minio:bucket aliyun-oss:bucket --dry-run |
确认无误后再正式执行:
1 | rclone sync minio:bucket aliyun-oss:bucket --progress --log-file rclone.log |
sync 和 copy 的区别
| 命令 | 行为 |
|---|---|
rclone copy |
只复制新增或变化的文件,不删除目标端多余文件 |
rclone sync |
让目标端和源端保持一致,会删除目标端多余文件 |
如果不确定目标端是否可以删除文件,优先使用 copy 或 sync --dry-run。