备份自己的博客内容

点击量:14

由于博客经常更换,好的坏的文章,无意中丢失了不少。打算以后好好备份自己的博客文件,设置一下备份频率。

考虑一下,需要备份的文件主要是post。行文至此,猛然想到其实可以直接用git实现,但是既然已经配置了邮件服务,那么就这样吧。

使用mail服务实现

这种方法相对简单一些。

首先是需要配置一下mail.rc

# vi /etc/mail.rc  
set from=ss@qq.com
set smtp=smtp.qq.com
set smtp-auth-user=ss
set smtp-auth-password=asdfads
set smtp-auth=login

首先要压缩一下,节省流量

tar czvf post.tar $source

发送邮件

echo 'normal backup' | mail -a post.tar -s `date +%Y-%m-%d-backup` sfdsafa@qq.com

然后就可以在邮件中接收到备份的邮件了。
如果把这个简单脚本加入到自己的hexo_deploy.sh中,则可以在更新博客的同时备份自己的hexo博客文章。

使用git实现

使用git实现其实挺简单,因为使用的是Hexo-admin插件,可以自行配置脚本,在脚本中加入自动推送git更新即可。其中,使用git推送有两种方案:

git方案还是容易出问题的。如果在source文件中建立git-repo,会把.git文件也deploy上去。如果添加ignore的类似选项,又未免有些麻烦。当然,如果能够使用git进行一劳永逸的方法,应该是将post文件直接复制另一个不与pages相关的文件夹中去,来进行更新。git比直接发送邮件要节省流量。

  1. 一种是添加ssh公钥,实现无需验证密码,直接将更新push到git仓库。
    (待定)
  2. 使用Gitpython进行push,可操作性更强。关于Gitpython,参见后方。
    (待定)

使用rsync实现

增量备份服务。因为是增量备份,所以不需要考虑每次上传的流量问题,相对来说是最节省流量的方案。
仅仅考虑Linux。此外,Win可以通过Linux-subsystem实现,以此来备份到本地。

rsync是通过ssh进行备份的命令。其算法在coolshell.cn上有所讲述。

使用lftp实现

(待续)

发表评论

电子邮件地址不会被公开。 必填项已用*标注