一直想写一篇关于网站本地备份和远程备份的文章,相关草稿其实在 6.12 号就写好了,一直因为没有测试环境,没发布出来。时间久了,也就忘了,回头找个时间测试下再发布好了。
今天分享的工具也和备份有关,而且是远程备份,这个工具算是我的无聊之作吧,虽说 WordPress 已经有 wp2pcs 这类备份插件了。相信折腾 VPS 的站长会喜欢我这个工具的,因为它不会常驻占用资源。
一、工具档案
工具名称:Backup_to_QiNiu_By_ZhangGe_Ver1.0.sh
工具语言:Shell,json
工作环境:Linux
功能描述:通过 Linux 系统计划任务,将网站文件及数据库备份到七牛的免费云存储空间
额外说明:
①、工具默认使用 zip 打包,如果系统未安装 zip,将使用 tar 打包成 tar.gz 格式;
②、为了避免中文乱码,工具中全部采用洋文,张戈水平有限,可能存在蹩脚语法(下文有中文对照);
③、使用原生交互风格,未做界面菜单式优化,反正初始化也就用一次。
二、使用说明
①、下载工具:
进入 VPS 系统,执行以下命令下载工具:
1
|
cd && wget http://static.zhangge.net/diy_tools/Backup_to_QiNiu_By_ZhangGe_Ver1.0.sh
|
②、运行工具,并根据工具提示输入信息:
1
|
chmod +x ./Backup_to_QiNiu_By_ZhangGe_Ver1.0.sh && ./Backup_to_QiNiu_By_ZhangGe_Ver1.0.sh
|
过程如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
[root@jiukeyi ~]# ./Backup_to_QiNiu_By_ZhangGe_Ver1.0.sh
Please input the webroot like /domain/zhangge.net/public_html:输入你网站文件存放路径
Please input the access_key:输入七牛的access_key
Please input the secret_key:输入七牛的secret_key
Please input the bucket name:输入七牛的空间名
Please input the mysql username:输入数据库账号
Please input the mysql password:输入数据库密码
Please input the database name:输入数据库名称
Please input the backup path:输入备份文件的临时存放路径,直接回车将存放在/usr/local/qiniu/backup
Please input the backup rate time(like 1/2/3..30):输入备份间隔,比如输入7表示每七天备份一次
#回车后,出现下图信息则为成功:
=========================The crontab list=================================
#Add by QN_Backup Scripts
0 0 */7 * * sh /usr/local/qiniu/QN_backup.sh /www/web/default test2 123456 /www/backup_temp mytest
=========================The crontab list=================================
compelet!
|
下面贴上测试截图:
执行完成后,可以复制 crontab 的命令行,手动执行试试效果:
1
|
sh /usr/local/qiniu/QN_backup.sh /www/web/default test2 123456 /www/backup_temp mytest
|
备份成功后,七牛对应的空间将可以看到刚刚备份的文件:
以上过程为初始化,只需执行一次即可,当然重复执行也没关系哈,只是覆盖了设置而已。
三、后期维护
做完初始化设置之后,如果想改变备份间隔或者备份目标之类的,你可以编辑系统计划任务,来重新定义:
1
2
3
4
|
#执行crontab -e,打开计划任务编辑界面
[root@jiukeyi ~]# crontab -e
#Add by QN_Backup Scripts
0 0 */7 * * sh /usr/local/qiniu/QN_backup.sh /www/web/default test2 123456 /www/backup_temp mytest
|
以上第 4 行则为备份的命令行,以下为后期修改说明:
前 5 列表示执行频率,具体为 分 时 日 月 周,工具默认是定义在【日】这一列,代码中的 */7 表示每 7 天备份一次;
/www/web/default:需要备份的网站文件路径
test2、123456:数据库用户名和密码
/www/backup_temp:备份文件存放地址,每次备份的文件将保留至下一次备份才会被删除,差不多算本地备份了。
mytest :数据库名称
Ps:当然你也可以仿照第 4 行,根据实际需要插入多条任务计划。
四、工具展望
此工具也只是张戈的无聊蛋疼作品,VPS 用户实在不多,而且都有自己的一套备份系统。发这个工具的目的也只是为了给备份网站多一条出路。
视受欢迎程度,下一版工具将加入
①、网站文件/数据库分开备份的自定义机制;
②、做成菜单式,将项目分开设置,包括后期维护的交互式菜单,提高易用性
五、附录:七牛云存储
七牛云存储的介绍:http://zhangge.net/1126.html
七牛云存储推广注册链接:https://portal.qiniu.com/signup?code=3lgiiufrno1ua
就说这么多,需要张戈帮忙部署备份的 VPS 用户,请留言即可!张戈可提供无偿服务!