AutoBackupWebServer(Web directory + MySQL) - WEB 服务器自动备份脚本
This is a script that automatically backs up your site and database to local or to Qiniu,UpaiYun,TencentCOS,BaiDuCloud,ftp
仅在CentOS 6 x64 && CentOS 7 x64 && Ubuntu 16.04 x64 测试通过
SFTP
命令)欢迎给我们提建议!
bash-ini-parser
解析用户配置文件config.ini
mysqldump
导出数据库zip
压缩备份qshell
,又拍官方upx
,如果没有使用wget
下载,qshell
上传七牛云或者upx
又拍云coscmd
,如果没有则通过pip
安装,调用coscmd
上传腾讯云对象存储bpcs_uploader
上传百度云(请保证安装php
和curl
)ftp
上传ftpecho
和tee
同时显示屏幕和输出到文件ssh
和sftp
连接到远程服务器,实现传输文件,ssh
传递密码通过sshpass
实现打包下载:https://github.com/CHN-STUDENT/WebServerAutoBackup/archive/master.zip
yum -y install wget zip ftp curl ssh sftp sshpass #for CentOS/Redhat
# apt-get -y install wget zip ftp curl ssh sftp sshpass #for Debian/Ubuntu
git clone https://github.com/CHN-STUDENT/WebServerAutoBackup.git
cd WebServerAutoBackup
vi config.ini //修改配置文件内的网站、数据库等参数
chmod a+x backup.sh
./backup.sh //使用默认配置文件运行
./backup.sh config-customize.ini //使用指定配置文件运行
注意:请勿将临时目录设置成根/
等重要目录,不然可能会造成系统及重要数据丢失的情况!!!这些目录也尽量不要设置到移动硬盘上,防止移动断电等意外情况。
crontab -e
0 2 * * * cd /root/WebServerAutoBackup && ./backup.sh > /data/backup/log/backup-cron.log 2>&1 &
#请自行修改脚本文件目录和输出日志文件目录
coscmd
,需要python
且版本为2.7sshpass
命令,该命令会记住第一次正确的密码,后期为了安全可以将该密码删除bpcs_uploader工具使用说明:bpcs_uploader/README.md
ini 解析引擎 bash-ini-parser
Github:https://github.com/albfan/bash-ini-parser
bpcs_uploader 百度云上传工具
Github:https://github.com/oott123/bpcs_uploader
七牛官方Shell工具 qshell
Github:https://github.com/qiniu/qshell/
又拍官方Shell工具 upx
Github:https://github.com/polym/upx
腾讯云对象存储命令行工具coscmd