Linux下备份到腾讯云cos、阿里云oss、七牛云存储脚本工具

简要说明:


这是一个定时将网站备份的脚本。支持腾讯云、阿里云、七牛云存储。这个脚本的运行环境:CentOS 6-7(64)RedHat 6-7(64)。腾讯云、阿里云环境下均使用官方推荐工具,从而获得急速上传速率。但是,由于七牛云存储上传速度受多方面限制,故不推荐使用。

本脚本每次执行都会自动检测是否有更新版本,故如有BUG问题,请及时提交以方便修复。

更新日志:


20171017:代码重构,支持将网站上传到腾讯云COS、阿里云OSS、七牛云存储(0.1)

20171018:修复cos.conf判断错误(0.1.1)

20171023:增加阿里云多站点备份(0.1.2)

20171025:增加腾讯云多站点备份,修复多站点压缩备份BUG(0.1.3)

20171029:修复阿里云下crontab不能正常上传bug(v0.1.4)

20171030:修复阿里云/腾讯云修改key后,备份报错问题。移动pip判断到相应位置(v0.1.5)

安装步骤:


1,配置crontab

crontab -e

50 23 * * * /bin/sh /tmp/itxg.sh

备注:每天2350分,执行/tmp/itxg.sh

2,配置itxg.conf,首次执行itxg.sh将在本目录下生成itxg.conf配置文件。配置文件信息如下:

####----公共----####
#当前配置文件版本
conf_version=$version
#(必填)enable=tengxun为开启备份到腾讯,qiniu为备份到七牛,aliyun为备份到阿里云,baiduyun为>备份到百度云
enable=
#备份周期0天为不删除备份文件
rmdate=0
#开启数据库备份yes,no
db_enable=no
#(必填)需要备份的网站目录,绝对路径末尾不需要加/
backup_file=
####----多站点----####
#是否支持多站点,默认为关闭
multistation=no
#数字从0开始,因此2个站点该数字写1
multisitenumber=1
#上传到一个bucket下的不同目录,例如:shengbao itxueguan
multlist=(shengbao itxueguan)
#多站点备份路径,2个站点路径中间以空格分割。绝对路径末尾不需要加/
backup_filelist=(/data1 /data2)

####----数据库----####
#数据库用户名
DB_USER=
#数据库密码
DB_PASS=
#数据库连接地址
DB_HOST=localhost
#数据库名称
DB_NAME=
#多站点数据库名称列表
multdblist=(shdb itxgdb)
####----腾讯----####
#你的bucket名称
txbucketname=
#腾讯access_id
txaccess_id=
#腾讯secret_key
txsecret_key=
#腾讯txappid
txappid=
#腾讯访问api区域,北京一区华北(ap-beijing-1),北京(ap-beijing),华东(ap-shanghai),华南(ap-guangzhou),西南(ap-chengdu),新加坡(ap-singapore),香港(ap-hongkong),多伦多(na-toronto),法兰克福(eu-frankfurt)
txregion=
####----阿里云----####
#你的bucket名称
albucketname=
#阿里云access_id
alaccess_key_id=
#阿里云secreret_key
alaccess_key_secret=
#阿里云endpoint
alendpoint=
####----七牛----####
#你的证书ID
qnak=
#你的证书key
qnsk=
#你的bucket名称
qiniubucket=
####----结束----####

备注:标注(必须)的为必须设置,当设置enable=tengxun时,腾讯配置所有项变为必填项。其他配置类似。

常见问题:


1,数据库开启备份后:"Warning: Using a password on the command line interface can be insecure."为正常现象。

下载地址:


wget update.itxueguan.com/itxg.sh


注明:本文章为转载.