安装reclone

1
curl https://rclone.org/install.sh | sudo bash

配置reclone链接webdav

1
2
3
4
5
6
 # 注意选择webdav (52)---- 7 others server https://xxx/dav (alist里新建一个用户,给定指定的目录)
rclone config 

#配置完后进行测试,文件名太多了,还是文件夹方式列出

rclone lsd 新建的云盘名:/

备份脚本

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
#!/bin/bash

# 要备份的本地目录
src="/root/需要打包的文件目录"

# WebDAV 远程目录
dest="yunpan:/目标目录"

# 获取当前日期和时间作为时间戳
timestamp=$(date +%Y%m%d%H%M%S)

# 创建带时间戳的压缩包
tar -czf backup_$timestamp.tar.gz $src

# 上传到 WebDAV
rclone copy backup_$timestamp.tar.gz $dest

# 删除本地压缩包
rm backup_$timestamp.tar.gz

定时任务

  • crontab -e
1
2
# 每隔2个小时自动跑一次脚本
0 */2 * * * /root/备份脚本.sh

PS nginx 或者cloudflare 都有附件上传的默认大小控制,大部分是100M 所以有的时候还要设置下 client_max_body_size 50M;