分享自用Halo网站自助定时备份方案
本站为Halo2搭建,Halo2默认使用的是H2数据库。为了防止意外数据丢失,需要做定时备份。现有增加备份的插件,但是需要付费。因此本文来介绍一个自助的定时备份方案。
1. 配置git
1 | yum install -y git |
脚本提交的时候不输密码,所以需要配置ssh key,git远程仓库提供商的 ssh key配置验证方式不同。本文使用的是Gitee,可以查看其文档。
2. 初始化git仓库
1 | cd ~/.halo2 |
3. 编写自动备份脚本
blog_backup.sh:
1 |
|
测试是否可用:
1 | sh blog_backup.sh |
正常情况下,是可以将~/.halo2下的数据push到远程仓库中。
4. 配置定时任务
1 | crontab -e |
然后在末尾追加一行:
1 | 00 02 * * * ~/blog_backup.sh >> ~/blog_backup/blg_bk.log 2>&1 |
至于cron表达式如何写,可以自行查阅。这里的配置意思是,每天晚上2点运行备份脚本,并将其输出到指定的log文件中。
5. 总结
由于我是轻度使用,且博客的需求不是很大,因此使用免费的gitee备份,这种方案也有一些缺陷,比如gitee的容量配额是有限度的。
因此本文的分享仅仅是抛砖引玉,根据自己的需求也可以对脚本进行修改或者重写。比如可以推送到七牛云存储、阿里云存储等。也可以在备份失败后,发送邮件或者推送通知提醒等等功能。都是根据自己的不同需求和使用场景来修改。
All articles on this blog are licensed under CC BY-NC-SA 4.0 unless otherwise stated.