使用七牛 qshell 自动定时备份网站代码

安装

下载最新版的 qshell,并解压 zip 包,选择对应的版本。本文主要讲解如何在 Linux 64 位系统下使用 qshell 定时备份,所以这里选择 qshell_linux_amd64

[mc@hk03 ~]$ wget http://devtools.qiniu.com/qshell-v1.8.5.zip
[mc@hk03 ~]$ unzip qshell-v1.8.5.zip -d qshell

要让 qshell 运行起来,我们可以将它移动到 /usr/bin 目录,移动之前先检查下是否已经有了这个命令。

这表示存在:

[mc@hk03 ~]$ sudo whereis qshell
qshell: /usr/bin/qshell
[mc@hk03 ~]$

这表示不存在:

[mc@hk03 ~]$ sudo whereis qshell
qshell:
[mc@hk03 ~]$

当不存在的时候,我们就将 qshell 复制到 /usr/bin 下面:

[mc@hk03 ~]$ cd qshell
[mc@hk03 qshell]$ cp qshell_linux_amd64 qshell
[mc@hk03 qshell]$ sudo mv qshell /usr/bin/qshell

这时候 qshell 就存在了,运行 qshell -h 获取相关帮助,显示版本号及相关信息表示成功:

[mc@hk03 qshell]$ cd ~
[mc@hk03 ~]$ qshell -h
QShell v1.8.5
...

使用

如果你没有七牛账号,请先去注册一个账号,已有账号,登录七牛,进入 密钥管理,就能看到 AccessKey 和 SecretKey 了。

要使用 qshell 自动备份,需要用到的命令是 qupload,相关的文档在这里。文档说 qupload 功能需要配置文件的支持,那么我们先创建配置文件。

[mc@hk03 ~]$ sudo vi /etc/qiniuConfig.json

如果备份文件的目录在 /home/backup,那么配置可以这样:

{
   "src_dir"            :   "/home/backup",
   "access_key"         :   "_ABCDEGFHIJKLMNOPQRSTUVWXYZ",
   "secret_key"         :   "_ZYXWVUTSRQPONMLKJIHFGEDCBA",
   "bucket"             :   "backup",
   "zone"               :   "hn",
   "ignore_dir"         :   false,
   "up_host"            :   "http://up-z2.qiniu.com",
   "overwrite"          :   true,
   "check_exists"       :   true,
   "check_hash"         :   true,
   "check_size"         :   true,
   "skip_file_prefixes" :   ".git,bin",
   "skip_path_prefixes" :   "temp/",
   "skip_fixed_strings" :   ".svn",
   "skip_suffixes"      :   ".DS_Store,.exe",
   "rescan_local"       :   true,
   "log_file"           :   "/home/logs/qiniuUpload.log",
   "log_level"          :   "info"
}

接着添加定时任务,我的网站代码备份脚本是 vbackup,所以这里执行的是 vbackup,你可以改成自己的脚本。

编辑 /etc/crontab 文件,添加两条定时任务:

[mc@hk03 ~]$ sudo cat << EOF >> /etc/crontab
> 0 2 */2 * * root /etc/rc.d/init.d/vbackup start 2>&1 | tee /home/logs/backup.log
> 30 2 */2 * * root /usr/bin/qshell qupload 5 /etc/qiniuConfig.json
> EOF

这里命令的意思是每两天的 02:00 将网站代码进行备份,02:30 将备份数据上传到七牛。

整个过程最终触发了以下文件和目录:

/
├── etc
│   ├── crontab
│   ├── qiniuConfig.json
│   └── rc.d
│       └── init.d
│           └── vbackup
├── home
│   ├── backup
│   ├── logs
│   │   ├── backup.log
│   │   └── qiniuUpload.log
│   └── mc
│       ├── .qshell
│       ├── qshell
│       │   └── qshell_linux_amd64
│       └── qshell-v1.8.5.zip
│   
└── usr
    └── bin
        └── qshell

扩展阅读

免费领取七牛云 10GB 空间 20GB 流量
https://github.com/qiniu/qshell
https://github.com/qiniu/qshell/wiki/qupload
https://github.com/maicong/LNMP/blob/master/etc/rc.d/init.d/vbackup
http://d.qiniu.com/code/v6/tool/qshell.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值