使用 Rclone 实现自动化备份, 安装和配置过程记录

Rclone 能够添加多种网盘或S3兼容的Bucket,是非企业级的个人用户快速备份的优秀选择之一。

个人通过添加多个Onedrive网盘实现服务器的数据备份。

准备

将基于如下所列出信息,在该环境进行后续的部署。

1
2
3
4
5
6
7
8
9
10
11
12
       _,met$$$$$gg.          root@debian 
,g$$$$$$$$$$$$$$$P. -------------------
,g$$P" """Y$$.". OS: Debian GNU/Linux 11 (bullseye) x86_64
,$$P' `$$$. Host: CVM 3.0
',$$P ,ggs. `$$b: Kernel: 5.10.141
`d$$' ,$P"' . $$$ Uptime: 1 hour, 11 mins
$$P d$' , $$P Packages: 688 (dpkg)
$$: $$. - ,d$$' Shell: bash 5.1.4
$$; Y$b._ _,d$P' Terminal: /dev/pts/0
Y$$. `.`"Y$$$$P"' CPU: AMD EPYC 7K62 (1) @ 2.595GHz
`$$b "-.__ GPU: 00:02.0 Cirrus Logic GD 5446
`Y$$ Memory: 778MiB / 1732MiB

安装

  1. 一般情况下Linux系统应可以使用安装脚本,但是国内网络环境下由于网络问题,安装脚本难以正常运行和下载,所以建议更换其他安装方式。
1
2
# 使用安装脚本安装
sudo -v ; curl https://rclone.org/install.sh | sudo bash
  1. 此处下载适用于 Debian 系的 Rclone 的 deb 安装包,由前文网络环境条件影响,可以自行通过代理再进行下载。
1
wget https://downloads.rclone.org/v1.62.2/rclone-v1.62.2-linux-amd64.deb
  1. 使用 dpkg 进行安装,执行下列指令。
1
dpkg -i rclone-v1.62.2-linux-amd64.deb 

运行日志:

1
2
3
4
5
Reading database ... 81673 files and directories currently installed.)
Preparing to unpack rclone-v1.62.2-linux-amd64.deb ...
Unpacking rclone (1.62.2) ...
Setting up rclone (1.62.2) ...
Processing triggers for man-db (2.9.4-2) ...
  1. 当完成以上步骤时,安装即完成。

配置

输入rclone config,开始配置rclone。

1
2
3
4
5
No remotes found, make a new one?
n) New remote
s) Set configuration password
q) Quit config
n/s/q>

输入n,新建新的远端服务器,再输入要新建的配置名称。

1
2
Enter name for new remote.
name>

此处根据所需要的存储类型进行配置,示例 31 onedrive。

1
2
3
4
5
6
7
Option Storage.
Type of storage to configure.
Choose a number from below, or type in your own value.

31 / Microsoft OneDrive
\ (onedrive)
Storage> 31

后续client_id和client_secret留空,直接回车跳过即可。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Option client_id.
OAuth Client Id.
Leave blank normally.
Enter a value. Press Enter to leave empty.
client_id>

Option client_secret.
OAuth Client Secret.
Leave blank normally.
Enter a value. Press Enter to leave empty.
client_secret>

Option region.
Choose national cloud region for OneDrive.
Choose a number from below, or type in your own string value.
Press Enter for the default (global).

提示是否编辑高级设置,默认不修改,按回车跳过。询问是否通过浏览器登录认证,无GUI的系统环境下应输入N。

1
2
3
4
5
6
7
8
9
10
11
12
13
Edit advanced config?
y) Yes
n) No (default)
y/n> n

Use web browser to automatically authenticate rclone with remote?
* Say Y if the machine running rclone has a web browser you can use
* Say N if running rclone on a (remote) machine without web browser access
If not sure try Y. If Y failed, try N.

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

在具有浏览器环境下的系统使用rclone authorize "onedrive",再返回此处填写通过浏览器认证后的token

1
2
3
4
5
6
7
8
9
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 "onedrive"
Then paste the result.
Enter a value.

填写配置类型,一般情况下默认即可。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
Option config_type.
Type of connection
Choose a number from below, or type in an existing string value.
Press Enter for the default (onedrive).
1 / OneDrive Personal or Business
\ (onedrive)
2 / Root Sharepoint site
\ (sharepoint)
/ Sharepoint site name or URL
3 | E.g. mysite or https://contoso.sharepoint.com/sites/mysite
\ (url)
4 / Search for a Sharepoint site
\ (search)
5 / Type in driveID (advanced)
\ (driveid)
6 / Type in SiteID (advanced)
\ (siteid)
/ Sharepoint server-relative path (advanced)
7 | E.g. /teams/hr
\ (path)
config_type> 1

填写ID,默认即可。

1
2
3
4
Option config_driveid.
Select drive you want to use
Choose a number from below, or type in your own string value.
Press Enter for the default.

持续确认直到回到rclone config页面,Rclone的配置即完成。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Drive OK?

Found drive "root" of type "business"
URL:

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

Configuration complete.

Keep this "onedrive" remote?
y) Yes this is OK (default)
e) Edit this remote
d) Delete this remote
y/e/d> y

实现自动备份

有两种常用方法:使用crontab创建定时任务,或是使用systemd创建对应的备份服务。

Crontab 定时任务

比较常用且配置方法简单,无需撰写服务,基于cornd。

配置过程

Systemd 服务

稍微复杂的方法,自带Timer计时器,具有较强的稳定性,日志查询方便,适用于基于systemd的系统。

配置过程

使用 Rclone 实现自动化备份, 安装和配置过程记录
https://swai.top/share-16.html
作者
ShallowAi
发布于
2023年1月16日
许可协议