Rclone: 支持S3云存储界命令行工具

发布时间: 更新时间: 总字数:1184 阅读时间:3m 作者:IP:上海 网址

rclone 是一款管理云存储文件的命令行程序,它支持几十种云存储(如 Google Drive, OneDrive, Amazon S3, WebDAV, 阿里云盘等)

介绍

  • Rclone 是一个用于管理云存储上的文件的命令行程序,它是云供应商 Web 存储接口的功能丰富的替代方案,超过 70 种云存储产品支持 rclone,包括 S3 对象存储、企业和消费者文件存储服务以及标准传输协议
  • Rclone 具有与 unix 命令 rsync、cp、mv、mount、ls、ncdu、tree、rm 和 cat 等价的强大云功能

以下是在 Ubuntu 22.04 上安装、配置和使用 Rclone 的完整指南:

安装 Rclone

虽然可以通过 Ubuntu 默认的 APT 仓库安装 (sudo apt install rclone),但由于各个云盘的 API 更新频繁,强烈推荐使用官方脚本安装最新版本

打开终端,运行以下命令:

bash
sudo -v ; curl https://rclone.org/install.sh | sudo bash

这会自动下载并安装适用于系统架构的最新 Rclone 版本。

配置云存储 (Remote)

安装完成后,需要通过配置向导将 Rclone 连接到云盘。

  1. 运行配置命令:
    bash
    rclone config
  2. 会看到一个菜单,输入 n (New remote) 创建一个新的连接。
  3. name: 给云盘起个名字(例如 gdriveonedrive)。
  4. Storage: 终端会列出几十种支持的网盘,找到需要的网盘前面的数字编号并输入。
  5. client_id / client_secret: 通常直接按回车留空(使用 rclone 默认配置即可)。
  6. Edit advanced config?: 输入 n(不需要编辑高级选项)。
  7. Use auto config?:
    • 如果在带有图形界面的 Ubuntu 电脑上操作,输入 y,它会自动弹出浏览器让你登录网盘并授权。
    • 如果在没有图形界面的云服务器 (SSH) 上操作,输入 n。系统会提示在本地电脑上下载 Rclone,运行一行 rclone authorize xxx`` 命令获取授权 Token,然后将 Token 粘贴回服务器终端。
  8. 最后确认无误后,输入 y 保存配置,然后输入 q 退出。

常用基本命令

配置好之后(假设你起的名字叫 mydrive),就可以开始管理文件了。注意:网盘名称后面必须加上冒号 :

  • 列出根目录下的文件夹:
    bash
    rclone lsd mydrive:
  • 列出目录下的所有文件:
    bash
    rclone ls mydrive:文件夹名
  • 复制文件/文件夹到网盘:
    bash
    rclone copy /本地/路径/文件 mydrive:网盘/目标文件夹
    加上 -P 可以显示进度条:rclone copy -P /local/path mydrive:backup
  • 同步目录(将本地目录完全同步到网盘):
    bash
    rclone sync -P /本地/路径 mydrive:网盘/目标文件夹
    rclone sync /local/path remote:backup --exclude "*.log"
    ⚠️警告:sync 会让目标目录和源目录保持一致,目标目录中多余的文件会被删除
  • 从网盘下载文件到本地:
    bash
    rclone copy -P mydrive:网盘/路径 /本地/目标路径

将网盘挂载为本地磁盘(进阶/极力推荐)

Rclone 可以将云盘直接挂载到 Ubuntu 的文件系统中,像访问本地硬盘一样访问云盘里的文件。

  1. 安装 fuse (Ubuntu 22.04 默认使用 fuse3):

    bash
    sudo apt update
    sudo apt install fuse3
  2. 创建一个挂载点(例如 /mnt/mycloud):

    bash
    sudo mkdir -p /mnt/mycloud
    sudo chown $USER:$USER /mnt/mycloud
  3. 执行挂载命令:

    bash
    rclone mount mydrive:/ /mnt/mycloud --daemon --vfs-cache-mode writes

    参数解释:

    • --daemon: 在后台运行挂载,关闭终端也不会断开。
    • --vfs-cache-mode writes: 开启 VFS 缓存。这是推荐设置,能大幅提升文件写入和修改的兼容性。
  4. 检查是否挂载成功:

    bash
    df -h

    应该能看到类似 mydrive: 的条目。现在可以用普通的文件管理器或 cd /mnt/mycloud 进去看云盘文件了。

  5. 卸载网盘:

    bash
    fusermount -qzu /mnt/mycloud

总结

  • 配置rclone config
  • 传输rclone copy -P 本地 远程:
  • 挂载rclone mount 远程: /挂载点 --daemon --vfs-cache-mode writes

参考

  1. https://rclone.org/docs/