linux下实现VPS免费备份脚本

 更新时间:2012年05月11日 23:30:34   作者:  
因为本bolg是架设在vps上的,空间商又没有提供备份的功能,所以说哪天vps挂了,我的网站也就跟着挂了
有人说你怎么不备份呢?这个问题我也考虑过啊,其实你有没有想过对于这种国外的vps什么的,备份一下所有的网站怎么说也得百十兆吧。

你总不能天天去下载吧?这带宽可受不了,就算是带宽充足,说不定vps哪天也让你给下载挂了。

ok~切入正题,先说这个免费备份的问题,实际上也不免费,只是有个前提,那就是你在godaddy.com的买的有域名,大家都知道在godaddy上买域名可以免费申请空间的,对于不用这东西的来说实在是太浪费了,所以今天的主题就是针对那些在godaddy买过域名有免费空间的盆友(在godaddy有域名没申请空间的可以去问问度娘谷哥)

那我们备份vps的原理就是利用shell脚本备份网站以及数据库,然后通过ftp脚本吧备份文件上传到godaddy的免费空间,简单吧。

那我就直接上脚本了~嘿嘿。

下面这个是备份网站和数据库的脚本:
复制代码 代码如下:

#!/bin/bash
#set -x
time=`date +%Y%m%d`
#下面是备份MySql
[ ! -e /backup/sqltmp ] && mkdir -p /backup/sqltmp #创建临时备份mysql目录
[ ! -e /backup/backsql ] && mkdir -p /backup/backsql #创建mysql备份的存放目录
cd /backup/sqltmp
sql=`mysqlshow -u用户名 -p密码 |grep -v + | grep -Ev “Data|information|mysql|test” | awk {‘print $2′}` #查询mysql数据库里出系统数据以外的网站数据库,这里可以根据需要修改
for sqlname in $sql
do
mysqldump -u用户名 -p密码 $sqlname > $sqlname.sql
done
tar zcvf backsql.$time.tar.gz *.sql
rm -rf *.sql
mv * ../backsql/.
cd ..
rm -rf sqltmp
#下面是备份网站
[ ! -e /backup/webtmp ] && mkdir -p /backup/webtmp #创建临时备份web文件目录
[ ! -e /backup/backweb ] && mkdir -p /backup/backweb #创建web文件备份的存放目录
cd /backup/webtmp
tar zcvf backweb.$time.tar.gz /home/*
mv * ../backweb/.
cd ..
rm -rf webtmp

下面这个是上传到通过ftp把备份网站上传到godaddy空间上的脚本:
复制代码 代码如下:

#!/bin/bash
backsql=`cd /backup/backsql;ls -r backsql* | head -1` #因为每天都备份文件取最新的那个
backweb=`cd /backup/backweb;ls -r backweb* | head -1`
ftp -n<<EOF
open ip #这里写godaddy空间的ip
user ftp用户名 ftp密码
binary
cd /back/ #备份文件要存放的ftp上的路径
lcd /backup/backsql/ #备份mysql文件本地存放路径
prompt
mput $backsql
lcd /backup/backweb/ #备份web文件本地存放路径
mput $backweb
close
bye
EOF

然后把这两个脚本做个crontab计划任务就实现每天定时异地备份了,而且省时省力省钱。
复制代码 代码如下:

[root@90itt.com ~]# crontab -e
01 0 * * * /root/backup.sh
0 5 * * * /root/ftp.sh

相关文章

  • 配置fail2ban对Apache服务器进行安全防护的方法

    配置fail2ban对Apache服务器进行安全防护的方法

    这篇文章主要介绍了配置fail2ban对Apache服务器进行安全防护的方法,主要是起到过滤IP地址的效果,示例基于Linux系统,需要的朋友可以参考下
    2015-06-06
  • linux中设置固定ip的方法(亲测有效)

    linux中设置固定ip的方法(亲测有效)

    这篇文章主要介绍了linux设置固定ip的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-04-04
  • linux控制台下实现2048小游戏

    linux控制台下实现2048小游戏

    2048小游戏已经火了很久了,各种程序版本的都有,今天我们就来给大家分享一个在Linux控制台中实现2048小游戏的代码,希望大家能够喜欢。
    2015-03-03
  • Ubuntu16.04下CUDA8.0和CUDA9.0共存

    Ubuntu16.04下CUDA8.0和CUDA9.0共存

    这篇文章主要介绍了Ubuntu16.04下CUDA8.0和CUDA9.0共存,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-08-08
  • Linux 常用的文件基本指令

    Linux 常用的文件基本指令

    这篇文章主要介绍了Linux的常用的文件指令,文章中详细列出了常用指令,感兴趣的小伙伴可以参考一下
    2023-04-04
  • linux编辑文件保存退出的实操讲解

    linux编辑文件保存退出的实操讲解

    在本篇文章里小编给大家整理的是一篇关于linux编辑文件保存退出的实操讲解内容,需要的朋友们参考下。
    2020-02-02
  • Linux防火墙配置及iptables与firewalld的使用解读

    Linux防火墙配置及iptables与firewalld的使用解读

    防火墙是一种网络安全设备,通过规则控制进出网络的访问行为,它分为硬件防火墙和软件防火墙两大类,iptables是Linux系统中用于配置防火墙的工具,具有4个表和5个链,firewall命令用于配置和管理防火墙,有drop、block、public、external、dmz等不同的区域配置
    2025-01-01
  • Linux中禁止用户修改/重置密码

    Linux中禁止用户修改/重置密码

    这篇文章主要给大家介绍了关于在Linux中禁止用户修改/重置密码的相关资料,文中给出了详细的示例代码供大家参考学习,对大家具有一定的参考价值,需要的朋友们下面跟着小编一起来看看吧。
    2017-06-06
  • Apache Rewrite url重定向功能的简单配置

    Apache Rewrite url重定向功能的简单配置

    Rewrite url重定向就是实现URL的跳转和隐藏真实地址,基于Perl语言的正则表达式规范。平时帮助我们实现拟静态,拟目录,域名跳转,防止盗链等
    2010-08-08
  • Linux系统交换空间介绍

    Linux系统交换空间介绍

    今天小编就为大家分享一篇关于Linux系统交换空间介绍的文章,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2018-09-09

最新评论