老左之前博文中分享了自动备份文件到FTP空间以及手工备份VPS的方法,前者需要我们额外的FTP空间,后者还需要每次手工,各有缺点,比如我这样的懒人也懒得有规律的去主动备份网站。有没有一个方法,既不要花钱买额外的空间,又可以自动备份网站数据呢?方法当然是有的,我们可以利用国外的云盘Dropbox进行数据的定时备份。继续看,如何去做。
第一步,登陆VPS,然后利用wget下载dropbox安装包(切记:在root目录下)
wget -O dropbox.tar.gz http://www.dropbox.com/downloadplat=lnx.x86 #32位系统
wget -O dropbox.tar.gz http://www.dropbox.com/downloadplat=lnx.x86_64 #64位系统
第二步,解压安装包,运行安装
tar zxvf dropbox.tar.gz #解压
.dropbox-dist/dropboxd #运行
第三步,运行后会出现一段网址,我们复制黏贴到浏览器中,是需要我们来绑定DropBox账户的
如果你还没有dropbox账户就需要先注册(我要注册Dropbox)一个了,默认账户送2G存储空间,可以进行任务升级,一般2G也够用。(有些地区是打不开网站的)。绑定成功在SSH中会看到成功字样,回车就OK。
第四步,建立软连接
cd ~/Dropbox
ln -s /home/wwwroot
意思很简单,我们在Dropbox文件夹中会看到是我们Dropbox的所有内容,不相信我们可以安装了本地客户端然后看到,然后我们需要把wwwroot下的网站同步快捷方式到Dropbox下,这样可以达到同步备份。
第五步,同步软连接数据
.dropbox-dist/dropboxd
在root目录下运行上述的命令会同步文件在我们看到的dropbox浏览器界面客户端
第六步,定时进行同步数据
因为运行备份定时会占用不小的内存,也没有必要及时同步,我们可以设置定时备份。
killall dropbox #关闭守护进程
在root目录下放置backup.sh脚本文件(右键下载即可)
chmod +x backup.sh #给予权限
crontab -e #赋予周期0 4 * * * sh /root/backup.sh restart
0 5 * * * sh /root/backup.sh stop开始和结束时间,早上4-5点进行运行
第七步,数据库备份
上面我们文件备份完毕了,数据库也需要备份的,需要下面的脚本bakmysql.sh(下载另存为)
同样的,可以按照第六步给予授权并且设置定时运行时间。脚本中文件的路径需要根据我们自己的实际情况修改,因为系统不同,按照的目录也不同。
PS:这篇教程老左参考了网上很多相似的方法,很多人省掉了很多步骤,对于新手操作还真的有点困难。