简介
rclone 是一个强大的命令行工具,旨在管理和同步文件到多种云存储服务及本地文件系统。它支持超过 70 种不同的云存储提供商,如 Google Drive、Dropbox、Amazon S3、OneDrive 等。
官网地址:https://rclone.org
主要特点
- 多种存储支持:支持超过 70 种不同的云存储服务。
- 文件同步:可以在本地和云之间同步文件或文件夹。
- 加密功能:支持文件加密,确保数据安全。
- 增量备份:只同步变化的文件,节省时间和带宽。
- 跨平台:可以在 Windows、macOS 和 Linux 上运行。
- 脚本自动化:可以通过脚本实现定期备份和同步。
安装
Linux / macOS / BSD
在 Linux/macOS/BSD 系统上安装 rclone,可以运行以下命令:
|
|
若要安装测试版,可以运行:
|
|
Windows
下载地址:
解压文件,将rclone
所在的目录添加到PATH
环境变量,即可在终端任意位置运行 rclone
命令
配置远程存储
首次使用 rclone 时,需要配置远程存储。执行以下命令并根据提示操作:
|
|
配置文件所在的位置:
Linux
|
|
Windows
|
|
如果第一次安装没有配置文件和对应的路径,运行
rclone config
退出就会自动创建,不过文件内容为空
命令补全
rclone 含有命令补全,输入 rclone
按住 tab 键可以自动帮我们补全远程存储中的路径,如果没有这个功能,需要手动输入路径,可以尝试使用如下方法开启命令补全
安装 bash-completion
|
|
开启补全功能
|
|
再次尝试 rclone 命令,输入,使用 tab 键查看是否有补全
|
|
基本用法
rclone的语法结构:
|
|
- 命令:rclone支持的命令,可以通过 https://rclone.org/commands/查看所有支持的命令
- 参数:命令支持的参数,参考对应的命令
- 源路径:顾名思义
- 目标路径:顾名思义
额外说明,为了区分本地路径和远程路径,使用远程路径需要使用 name:path
name
:rclone配置远程存储时起的名字path
:配置的远程存储的路径
比如:
查看远程存储的文件列表(假设已经创建了一个名为 jianguoyun的远程存储)
|
|
复制
将文件从源位置复制到目标位置,根据文件大小、修改时间或 MD5SUM 判断跳过相同的文件
语法:
|
|
参数:
-P
:查看具体信息
复制亦可当作备份使用,不会删除远程文件
本地复制到远程存储
案例:本地
software
文件夹复制到alist
下的aliyunpan/software
|
|
远程存储 a 复制到远程存储 b
某些云盘支持秒传,可以快速将一个云盘文件内容复制到另一个云盘。rclone 使用 copy
复制也是支持的。
有些云盘上传单个文件大小有限制,例如 115 原石会员最大支持单个文件 5G,超过该大小即使支持秒传也无法使用。为了秒传的可用性,可以添加 --max-size
参数跳过超大的文件,例如 --max-size 500M
跳过超过 500M 的文件。
案例:
alist
挂载的aliyunpan/infotech
复制到alist
挂载的115/infotech
,并跳过超过 500M 的文件
|
|
|
|
|
|
定时备份/复制
Tips:复制可当作备份使用,写入到脚本文件,定时任务执行脚本即可
挂载
将远程存储挂载到本地,作为本地文件系统使用,支持本地播放视频、打开文件,编辑文件等操作
注意:Windows 平台挂载需要额外安装 winfsp,且默认路径不存在
语法:
|
|
参数:
--buffer-size
:在传输文件时,读取和写入操作的缓冲区大小,默认不清楚,建议挂载加上,大小 4M--vfs-cache-mode
:缓存模式,可选 off(默认),writes,full--vfs-cache-max-size
:限制 VFS 缓存的最大大小,默认无限制--vfs-cache-max-age
:限制缓存文件的最大存活时间,默认 1 小时--daemon
:后台挂载,Windows 不支持--volname
:挂载名字,Windows 平台
取消挂载
|
|
远程存储挂载到本地
案例:坚果云挂载到
$HOME/mnt/jianguoyun
创建挂载点
|
|
前台挂载(退出终端挂载会取消)
|
|
后台挂载
|
|
取消挂载
|
|
案例:
alist
挂载到本地$HOME/mnt/alist
|
|
前台挂载
|
|
后台挂载
|
|
取消挂载
|
|
案例:windows 挂载 alist film 路径到本地驱动器 K
|
|
开机自动挂载
借助定时任务实现或者创建系统服务
案例:开机挂载 alist
|
|
|
|
单向同步
将 源路径 文件同步到 目的路径,会 删除目的路径文件
如果只是需要备份文件,使用 复制
语法:
|
|
这可能导致数据丢失,首先使用 --dry-run
或 --interactive
/-i
进行测试。
远程存储同步到本地
案例:坚果云同步文件到本地
|
|
本地同步到远程存储
案例:本地同步文件到坚果云
|
|
双向同步
语法:
|
|
暂处于测试阶段,不建议使用!!
Web UI
rclone 提供了 Web UI 界面:
|
|
此命令会从 GitHub 下载 UI 文件,因此需要能够访问 GitHub。
其他命令
列出所有已经配置的远程存储名字
|
|
查看特定远程存储的配置详情
|
|
查看所有远程存储的详情,以json
格式输出
|
|
小技巧
只创建相同目录结构
将目标位置拥有原位置同样的目录结构,保持目录结构的一致
|
|
source:/path
:源路径dest:/path
:远程目录