LINUX Centos7利用七牛空间做定时备份 qshell定时备份,定时上传到七牛空间
Table of Contents
网站有了,自动部署有了,自动备份也有了,怎么把备份的文件上传到某个地方,比如七牛空间
为了服务器在不必要的时候宕机,而且又无法重启服务器时,里面的备份文件是无法拿到的,这个时候如果有其他地方的备份就可以了,那么现在就来设置他
风.foxwho
定时备份 MYSQL ¶
以定时 备份 MYSQL 为例,统一备份文件到/www/backup
目录,然后定时上传
http://blog.csdn.net/fenglailea/article/details/70462153
http://www.foxwho.com/article/102
七牛 QSHELL 介绍及文档 ¶
https://developer.qiniu.com/kodo/tools/1302/qshell
七牛QSHELL 下载 ¶
https://github.com/qiniu/qshell?ref=developer.qiniu.com#下载
打开连接后 下载
到服务器上
并解压缩
,这里的服务器为 Centos7
,那么使用的文件是qshell_linux_amd64
以我的服务器上操作为例
mkdir /www/tool/
mv qshell_linux_amd64 /www/tool/qshell
qshell 备份命令 ¶
cd /www/tool/
vim qshell_upload.sh
加入以下
#!/bin/bash
AccessKey=七牛账号下的 AccessKey
SecretKey=七牛账号下的 SecretKey
#要备份的目录
BACK_PATH=/www/backup
# 当前目录
IN_PWD=/www/tool/
cd $IN_PWD
# 标志设置 七牛账号相关的是否已设置
QSHELL_ACCOUNT=$IN_PWD/conf/account.ok
# 上传配置文件
QSHELL_CONF=${IN_PWD}/conf/qshell.conf
# 初始化 一次,七牛账号下的 AccessKey 和 SecretKey
#qshell account AccessKey SecretKey
# 检测文件是否已存在,如果不存在 重新设置
if [ -f $IN_LOG ]; then
echo \"已设置过\"
else
qshell account $AccessKey $SecretKey
touch $QSHELL_ACCOUNT
echo \"设置OK\"
fi
if [ ! -f $QSHELL_CONF ]; then
echo \"上传配置文件 不存在,请设置配置文件\"
exit 0
fi
echo \"输出本地指定路径下所有的文件列表\"
echo \"dircache $BACK_PATH $BACK_PATH/test.log\"
qshell dircache $BACK_PATH $BACK_PATH/test.log
echo \"开始上传\"
echo \"qshell qupload 1 ${QSHELL_CONF}\"
qshell qupload 1 $QSHELL_CONF
echo \"SUCCESS\"
设置可执行权限
chmod +x qshell_upload.sh
qshell 配置文件 ¶
cd /www/tool/
mkdir -p conf
vim conf/qshell.conf
加入
{
\"src_dir\" : \"/www/backup\",
\"bucket\" : \"foxwho-backup\",
\"file_list\" : \"\",
\"key_prefix\" : \"foxwho.server/\",
\"up_host\" : \"\",
\"ignore_dir\" : false,
\"overwrite\" : false,
\"check_exists\" : false,
\"check_hash\" : false,
\"check_size\" : false,
\"rescan_local\" : true,
\"skip_file_prefixes\" : \"test,demo,\",
\"skip_path_prefixes\" : \"hello/,temp/\",
\"skip_fixed_strings\" : \".svn,.git\",
\"skip_suffixes\" : \".DS_Store,.exe\",
\"log_file\" : \"upload.log\",
\"log_level\" : \"info\",
\"log_rotate\" : 1,
\"log_stdout\" : false
}
设置定时上传 ¶
运行如下命令
# 编辑系统任务
crontab -e
在最后一行加入
#每天 4点20分 定时执行 同步上传
20 4 * * * /www/tool/qshell_upload.sh
crontab基本格式 : ¶
* * * * * command
分 时 日 月 周 命令
第1列表示分钟1~59 每分钟用*或者 */1表示
第2列表示小时1~23(0表示0点)
第3列表示日期1~31
第4列表示月份1~12
第5列标识号星期0~6(0表示星期天)
第6列要运行的命令
首发 http://www.foxwho.com/article/101 .
同步自 我的博客 http://www.foxwho.com