1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > Linux差异备份的脚本 linux 差异备份 增量备份

Linux差异备份的脚本 linux 差异备份 增量备份

时间:2018-07-06 21:30:16

相关推荐

Linux差异备份的脚本 linux 差异备份 增量备份

今晚想起来要备份自己的网站时想到了差异备份和增量备份。

以前只是把数据库导出然后再发送到自己的邮箱里。这倒是省了很多事。只不过网站就有点大了50多M 了呢。所以备份到邮箱有点吃力。

在搜索引擎(以前念引xing,知道读音不对。但是不好在百度上查,还好有和我读音一样的)输入差异备份 linux 。还能搜出好多。

用的最多的是tar 和rsync。我准备先用tar试试。这里有必要说一下差异备份和增量备份。增量备份:备份上一次备份后变化的文件。差异备份,全备份后变化的文件。

自己根据网上的例子也写了一个:

#!/bin/bash

if [ `date +%d` = "01" ]

then

bakdir="/www/back/month/"`date +%m%d`

zl="" #每月1号进行完全备份

else

bakdir="/www/back/month/"`date +%d`

zl="-N "`date +'%Y-%m-01 00:00:01'`;# 差异备份

#zl= "-N"`date -d '-1 day' +'%Y-%m-%d 00:00:01'`#日增量备份

fi

mkdir -p ${bakdir}

back_file_name="blog-`date +%Y%m%d`.tar.gz"

tar "${zl}" -czf ${bakdir}/${back_file_name} /www/blog

7zip a ${bakdir}/${back_file_name}.7z -pPASSWORD -mhe -mx9 ${bakdir}/${back_file_name}

mutt -a ${bakdir}/${back_file_name}.7z -s "${back_file_name}.7z" XXX@ /tmp/filelist.txt

#tar -cz -T /tmp/filelist.txt -f /www/back/xxx.tgz /www/blog

#tar -g 来差异备份

#先用-g snapshot 来创建当前的快照

#snapshot 文件就包含当前时间和要备份的文件列表

#tar -cf a.tar /home -g snapshot

#tar -g snapshot -cf a_incremen.tar /home

这里用到了几个命令的参数:

date +%m%d 当前月份和日子

tar -N 仅仅备份比这个参数后日期新的文件

date -d ‘-1 day’ 1天前

tar还有个g参数,先创建一个镜像,在备份时就增量备份。

上面的例子是以月为周期,也可以改为以周为周期。

今早收到QQ的邮件,说最近收到过量的大邮件。5天内不能接受超过5M的邮件了。

-03-30:今天突然发现上面的程序有点问题。-N 后面应该加全备份的时间。也就是从全备份后发生变化的文件以后才备份。这里用到date的另一个参数u,用数字表示的参数。

经修改后为:

bakdir="/www/back/week/"`date +%A`

uu=`date +%u`

let aa=$uu-1

zl="-N "`date -d "- $aa day"`;# 差异备份

英语不行,所以参数随便编。

ps:在调试的过程中比小心用tar创建了一个名为“-N”的文件,用rm -N没法删除就从网上搜了一下,找到了方法。

rm — -N 或者是rm ./-N

-04-07 0:16补充 又发现了一个问题啊。如果删除了某个文件,tar也不知道啊。-N 只有在修改后者添加新文件后才有效啊!-g这个好像 也是不太管用!

请选择你看完该文章的感受:

随机文章:

This entry was posted

on Wednesday, March 23rd, at 20:28and is filed under 建站日志, 我的日志.

You can follow any responses to this entry through the RSS 2.0 feed.

You can leave a response, or trackback from your own site.

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。