Featured image of post RClone,一个命令行程序,管理超过70个云存储产品,可帮助你实现文件备份,云数据镜像,数据迁移,本地存储,云储存合二为一

RClone,一个命令行程序,管理超过70个云存储产品,可帮助你实现文件备份,云数据镜像,数据迁移,本地存储,云储存合二为一

Rclone 使用指南

介绍

Rclone 是一个强大的命令行工具,旨在管理和同步文件到多种云存储服务及本地文件系统。它支持超过 70 种不同的云存储提供商,如 Google Drive、Dropbox、Amazon S3、OneDrive 等。

主要特点:

  • 多种存储支持:支持超过 70 种不同的云存储服务。
  • 文件同步:可以在本地和云之间同步文件或文件夹。
  • 加密功能:支持文件加密,确保数据安全。
  • 增量备份:只同步变化的文件,节省时间和带宽。
  • 跨平台:可以在 Windows、macOS 和 Linux 上运行。
  • 脚本自动化:可以通过脚本实现定期备份和同步。

官网地址:https://rclone.org


安装

在 Linux/macOS/BSD 系统上安装 Rclone,可以运行以下命令:

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

若要安装测试版,可以运行:

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

配置远程存储(首次使用必须配置)

首次使用 Rclone 时,需要配置远程存储。执行以下命令并根据提示操作:

1
rclone config

配置文件所在的位置

1
~/.config/rclone

复制(即是备份)

将文件从源位置复制到目标位置,跳过相同的文件(根据文件大小、修改时间或 MD5SUM 判断)。

1
rclone copy source:sourcepath dest:destpath

案例 1

将本地 software 文件夹复制到 alist 下的 aliyunpan/software

1
2
# 复制(复制到远程可能需要等待完成)-P 可查看具体信息
rclone copy ~/software alist:/aliyunpan/software -P

复制可当作备份使用,写为脚本文件,需要时运行即可。

创建脚本文件:

1
vim ~/bin/rclone_copy_local_software_to_alist_aliyunpan_software.sh

脚本内容如下:

1
2
#!/bin/bash
rclone copy ~/software alist:/aliyunpan/software

修改可执行权限:

1
chmod +x ~/bin/rclone_copy_local_software_to_alist_aliyunpan_software.sh

提示:
某些云盘支持秒传,可以快速将一个云盘文件内容复制到另一个云盘。Rclone 使用 copy 复制也是支持的。

有些云盘上传单个文件大小有限制,例如 115 原石会员最大支持单个文件 5G,超过该大小即使支持秒传也无法使用。为了秒传的可用性,可以添加 --max-size 参数跳过超大的文件,例如 --max-size 500M 跳过超过 500M 的文件。

例如,将 alist 挂载的 aliyunpan/infotech 复制到 alist 挂载的 115/infotech,并跳过超过 500M 的文件:

1
rclone copy alist:aliyunpan/infotech/ alist:115/infotech/ --max-size 500M -P

挂载(作为本地文件系统)

挂载功能可以将远程存储挂载到本地,作为本地文件系统使用,支持本地播放视频、打开文件等操作。

例如,使用 alist 在线播放 115 上的视频可能会失败,但挂载后即可播放。播放器推荐使用 mpv,了解更多可观看以下视频:mpv播放器,安装配置,脚本推荐

案例 1

将坚果云挂载到 /home/taoone/jianguoyun

创建挂载点:

1
mkdir -p /home/taoone/jianguoyun

前台挂载(退出终端挂载会取消):

1
rclone mount --buffer-size 4M --vfs-cache-mode writes jianguoyun: /home/taoone/jianguoyun

后台挂载:

1
rclone mount --buffer-size 4M --vfs-cache-mode writes jianguoyun: /home/taoone/jianguoyun --daemon

手动取消挂载:

1
fusermount -u /home/taoone/jianguoyun

案例 2

挂载 alist 到本地 ~/alist

1
mkdir -p ~/alist

前台挂载:

1
rclone mount --buffer-size 4M --vfs-cache-mode writes alist: ~/alist

后台挂载:

1
rclone mount --buffer-size 4M --vfs-cache-mode writes alist: ~/alist --daemon

手动取消挂载:

1
fusermount -u ~/alist

定时任务

设置开机自动挂载:

1
crontab -e

添加以下内容:

1
2
# 开机挂载 rclone alist
@reboot rclone mount --buffer-size 4M --vfs-cache-mode writes alist: ~/alist --daemon

同步(谨慎使用)

同步功能将 源路径 文件同步到 目的路径,可能会 删除 目的路径文件,因此需要谨慎使用。如果只是需要备份文件,使用 复制 即可。

单向同步(谨慎使用)

注意:这可能导致数据丢失,首先使用 --dry-run--interactive/-i 进行测试。

1
rclone sync --interactive SOURCE remote:DESTINATION

案例 1:从远程坚果云同步到本地:

1
rclone sync jianguoyun:/ /home/taoone/jianguoyun

案例 2:从本地同步到远程坚果云(本地需要存在):

1
rclone sync /home/taoone/jianguoyun jianguoyun:/

双向同步(谨慎使用)

!!!暂处于测试阶段,谨慎使用!!!

1
rclone bisync remote1:path1 remote2:path2 [flags]

Web UI

RClone 也提供了 Web UI 界面:

1
rclone rcd --rc-web-gui

此命令会从 GitHub 下载 UI 文件,因此需要能够访问 GitHub。


常用命令

  • 列出所有配置
1
rclone listremotes
  • 查看特定远程的配置
1
rclone config show <remote_name>
  • 查看所有配置的详细信息
1
rclone config dump

希望这个指南能帮助你更好地使用 Rclone!

使用 Hugo 构建
主题 StackJimmy 设计