使用Rclone同步文件到Cloudflare R2

发布时间: 2024-11-29 热度: 4847

Rclone 是一个强大的命令行程序,用于管理和同步文件到各种云存储服务。本文将详细介绍如何安装和配置Rclone,以便将文件同步到Cloudflare R2存储服务。

安装Rclone

  1. 安装Rclone:
    以debian为例:
    sudo apt install rclone
    
  2. 验证安装:
    打开终端或命令提示符,输入以下命令检查Rclone是否安装成功:
    rclone version
    

配置Rclone以连接Cloudflare R2

在配置Rclone之前,需要先在Cloudflare R2管理界面创建API令牌,并获取必要的访问密钥和端点信息。

管理R2 API令牌

  1. 创建API令牌:

    • 登录到Cloudflare账户,进入R2存储管理界面。
    • 创建一个新的API令牌,设置适当的权限(需要读和写权限)。
    • 指定要访问的存储桶和所需的时间期限。
  2. 保存API令牌信息:

    • 确保记录下API令牌的access_key_idsecret_access_key,这些信息在创建完成后只会显示一次。
  3. 获取存储桶的端点:

    • 点击目标存储桶,进入存储桶的设置页面。
    • 在存储桶详细信息里找到“S3 API”项,去掉最后的路径部分,得到端点地址。
    • 示例:endpoint = https://3f33d3f3g3cx33fds3f31f.r2.cloudflarestorage.com/

修改Rclone配置文件

  1. 编辑Rclone配置文件:
    编辑.config/rclone/rclone.conf配置文件
    在Windows上路径为C:\Users\<YourUsername>\.config\rclone\rclone.conf

  2. 添加配置项:
    在配置文件中添加以下内容,并将相应的access_key_idsecret_access_keyendpoint替换为你的实际值:

    [r2]
    type = s3
    provider = Cloudflare
    access_key_id = <your_access_key_id>
    secret_access_key = <your_secret_access_key>
    endpoint = <your_endpoint>
    

    示例:

    [r2]
    type = s3
    provider = Cloudflare
    access_key_id = a61111d64a7cec3594rrrr46931995a39
    secret_access_key = 967180217f1ea1e777274b079c5821136a29112f2786f8b32547356b00de563
    endpoint = https://3f33d3f3g3cx33fds3f31f.r2.cloudflarestorage.com/
    

使用Rclone同步文件

配置完成后,可以使用Rclone命令将文件同步到指定的Cloudflare R2存储桶。以下是一些常用命令:

  • 同步本地文件到R2存储桶: (bucket_name是存储桶名字)

    rclone sync /path/to/local/folder r2:<bucket_name>/path/in/r2
    

    示例:

    rclone sync /home/user/documents r2:mybucket/documents
    
  • 从R2存储桶同步文件到本地:

    rclone sync r2:<bucket_name>/path/in/r2 /path/to/local/folder
    

    示例:

    rclone sync r2:mybucket/documents /home/user/documents
    
  • 列出R2存储桶中的文件:

    rclone ls r2:<bucket_name>/path/in/r2
    

    示例:

    rclone ls r2:mybucket/documents
    

示例完整操作流程

  1. 创建存储桶:

    • 在Cloudflare R2管理界面创建一个名为mybucket的存储桶。
  2. 获取并保存API令牌和endpoint:

    • access_key_id:a61111d64a7cec359467c66931995a39
    • secret_access_key:967180217f1ea1e21c5f49b079c5821136a29112f2786f8b32547356b00de563
    • endpoint:https://3f33d3f3g3cx33fds3f31f.r2.cloudflarestorage.com/
  3. 配置Rclone:
    编辑.config/rclone/rclone.conf文件,添加以下内容:

    [r2]
    type = s3
    provider = Cloudflare
    access_key_id = a61111d64a7cec359467c66931995a39
    secret_access_key = 967180217f1ea1e21c5f49b079c5821136a29112f2786f8b32547356b00de563
    endpoint = https://3f33d3f3g3cx33fds3f31f.r2.cloudflarestorage.com/
  4. 同步文件:

    • 将本地文件同步到mybucket存储桶:

      rclone sync /home/user/documents r2:mybucket/documents
      
    • mybucket存储桶同步文件到本地:

      rclone sync r2:mybucket/documents /home/user/documents
      
    • 列出mybucket存储桶中的文件:

      rclone ls r2:mybucket/documents

请在下方留下您的评论.加入TG吹水群