互联网服务
2012 年 8 月 18 日
自动备份OpenShift数据到Dropbox(1)—Dropbox Uploader的配置
本文介绍了如何在OpenShift应用中开通SSH权限,设置cron任务,并通过Dropbox Uploader脚本实现自动备份网站数据到Dropbox。具体步骤包括在repo目录下创建dropbox文件夹,下载和安装Dropbox Uploader脚本,配置并测试脚本的运行,最后设置cron任务实现自动备份。对于不太熟悉Linux Shell的用户,本文提供了详细的配置步骤,方便参考。
OpenShift开通了SSH权限,并且用户可以设置cron任务,通过一定的配置我们可以让OpenShift自动备份网站数据(数据库,文件等)到Dropbox. 本文包含详细的配置步骤,供不太熟悉Linux Shell 的用户参考。
开始之前当然是申请OpenShift和Dropbox账户,并创建一个OpenShift 应用。假设这个步骤已经完成,我们就可以开始了。
SSH登录OpenShift应用,并依次输入以下命令在repo目录下创建一个文件夹dropbox,我们将在这里放置Dropbox 应用。
#请将{appname}换成你的app名称,比如我的app名称是apps,那就是 cd apps
cd {appname}
cd repo
mkdir dropbox
cd dropbox
我们将在这个目录下放置Dropbox上传程序,由于Dropbox官方的客户端需要图形界面来运行设置向导,不能在OpenShift使用,我们使用另一个脚本来实现Dropbox的上传和下载功能,这个脚本叫Dropbox Uploader. 这个脚本实现了Dropbox的上传、下载、列表等功能,使用非常简单。关于Dropbox Uploader的详细介绍可以点这里.
首先下载Dropbox Uploader,为了方便,我已经上传到我的博客,用wget或curl下载
wget andreafabrizi-Dropbox-Uploader-95aa777.tar.gz
下载完成后解压并删除无关文件:
tar xvf andreafabrizi-Dropbox-Uploader-95aa777.tar.gz
#将解压后的文件夹内容移动到当前目录
mv andreafabrizi-Dropbox-Uploader-95aa777/* .
#移除压缩文件
rm andreafabrizi-Dropbox-Uploader-95aa777.tar.gz
#移除压缩文件夹
rm -rf andreafabrizi-Dropbox-Uploader-95aa777
#查看当前文件夹下的文件
ls
chmod +x dropbox_uploader.sh
#打开文件
vi dropbox_uploader.sh
#打开文件后进入命令模式,光标到需要修改的地方,按i键进入插入模式;
#你可以像使用windows记事本一样修改这个文件(不要用鼠标...),修改以下配置文件的存放地点;
#修改完成后,按一次(或多次)ESC键进入命令模式,输入":wq"命令保存并退出,参考下面两张图片.
./dropbox_uploader.sh
用你电脑的浏览器打开https://www2.dropbox.com/developers/apps(注意https,小心撞墙!)创建一个APP,然后将Dropbox提供的App key 和App secrect填写到dropbox uploader的指定输入位置。如果输入无误的话,Dropbox uploader会给你一个网址,用你电脑的浏览器访问这个网址就完成验证了。
不出意外的话配置已经成功了,再次运行dropbox uploader将提示你基本用法。
dropbox uploader目前的版本(v0.9.5)支持6条命令(还有一条命令list不在上图的命令列表):upload, download, delete, info, unlink和list。
upload上传演示(由于dropbox的API限制,文件不能大于150M):
download下载演示(注意文件如果含有空格必须加上引号,不然dropbox uploader会当成多个文件对待):
info用户信息演示;
list文件列表演示:
Dropbox uploader配置完成之后,备份OpenShift的数据备份就很方便了,只需要将数据库和所有文件打个包,一条命令就上传完成了,通过添加cron任务还可以实现定时自动备份;如果要还原的话也很简单,从Drobox下载备份的压缩包,解压到指定位置即可。
2013-06-24更新: 由于OpenShift对app路径做出细微调整,所以图”config file path”中的路径名改为: ”~/app-root/repo/dropbox/dropbox_uploader_cfg”(不包含引号),阅读时请注意.
本文为原创文章,未经允许请勿非法盗用资源。我们保护知识产权,尊重每一个创作者的劳动成果。如需转载,请务必注明出处并获得授权,谢谢合作!
作者:Lance | 发表日期:2012 年 8 月 18 日