Rclone:网盘、VPS数据同步、备份工具,支持GoogleDrive

Stella981
• 阅读 1743

1、概述

    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

2、安装

  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

3、配置(重点)

  首先输入命令:rclone config(如果源数据和目的数据都是通过远程访问,则需要配置两次)

步骤解释

  • 第一步:配置 config rclone
  • 第二部:选择新建     n # 新建配置
  • 第三步:起名字,这个随意填写,例如 MJJ
  • 第四步:选择存储类型,实例中选择的是 7

    1 亚马逊云盘
    2 亚马逊 S3
    3 BackBlaze B2,这个后面也会写文章介绍

    4 Dropbox
    5 不是很懂是啥
    6 谷歌云存储(不是谷歌云盘)
    7 谷歌云盘 Google Drive
    8 Hubic,OVH 旗下存储服务,有介绍过, 免费最高 55G https://liyuans.com/archives/hubic.html
    9 本地硬盘
    10 微软 Onedrive(注意只支持个人版,不支持商业版、教育版)
    11 Openstack Swift,不了解
    12 SSH 连接,也就是说支持 VPS 同步!
    13 Yandex 网盘,俄罗斯的,有 10G 大小免费额度

  • 第五步:谷歌应用 ID,留空
  • 第六步:谷歌应用密钥,留空
  • 第七步:自动配置,选择手动
  • 第八步:复制链接到浏览器,登录谷歌,获取验证码
  • 第九步:填写验证码
  • 第十步:确认配置
  • 第十一步:退出配置

4、简单操作

谷歌云盘对拷

  • 可以实现两个 Google Drive 之间对拷备份文件,不占用硬盘。毕竟大家的 gdrive 来源都是你懂得,担心不稳,可以多个 google drive 多存几份。在新建好 rclone 的配置文件后,使用以下命令即可:

    rclone copy gdrive1: gdrive2:

本地数据备份

自己 VPS 上的网站数据想备份到其他 VPS 或者网盘内,其实也很简单。在建立好 rclone 的配置文件后,使用以下命令即可:

      rclone sync /本地绝对路径 dest:path

小技巧

复用

  • rclone 配置文件存储位置~/.config/rclone/rclone.conf,可以保存里面的内容,在新电脑上直接用这个配置文件即可

5、详细使用

  操作命令

  • 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

点赞
收藏
评论区
推荐文章
blmius blmius
3年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
皕杰报表之UUID
​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为
待兔 待兔
4个月前
手写Java HashMap源码
HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22
Jacquelyn38 Jacquelyn38
3年前
2020年前端实用代码段,为你的工作保驾护航
有空的时候,自己总结了几个代码段,在开发中也经常使用,谢谢。1、使用解构获取json数据let jsonData  id: 1,status: "OK",data: 'a', 'b';let  id, status, data: number   jsonData;console.log(id, status, number )
Wesley13 Wesley13
3年前
mysql设置时区
mysql设置时区mysql\_query("SETtime\_zone'8:00'")ordie('时区设置失败,请联系管理员!');中国在东8区所以加8方法二:selectcount(user\_id)asdevice,CONVERT\_TZ(FROM\_UNIXTIME(reg\_time),'08:00','0
Wesley13 Wesley13
3年前
00:Java简单了解
浅谈Java之概述Java是SUN(StanfordUniversityNetwork),斯坦福大学网络公司)1995年推出的一门高级编程语言。Java是一种面向Internet的编程语言。随着Java技术在web方面的不断成熟,已经成为Web应用程序的首选开发语言。Java是简单易学,完全面向对象,安全可靠,与平台无关的编程语言。
Stella981 Stella981
3年前
Django中Admin中的一些参数配置
设置在列表中显示的字段,id为django模型默认的主键list_display('id','name','sex','profession','email','qq','phone','status','create_time')设置在列表可编辑字段list_editable
Stella981 Stella981
3年前
Forrester机器学习报告发布,腾讯云跃居第一阵营
  !(https://nimg.ws.126.net/?urlhttp%3A%2F%2Fdingyue.ws.126.net%2F2020%2F1016%2Fecdc1f59j00qi98j7000od200u000fpg00it009u.jpg&thumbnail650x2147483647&quality80&typejpg)  A
Wesley13 Wesley13
3年前
MySQL部分从库上面因为大量的临时表tmp_table造成慢查询
背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_
Python进阶者 Python进阶者
10个月前
Excel中这日期老是出来00:00:00,怎么用Pandas把这个去除
大家好,我是皮皮。一、前言前几天在Python白银交流群【上海新年人】问了一个Pandas数据筛选的问题。问题如下:这日期老是出来00:00:00,怎么把这个去除。二、实现过程后来【论草莓如何成为冻干莓】给了一个思路和代码如下:pd.toexcel之前把这