1、创建Dropbox应用

因为应用的是Dropbox的应用所以我们首先需要创建一个[https://www.dropbox.com/developers/apps/create],应用类型我们选择Dropbox Api,数据类型选择App folder,然后下面打钩,点击创建即可

2、下载自动备份脚本

脚本已经托管在github上,请点击前往[https://raw.github.com/andreafabrizi/Dropbox-Uploader/master/dropbox_uploader.sh].
下载下来后给予执行权限

chmod +x dropbox_uploader.sh

接下来执行这个脚本

./dropbox_uploader.sh

在执行中需要我输入dropbox创建的token
创建链接[https://www.dropbox.com/developers/apps/info/ob2vf2bq6fz10ai]点击Generated access token进行创建
输入token后再输入y然后回车即可

3、便捷备份脚本

根据别人的脚本修改了一下

vi backup.sh   #创建执行文件
#!/bin/bash

 # 定义需要备份的目录
WEB_DIR=/home/wwwroot  # 网站数据存放目录
 
 # 定义备份存放目录
 DROPBOX_DIR=/$(date +%Y-%m-%d)  # Dropbox上的备份目录
 LOCAL_BAK_DIR=/home/backup  # 本地备份文件存放目录

 # 定义备份文件名称
 WebBakName=Web_$(date +%Y%m%d).tar.gz
 DBBakName=DB_$(date +%Y%m%d).tar.gz
 
 # 定义旧数据名称
 Old_DROPBOX_DIR=/$(date -d -7day +%Y-%m-%d)
 OldWebBakName=Web_$(date -d -10day +%Y%m%d).tar.gz
 OldDBBakName=DB_$(date -d -10day +%Y%m%d).tar.gz
 
 #导出数据库
 cd $LOCAL_BAK_DIR
 mysqldump --opt -u用户名 -p密码 数据库名|gzip > $LOCAL_BAK_DIR/$(date +%Y%m%d).sql.gz
 
 #压缩数据库文件合并为一个压缩文件
 tar zcf $LOCAL_BAK_DIR/$DBBakName $LOCAL_BAK_DIR/*.sql.gz
 rm -rf $LOCAL_BAK_DIR/*.sql.gz
 
 #压缩网站数据
 cd $WEB_DIR
 tar zcf $LOCAL_BAK_DIR/$WebBakName ./*
 
 cd ~
 #开始上传
 ./dropbox_uploader.sh upload $LOCAL_BAK_DIR/$DBBakName $DROPBOX_DIR/$DBBakName
 #./dropbox_uploader.sh upload $LOCAL_BAK_DIR/$NginxConfBakName $DROPBOX_DIR/$NginxConfBakName
 ./dropbox_uploader.sh upload $LOCAL_BAK_DIR/$WebBakName $DROPBOX_DIR/$WebBakName
 
 #删除旧数据
 rm -rf $LOCAL_BAK_DIR/$OldWebBakName $LOCAL_BAK_DIR/$OldDBBakName
 ./dropbox_uploader.sh delete $Old_DROPBOX_DIR/
 
 echo -e "Backup Done!"

然后给予这个脚本可执行权限即可

chmod +x backup.sh

添加定时任务

crontab -e ##编辑定时任务
30 3 * * * ~/backup.sh

这样每天凌晨3点30分就会自动执行备份程序了。