使用 DROPBOX UPLOADER 备份服务器文件
作者:2014-04-20 14:50:31 来源: 浏览次数: 发布时间:2014-04-20 14:50:31
备份VPS的文件有很多方法,有人用 FTP。FTP 就是不安全嘛。要安全的,有SFTP,又太慢。但是,有了Dropbox,不再烦把备份的文件存放到哪。
Dropbox 默认有 2GB 空间。
脚本名称:Dropbox Uploader
作者:Andrea Fabrizi
URL:https://github.com/andreafabrizi/Dropbox-Uploader
好处
- 安全,无需用户账号密码,使用 API 认证
- 便携式,无需安装,使用 Bash 和 cURL (linux本身具备)
下载
git clone https://github.com/andreafabrizi/Dropbox-Uploader/
或者
curl "https://raw.github.com/andreafabrizi/Dropbox-Uploader/master/dropbox_uploader.sh" -o dropbox_uploader.sh
添加执行权限:
$ chmod +x dropbox_uploader.sh
运行:
$ ./dropbox_uploader.sh
注册 Dropbox App
1、打开 Dropbox App Console:https://www.dropbox.com/developers/apps
2、点击右上角的 Create app
3、选 Dropbox API app
4、再选 Files and datastores。再选 Yes。输入一个名字再点击 Create app。(选这个 API 就可以防止这个脚步访问其他文件,够安全了吧。以后访问 Dropbox > Apps > app名称 这个文件夹就可以查看这个app创建的文件了。)
5、看到 App key 和 App secret 这个画面就好了,等候第一次运行脚步需要这些认证。
提示,电脑客户端就选不同步这个文件夹了,因为会占很多空间的。
语法
./dropbox_uploader.sh COMMAND [PARAMETERS]...
[方括号] = 可选
<尖括号> = 必须填写
可用的命令:
- upload <LOCAL_FILE/DIR …> <REMOTE_FILE/DIR>
从本地上传文件到 Dropbox - download <REMOTE_FILE/DIR> [LOCAL_FILE/DIR]
从Dropbox 下载文件夹或者文件到本地 - delete <REMOTE_FILE/DIR>
删除Dropbox的远程文件或目录 - move <REMOTE_FILE/DIR> <REMOTE_FILE/DIR>
移动或重命名远程文件或目录 - copy <REMOTE_FILE/DIR> <REMOTE_FILE/DIR>
复制远程文件或目录 - mkdir <REMOTE_DIR>
创建远程目录 - list [REMOTE_DIR]
列出远程Dropbox文件夹中的内容 - share <REMOTE_FILE>
分享指定文件夹或者文件 - info
显示以链接用户的一些资料 - unlink
取消与Dropbox链接
可选参数:
- -f <FILENAME>
从一个特定的文件加载配置文件。第一次运行后,应该在当前用户的主文件夹下:~/.dropbox_uploader - -s
下载/上传时跳过已存在的文件。默认值:覆盖 - -d
启用调试模式 - -q
安静模式。不显示进度表或消息 - -p
显示 cURL 进度栏 - -k
不检查SSL证书(不安全)
使用方法
#!/bin/bash TMP_DIR="/tmp/" DATE=$(date +"%d-%m-%Y_%H%M") BKP_FILE="$TMP_DIR/MyBkp_$DATE.tar" BKP_DIRS="/home/user /var/www /etc" DROPBOX_UPLOADER=/path/to/dropbox_uploader.sh tar cf "$BKP_FILE" $BKP_DIRS gzip "$BKP_FILE" $DROPBOX_UPLOADER -f /root/.dropbox_uploader upload "$BKP_FILE.gz" rm -fr "$BKP_FILE.gz"
这个脚步就会备份3个文件夹:/home/user
/var/www
/etc
然后打包到一个 #日期#.gz
,再上传到 Dropbox。上传完就自动删除本地 gz 文件。
00 00 * * * /path/to/backup.sh 2>&1 >> /var/log/backup.log
添加到 Cron 就可以每天凌晨自动备份了,并把输出记录到/var/log/backup.log
上一篇:返回列表
下一篇:返回列表