Rclone: 超好用的网盘/VPS数据同步、备份工具,支持Google Drive

支持的主流对象存储有:
Google Drive Amazon S3 Openstack Swift / Rackspace cloud files / Memset Memstore Dropbox Google Cloud Storage Amazon Drive Microsoft One Drive Hubic Backblaze B2 Yandex Disk The local filesystem
安装
wget https://downloads.rclone.org/rclone-current-linux-amd64.zip unzip rclone-current-linux-amd64.zip chmod 0755 ./rclone-*/rclone cp ./rclone-*/rclone /usr/bin/ rm -rf ./rclone-*
或
curl -O http://downloads.rclone.org/rclone-current-linux-amd64.zip unzip rclone-current-linux-amd64.zip cd rclone-*-linux-amd64 cp rclone /usr/sbin/ chown root:root /usr/sbin/rclone chmod 0755 /usr/sbin/rclone
配置
rclone config
实例
下图以Google Drive为例展示配置过程


步骤解释
第一步:配置 config rclone第二部:选择新建 n # 新建配置第三步:起名字,这个随意填写,例如MJJ MJJ #起名字第四步:选择存储类型,实例中选择的是9 1 亚马逊云盘 2 亚马逊S3 3 BackBlaze B2,这个后面也会写文章介绍 4 Box网盘 5 Dropbox 6 不是很懂是啥 7 FTP 8 谷歌云存储(不是谷歌云盘) 9 谷歌云盘 Google Drive 10 Hubic,OVH旗下存储服务,有介绍过,免费最高55Ghttps://blog.367783.net/archives/hubic.html 11 本地硬盘 12 Azure云存储 13 微软Onedrive(注意只支持个人版,不支持商业版、教育版) 14 Openstack Swift,不了解 15 Qing Cloud青云 16 SSH连接,也就是说支持VPS同步! 17 Yandex网盘,俄罗斯的,有10G大小免费额度 18 HTTP链接第五步:谷歌应用ID,留空第六步:谷歌应用密钥,留空第七步:自动配置,选择手动 n # 手动配置第八步:复制链接到浏览器,登录谷歌,获取验证码第九步:填写验证码第十步:确认配置 y # 确认配置第十一步:退出配置 q # 退出配置
简单操作
谷歌云盘对拷
可以实现两个Google Drive 之间对拷备份文件,不占用硬盘。毕竟大家的gdrive来源都是你懂得,担心不稳,可以多个google drive多存几份。在新建好rclone的配置文件后,使用以下命令即可:
rclone copy gdrive1: gdrive2:
本地数据备份
自己VPS上的网站数据想备份到其他VPS或者网盘内,其实也很简单。在建立好rclone的配置文件后,使用以下命令即可:
rclone sync /本地绝对路径 dest:path
小技巧
复用
rclone配置文件存储位置~/.config/rclone/rclone.conf
,可以保存里面的内容,在新电脑上直接用这个配置文件即可
详细使用
操作命令
rclone命令的语法格式:
Syntax: [options] subcommand <parameters> <parameters...>
常用的rclone命令有:
rclone config - 以控制会话的形式添加rclone的配置,配置保存在.rclone.conf文件中。 rclone copy - 将文件从源复制到目的地址,跳过已复制完成的。 rclone sync - 将源数据同步到目的地址,只更新目的地址的数据。 rclone move - 将源数据移动到目的地址。 rclone delete - 删除指定路径下的文件内容。 rclone purge - 清空指定路径下所有文件数据。 rclone mkdir - 创建一个新目录。 rclone rmdir - 删除空目录。 rclone check - 检查源和目的地址数据是否匹配。 rclone ls - 列出指定路径下所有的文件以及文件大小和路径。 rclone lsd - 列出指定路径下所有的目录/容器/桶。 rclone lsl - 列出指定路径下所有文件以及修改时间、文件大小和路径。 rclone md5sum - 为指定路径下的所有文件产生一个md5sum文件。 rclone sha1sum - 为指定路径下的所有文件产生一个sha1sum文件。 rclone size - 获取指定路径下,文件内容的总大小。. rclone version - 查看当前版本。 rclone cleanup - 清空remote。 rclone dedupe - 交互式查找重复文件,进行删除/重命名操作。
rclone config
开启一个交互式的配置会话。命令格式如下:
rclone config
rclone copy
将文件从源复制到目的地址,跳过已复制完成的。命令格式如下:
rclone copy source:sourcepath dest:destpsth
说明: rclone copy复制总是指定路径下的数据;而不是当前目录。 –no-traverse 标志用于控制是否列出目的地址目录。
rclone sync
rclone sync source:path dest:path
说明: 同步数据时,可能会删除目的地址的数据;建议先使用–dry-run标志来检查要复制、删除的数据。 同步数据出错时,不会删除任何目的地址的数据。 rclone sync同步的始终是path目录下的数据,而不是path目录。(空目录将不会被同步)
rclone move
rclone move source:path dest:path
说明: 同步数据时,可能会删除目的地址的数据;建议先使用–dry-run标志来检查要复制、删除的数据。
rclone purge
清空path目录和数据。命令格式如下:
rclone purge remote:path
说明: 此命令,include/exclude 过滤器失效。 删除path目录下部分数据,请使用rclone delete 命令
rclone mkdir
创建path目录。命令格式如下:
rclone mkdir remote:path
rclone rmdir
删除一个空目录。命令格式如下:
rclone rmdir remote:path
说明: 不能删除非空的目录,删除非空目录请使用 rclone purge。
rclone check
检查源和目标地址文件是否匹配。命令格式如下:
rclone check source:path dest:path
说明: –size-only标志用于指定,只比较大小,不比较MD5SUMs。
rclone ls
列出指定path下,所有的文件以及文件大小和路径。命令格式如下:
rclone ls remote:path
rclone lsd
列出指定path下,所有目录、容器、桶。命令格式如下:
rclone lsd remote:path
rclone delete
删除指定目录的内容。命令格式如下:
rclone delete remote:path
说明: 不同于rclone purge,rclone delete 可使用 include/exclude 过滤器选择删除文件内容。
一些例子:
删除文件大小大于100M的文件
# 先检查哪些文件将被删除 rclone --min-size 100M lsl remote:path # 使用rclone lsl 列出大于100M的文件 rclone --dry-run --min-size 100M delete remote:path # 使用--dry-run 检查将要被删除的文件 # 使用 rclone delete 进行文件删除 rclone --min-size 100M delete remote:path
rclone size
获取指定path下所有数据文件的总大小。命令格式如下:
rclone size remote:path
更多
更多rclone命令,详见http://rclone.org/commands/ 。参考狗仔小分队和Lain’s Blog