rclone文件传输技能Skill rclone

这个技能通过rclone工具实现文件上传、同步和管理到多种云存储服务,如S3、Cloudflare R2、Google Drive等,适用于备份、数据传输和自动化运维场景。关键词:rclone、文件传输、云存储同步、备份、数据管理、DevOps。

DevOps 0 次安装 0 次浏览 更新于 3/9/2026

名称: rclone 描述: 使用rclone上传、同步和管理跨云存储提供商的文件。适用于上传文件(图像、视频、文档)到S3、Cloudflare R2、Backblaze B2、Google Drive、Dropbox或任何S3兼容存储。触发于“上传到S3”、“同步到云”、“rclone”、“备份文件”、“上传视频/图像到存储桶”或请求将文件传输到远程存储。

rclone 文件传输技能

设置检查(始终先运行)

在任何rclone操作之前,验证安装和配置:

# 检查rclone是否安装
command -v rclone >/dev/null 2>&1 && echo "rclone已安装:$(rclone version | head -1)" || echo "未安装"

# 列出配置的远程存储
rclone listremotes 2>/dev/null || echo "未配置远程存储"

如果rclone未安装

指导用户安装:

# macOS
brew install rclone

# Linux(脚本安装)
curl https://rclone.org/install.sh | sudo bash

# 或通过包管理器
sudo apt install rclone  # Debian/Ubuntu
sudo dnf install rclone  # Fedora

如果未配置远程存储

通过交互式配置引导用户:

rclone config

常见提供商设置快速参考:

提供商 类型 关键设置
AWS S3 s3 access_key_id、secret_access_key、region
Cloudflare R2 s3 access_key_id、secret_access_key、endpoint (account_id.r2.cloudflarestorage.com)
Backblaze B2 b2 account (keyID)、key (applicationKey)
DigitalOcean Spaces s3 access_key_id、secret_access_key、endpoint (region.digitaloceanspaces.com)
Google Drive drive OAuth流程(打开浏览器)
Dropbox dropbox OAuth流程(打开浏览器)

示例:配置Cloudflare R2

rclone config create r2 s3 \
  provider=Cloudflare \
  access_key_id=YOUR_ACCESS_KEY \
  secret_access_key=YOUR_SECRET_KEY \
  endpoint=ACCOUNT_ID.r2.cloudflarestorage.com \
  acl=private

示例:配置AWS S3

rclone config create aws s3 \
  provider=AWS \
  access_key_id=YOUR_ACCESS_KEY \
  secret_access_key=YOUR_SECRET_KEY \
  region=us-east-1

常见操作

上传单个文件

rclone copy /path/to/file.mp4 remote:bucket/path/ --progress

上传目录

rclone copy /path/to/folder remote:bucket/folder/ --progress

同步目录(镜像,删除已移除的文件)

rclone sync /local/path remote:bucket/path/ --progress

列出远程内容

rclone ls remote:bucket/
rclone lsd remote:bucket/  # 仅目录

检查将传输的内容(干运行)

rclone copy /path remote:bucket/ --dry-run

有用标志

标志 用途
--progress 显示传输进度
--dry-run 预览而不传输
-v 详细输出
--transfers=N 并行传输(默认4)
--bwlimit=RATE 带宽限制(例如 10M
--checksum 通过校验和比较,而非大小/时间
--exclude="*.tmp" 排除模式
--include="*.mp4" 仅包含匹配项
--min-size=SIZE 跳过小于SIZE的文件
--max-size=SIZE 跳过大于SIZE的文件

大文件上传

对于视频和大文件,使用分块上传:

# S3多部分上传(自动用于>200MB)
rclone copy large_video.mp4 remote:bucket/ --s3-chunk-size=64M --progress

# 恢复中断的传输
rclone copy /path remote:bucket/ --progress --retries=5

验证上传

# 检查文件是否存在并匹配
rclone check /local/file remote:bucket/file

# 获取文件信息
rclone lsl remote:bucket/path/to/file

故障排除

# 测试连接
rclone lsd remote:

# 调试连接问题
rclone lsd remote: -vv

# 检查配置
rclone config show remote