VPS如何使用rclone备份?CentOS使用GDrive自动同步教程

本文是《WordPress建站教程》系列文章的第 21 部分,该系列共包含以下 21 个部分:

由于网络推广中最有效的方法是SEO,所以很多有丰富SEO经验的网络营销人员,都会选择购买VPS(虚拟专用服务器)来搭建网站。

既然用到VPS,就要给VPS做备份,VPS备份可以用rclone备份同步到GDrive网盘。

什么是rclone?

RClone 可以轻松方便管理 Google Drive和Dropbox等网盘,支持挂载盘符和命令行上传和下载:

  • 挂载盘,易于使用,但速度较慢,比较适合零碎小文件
  • 命令行上传和下载速度非常快,适合上传大文件
  • Rclone比Google Drive AP,与github上的[gdrive]项目相比,不易出现中断问题。

下面就来分享CentOS 安装 rclone 备份同步到 Google Drive 的方法。

如何使用rclone备份VPS?

以下是需要准备的工具:

  • Google Dirve帐号
  • 一个rclone文件
  • 一台Linux机器(本文以CentOS7为例)

然后开始安装rclone,安装非常简单,复制粘贴加上权限。

第 1 步:下载文件 ▼

yum install unzip wget -y
wget https://downloads.rclone.org/rclone-current-linux-amd64.zip
unzip rclone-current-linux-amd64.zip
cd rclone-*-linux-amd64

第 2 步:将该文件复制到相关路径 ▼

cp rclone /usr/bin/
chown root:root /usr/bin/rclone
chmod 755 /usr/bin/rclone
  • (此步骤可以省略,但不建议,省略后是不会有提示,所以不推荐省略)

第 3 步:安装帮助页面▼

mkdir -P /usr/local/share/man/man1
cp rclone.1 /usr/local/share/man/man1/
mandb

第 4 步:创建一个新的配置 ▼

rclone config

第 5 步:rclone配置

推荐使用Rclone挂载谷歌团队共享云盘远程同步 ▼

以下是 rclone 绑定Google Dirve 网盘(非团队盘)实例参考  ▼

VPS如何使用rclone备份?CentOS使用GDrive自动同步教程

n) New remote
d) Delete remote
q) Quit config
e/n/d/q> n
name> gdrive(你的配置名称,此处随意填写但之后需要用到)
Type of storage to configure.
Choose a number from below, or type in your own value
 1 / Amazon Drive
   \ "amazon cloud drive"
 2 / Amazon S3 (also Dreamhost, Ceph, Minio)
   \ "s3"
 3 / Backblaze B2
   \ "b2"
 4 / Dropbox
   \ "dropbox"
 5 / Encrypt/Decrypt a remote
   \ "crypt"
 6 / Google Cloud Storage (this is not Google Drive)
   \ "google cloud storage"
 7 / Google Drive
   \ "drive"
 8 / Hubic
   \ "hubic"
 9 / Local Disk
   \ "local"
10 / Microsoft OneDrive
   \ "onedrive"
11 / Openstack Swift (Rackspace Cloud Files, Memset Memstore, OVH)
   \ "swift"
12 / SSH/SFTP Connection
   \ "sftp"
13 / Yandex Disk
   \ "yandex"
Storage> 7(请根据网盘类型选择Google Dirve)
Google Application Client Id - leave blank normally.
client_id>此处留空
Google Application Client Secret - leave blank normally.
client_secret>此处留空
Edit advanced config? (y/n)
y) Yes
n) No
y/n> n(此处一定要选择n)

Remote config
Use auto config?
 * Say Y if not sure
 * Say N if you are working on a remote or headless machine
y) Yes
n) No
y/n> n(此处一定要选择n)

Option config_token.
For this to work, you will need rclone available on a machine that has
a web browser available.
For more help and alternate methods see: https://rclone.org/remote_setup/
Execute the following on the machine with the web browser (same rclone
version recommended):
rclone authorize "drive" "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
Then paste the result.
Enter a value.
config_token>

这里的“config_token”,需要先在本地电脑上下载安装 Rclone 的方式获取 ▼

以Windows为例,解压后进入rclone.exe所在文件夹,在资源管理器地址栏中输入 cmd 回车,即可在当前路径打开命令提示符。

通过复制配置文件进行配置

Rclone 将其所有配置存储在一个配置文件中,这可以很容易地复制配置文件到远程的Rclone。

所以,首先需要在你的桌面电脑上配置 Rclone ▼

rclone config

在电脑上进行rclone配置,出现问题Use auto config?时,回答Y

Edit advanced config?
y) Yes
n) No (default)
y/n> n

Use auto config?
* Say Y if not sure
* Say N if you are working on a remote or headless machine

y) Yes (default)
n) No
y/n> y

NOTICE: If your browser doesn't open automatically go to the following link: http://127.0.0.1:53682/auth?state=oAg82wp7fFgAxvIIo59kxA

NOTICE: Log in and authorize rclone for access

NOTICE: Waiting for code...

NOTICE: Got code

接下来会弹出一个浏览器,要求你登录你的帐户进行授权。

谷歌账号如何授权?

 

VPS如何使用rclone备份?CentOS使用GDrive自动同步教程的图片 第3张

  1. 如果你在中国大陆,首先你要绕过X墙,然后需要有谷歌账号并登录。
  2. 若是出现“此应用未经谷歌验证”,请点击“高级”。
  3. 然后,点击允许授权。

是否配置谷歌团队共享云盘?

如果不使用谷歌团队共享云盘,就选n

Configure this as a team drive?
y) Yes
n) No (default)
y/n> n

核实remote配置信息

最后核实一下remote配置的各项参数,确认就敲个y就行 ▼

--------------------
[gdrive]type = drive
token = {"access_token":"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"}
team_drive =
--------------------
y) Yes this is OK (default)
e) Edit this remote
d) Delete this remote
y/e/d> y

会显示当前机器上保存的romete列表,随便看看,按q退出 ▼

Current remotes:
Name Type
==== ====
gdrive drive
onedrive onedrive

e) Edit existing remote
n) New remote
d) Delete remote
r) Rename remote
c) Copy remote
s) Set configuration password
q) Quit config e/n/d/r/c/s/q> q
  • 至此,本地电脑的rclone配置完成。

在本地电脑配置好之后,直接把本地电脑的rclone.conf配置文件里的内容,复制到Linux服务器上rclone.conf配置文件。

分别在本地电脑和服务器上,输入以下命令可查看Rclone配置文件位置命令 ▼

rclone config file

查询Rclone配置文件,获取到的结果如下 ▼

rclone config file
Configuration file is stored at:
/root/.config/rclone/rclone.conf
  • 只需把本地电脑的配置文件rclone.conf里的内容,复制到Linux服务器上rclone.conf配置文件,就能够解决Rclone配置问题了。

rclone 使用命令实例

列出文件和目录命令

列出配置名为gdrive的网盘的目录(不会显示文件)▼

rclone lsd gdrive:

列出配置名为gdrive的网盘里backup目录下的文件(会显示包括子目录内的所有文件不显示目录)▼

rclone ls gdrive:backup

复制剪切删除命令

复制Rclone配置文件到gdrive的网盘的根目录 ▼

rclone copy /root/.config/rclone/rclone.conf gdrive:/

复制本地 /home/backup 到配置名为gdrive的网盘的backup目录,反之亦然 ▼

rclone copy --progress /home/backup gdrive:backup
  • 通过添加此参数 --ignore-existing 可以忽略在网盘上已备份的文件,这相当于增量备份 ▼
rclone copy --ignore-existing /home/backup gdrive:backup

复制本地CWP手动备份文件到配置名为gdrive的网盘的backup目录,反之亦然 ▼

rclone copy --progress /newbackup/full/manual/accounts/eloha.tar.gz gdrive:cwp-newbackup/full/manual/accounts/

从gdrive的网盘,复制CWP自动定时备份文件到本地 /newbackup 目录 ▼

rclone copy --progress gdrive:cwp-newbackup/full/daily/Friday/accounts/eloha.tar.gz /newbackup/

rclone copy --progress gdrive:cwp-backup2/ /home/backup2/

从gdrive的网盘,复制CWP手动备份文件到本地 /newbackup/newbackup/full/manual/accounts/ 目录▼

rclone copy --progress gdrive:cwp-newbackup/full/manual/accounts/eloha.tar.gz /newbackup/newbackup/full/manual/accounts/

从gdrive的网盘,复制VestaCP备份文件到本地 /home/backup 目录 ▼

rclone copy --progress gdrive:backup/admin.2018-04-12_13-10-02.tar /home/backup

移动(剪切)命令 ▼

rclone move /home/backup gdrive:backup

删除配置名为gdrive的网盘的backup目录▼

rclone delete gdrive:backup

创建配置名为gdrive的网盘的backup目录 ▼

rclone mkdir gdrive:backup

同步文件命令

同步本地 /home/backup 到配置名gdrive的网盘里的backup目录,反之亦然 ▼

rclone sync /home/backup gdrive:backup

同步配置名gdrive2的网盘里的ufo目录,到配置名为gdrive的网盘的backup目录,反之亦然 ▼

rclone sync gdrive2:ufo gdrive:backup

稍等片刻,如果没有返回错误信息,你可以在备份完成后在网盘上看到备份文件。

VPS备份文件如何自动同步到GDrive?

在定时任务中,添加同步命令,以实现自动同步CWP控制面板的备份文件到GDrive。

  • (每天凌晨2点自动同步本地目录 /newbackup  到配置名gdrive的网盘里的cwp-newbackup目录)

SSH如何添加 Crontab 定时任务自动同步到GDrive?

首先,SSH输入以下crontab命令 ▼

crontab -e

接着,将命令加入最后一行 ▼

55 3 * * * rclone sync /newbackup gdrive:cwp-newbackup
00 7 * * * rclone sync /backup2 gdrive:cwp-backup2

SSH请按 CTRL + C组合键,然后输入 :wq 保存并退出。

CWP控制面板如何设置 Crontab 定时任务自动同步到GDrive?

如果使用CWP控制面板,请登录CWP控制面板的 Server SettingCrontab for root ▼

CWP控制面板如何设置 Crontab 定时任务自动同步到GDrive? 第4张

在 “Add Full Custom Cron Jobs”  中,输入以下完全自定义的定时命令 ▼

55 3 * * * rclone sync /newbackup gdrive:cwp-newbackup
00 7 * * * rclone sync /backup2 gdrive:cwp-backup2
  • (每天凌晨3点55分自动同步本地目录 /newbackup  到配置名gdrive的网盘里的cwp-newbackup目录)
  • (每天早上7点00分自动同步本地目录 /backup2到配置名gdrive的网盘里的backup2目录)
  • 同步WordPress网站文件,建议不要增量备份,因为测试发现若是文件名相同,但文件里的内容不同,是不会同步的。

由于在定时启动rclone自动同步完成之后,rclone进程仍然会保留在后台运行,这样可能会占用CPU资源高达20%左右,造成服务器资源浪费。

所以,需要再添加完全自定义的定时任务命令,将rclone进程强制关闭 ▼

00 09 * * * killall rclone
  • (每天早上7点00分自动强制关闭rclone进程)

rclone常用命令

当然,rclone的作用远不止于此,下面列出了一些常用命令。

复制 ▼

rclone copy

移动 ▼

rclone move

删除 ▼

rclone delete

同步 ▼

rclone sync

附加参数:显示实时速度 ▼

-P

附加参数:限制速度40MB ▼

--bwlimit 40M

附加参数:并行文件数 ▼

--transfers=N

启动rclone ▼

systemctl start rclone

停止rclone ▼

systemctl stop rclone

查看rclone状态 ▼

systemctl status rclone

查看配置文件位置 ▼

rclone config file

使用 rclone 备份VPS确实非常简单 ^_^

至此,关于如何将本地Linux目录同步到Google云端硬盘的教程已经完成。

扩展阅读:

阅读该系列的其它文章:<< 上一篇:如何安装WordPress插件?3种安装WordPress插件方法

希望陈沩亮博客( https://www.chenweiliang.com/ ) 分享的《VPS如何使用rclone备份?CentOS使用GDrive自动同步教程》,对您有帮助。

欢迎分享本文链接:https://www.chenweiliang.com/cwl-694.html

欢迎加入陈沩亮博客的 Telegram 频道,获取最新更新!

喜欢就分享和按赞!
您的分享和按赞,是我们持续的动力!