前两天,我的美国VPS再一次出问题,系统无法重启,跟那边说了,没回应,只好自行重装系统。悲催的是,数据只能备份到11月7日,唉,都是没备份的惹祸。为了防止这样的事情再一次发生,我利用国外的云盘Dropbox进行数据的定时备份,这样再也不担心什么了。下面是相关的教程,感谢下小旭旭,因为他解答了我不少问题。
第一步,登陆VPS,然后利用wget下载dropbox安装包(切记:在root目录下)
wget -O dropbox.tar.gz http://www.dropbox.com/download?plat=lnx.x86 #32位系统
wget -O dropbox.tar.gz http://www.dropbox.com/download?plat=lnx.x86_64 #64位系统
第二步,解压安装包,运行安装
tar zxvf dropbox.tar.gz #解压
.dropbox-dist/dropboxd #运行
第三步,运行后会出现一段网址,我们复制黏贴到浏览器中,是需要我们来绑定DropBox账户的
如果你还没有dropbox账户就需要先注册(我要注册Dropbox)一个了,默认账户送2G存储空间,可以进行任务升级,一般2G也够用。(有些地区是打不开网站的,需要越墙)。绑定成功在SSH中会看到成功字样,回车就OK。
第四步,建立软连接
新建个网站备份目录,设置755权限,并用软连接指向
cd ~/Dropbox
ln -s /home/backup # (/home/backup )是网站备份目录
第五步,同步软连接数据
.dropbox-dist/dropboxd
在root目录下运行上述的命令会同步文件在我们看到的dropbox浏览器界面客户端
第六步,定时进行同步数据
因为运行备份定时会占用不小的内存,也没有必要及时同步,我们可以设置定时备份。
killall dropbox #关闭守护进程
在root目录下放置 backup.sh脚本文件,备份网站和数据库
chmod +x backup.sh #给予权限
crontab -e #赋予周期
0 2 * * * sh /root/backup.sh start
早上2点进行并自动退出
backup.sh代码,压缩网站文件和数据库,定时删除3天前的文件
#/bin/bash
mysqldump --user=root --password='数据库密码' --databases 数据库名| gzip > /home/backup/数据库名-`date +%Y%m%d%H%M`.sql.gz
tar -zcvf /home/backup/网站域名-`date +%Y%m%d%H%M`.tar.gz /home/wwwroot/网站目录
find /home/backup -type f -mtime +3 -exec rm -f '{}' \;
在root目录下放置 dropbox.sh脚本文件,同步文件和数据库
chmod +x dropbox.sh #给予权限
crontab -e #赋予周期
0 3 * * * sh /root/dropbox.sh start
0 4 * * * sh /root/dropbox.sh stop
早上3点开始,4点结束
dropbox.sh脚本代码
#!/bin/sh
start() {
echo starting dropbox
/root/.dropbox-dist/dropboxd &
}
stop() {
echo stoping dropbox
pkill dropbox
}
case "$1" in
start)
start
;;
stop)
stop
;;
restart)
stop
start
;;
esac
复制脚本代码的时候,请使用UltraEdit编辑器,把文件格式转换为unix(流程为:文件-转换-DOS到UNIX),否则会出错。
脚本代码是放在root下面的,启动停止的命令:
备份命令
./backup.sh start
同步的代码为
./dropbox.sh start
./dropbox.sh stop
因为dropbox的相关命令在dropbox.sh里面
删除卸载dropbox方法:
killall dropbox
rm -rf .dropbox .dropbox-dist Dropbox dropbox.tar.gz dbmakefakelib.py dbreadconfig.py
好了,教程到这里结束了,大家慢慢折腾。
感谢博主,用上了,测试之后貌似只备份下来了网站目录,数据库没有打包备份,不知道是什么问题。
文中backup.sh数据库那段mysql目录前少写了backup目录。
再次测试备份成功,感谢博主的教程
有用就好,我修改好了代码。其实现在用的备份方法比这个更简单,不用安装linux客户端,采用脚本上传,改日分享出来。
那就期待博主的更新了 -。-
博主真年轻。。。
深圳好地方。
现在也快30了,不年轻。