<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0">
<channel>
<title><![CDATA[Totti的部落格]]></title> 
<link>https://iam.ittot.com/index.php</link> 
<description><![CDATA[记录我的生活，收集我的收集]]></description> 
<language>zh-cn</language> 
<copyright><![CDATA[Totti的部落格]]></copyright>
<item>
<link>https://iam.ittot.com/read.php/.htm</link>
<title><![CDATA[用tar实现linux 文件增量备份]]></title> 
<author>Totti &lt;totti5116@163.com&gt;</author>
<category><![CDATA[收集]]></category>
<pubDate>Tue, 28 Jun 2011 07:23:51 +0000</pubDate> 
<guid>https://iam.ittot.com/read.php/.htm</guid> 
<description>
<![CDATA[ 
	<br/>作者主页： <a href="http://blog.sina.com.cn/xunyiqq" target="_blank">http://blog.sina.com.cn/xunyiqq</a><br/>#!/bin/bash<br/>#好的做法<br/>#根据项目不同来重命名该脚本<br/>#例如 amountebak.sh or pandawillsbak.sh<br/>#该脚本最好放在 $bakpp定义的绝对路径部分<br/>#你可以在$bakpp下找到相应的备份文件<br/>#例如 /usr/backup/amountebak.sh&nbsp;&nbsp;or /usr/backup/pandawillsbak.sh<br/><br/><br/>########## Init Path ########<br/># 在下面的参数中必须定义的参数有 $bakpp、$project、$projectpp<br/>TAR=/bin/tar<br/>#&nbsp;&nbsp;存放备份文件的地方，以项目名称区分<br/>bakpp=/usr/backup/"$project"<br/># 需要备份的文件夹，文件夹的路径<br/>project=test<br/>projectpp=/home/mmroot/zbb/<br/># parament for varible<br/>ym=`date +%Y%m`<br/>ymd=`date +%Y%m%d`<br/># 存储备份文件的子目录，以月份区分，他的上级目录是$bakpp定义的<br/>monthbakpp=$bakpp/$ym<br/>gidpp=$monthbakpp<br/>gidshot=gid$project$ym<br/># 完全备份的文件名<br/>fullname=$ym<br/># 增量备份的文件名<br/>incrementalname=$ymd<br/># Record the location of the log<br/>log=$bakpp/$project.log<br/><br/>############ chk_full #######################<br/># 检查完全备份是否存在，如果不存在就创建它<br/><br/>#this function check fullbackup file exist or not , if not then create fullbackup now<br/><br/>chk_full()<br/>&#123;<br/>if [ -e "$monthbakpp"/"$project"_"$ym"_full.tar.gz ];then<br/>echo ""$project"_"$ym"_full.tar.gz file exist!! ====`date +%Y-%m-%d-%T` " >>$log<br/>else<br/>tar_full<br/>fi<br/>&#125;<br/>######### chk_incremental ########<br/># 检查增量备份是否存在<br/>chk_incremental()<br/>&#123;<br/>while [ -e "$monthbakpp"/"$project"_"$incrementalname"_incremental.tar.gz ]<br/>do<br/>incrementalname=`echo "$incrementalname + 0.1" &#124; bc `<br/>done<br/>&#125;<br/>######## tar_incremental #######<br/># 执行增量备份<br/>tar_incremental()<br/>&#123;<br/>cd $projectpp<br/>echo "BEIGIN_TIME=====`date +%Y-%m-%d-%T` ==== CREATE "$project"_"$incrementalname"_incremental.tar.gz" >> $log<br/>sleep 3<br/>$TAR -g $gidpp/$gidshot -zcf $monthbakpp/"$project"_"$incrementalname"_incremental.tar.gz $project<br/>echo "END_TIME========`date +%Y-%m-%d-%T` ==== CREATE "$project"_"$incrementalname"_incremental.tar.gz" >> $log<br/>&#125;<br/><br/>######## tar_full ###########<br/>tar_full()<br/>&#123;<br/>touch $gidpp/$gidshot<br/>cd $projectpp<br/>echo "BEIGIN_TIME=====`date +%Y-%m-%d-%T` ==== CREATE "$project"_"$fullname"_full.tar.gz" >> $log<br/>$TAR -g $gidpp/$gidshot -zcf $monthbakpp/"$project"_"$fullname"_full.tar.gz $project<br/>echo "END_TIME========`date +%Y-%m-%d-%T` ==== CREATE "$project"_"$fullname"_full.tar.gz" >> $log<br/>&#125;<br/><br/>########### backup ##############################<br/># 总体调用备份，此时会做相应的检查以确保备份前提准备充分<br/>backup()<br/>&#123;<br/> if [ -d $monthbakpp ]; then<br/>&nbsp;&nbsp; chk_full<br/>&nbsp;&nbsp; chk_incremental<br/>&nbsp;&nbsp; tar_incremental<br/> else<br/> mkdir -p $bakpp/$ym<br/> tar_full<br/> fi<br/>&#125;<br/><br/>########### let's begin #############<br/># 先检查$bakpp是否存在，如果不存在先创建后备份<br/>if [ -d $bakpp ];then<br/> backup<br/>else<br/>mkdir -p $bakpp<br/>backup<br/>fi<br/>#advice you can create a file for put backup file, eg /usr/cctcc<br/>#crontab<br/>#mini hours day month week&nbsp;&nbsp;command<br/># */5 * * * * /home/mmroot/zbb/aaa.sh<br/># 0 1 */1 * * /home/mmroot/zbb/aaa.sh<br/># tar -ztf test.tar.gz 查看备份文件里面的文件<br/><br/> <br/><br/>有关crontab的用法请参阅：<br/><br/><a href="http://blog.sina.com.cn/s/blog_4ac65f6f0100d4ay.html" target="_blank">http://blog.sina.com.cn/s/blog_4ac65f6f0100d4ay.html</a><br/><br/><br/>遗留问题<br/>1，查看磁盘空间<br/>2，还原方法<br/>3，删除上个月的备份<br/>参考文档：<a href="http://www.php-oa.com/2007/12/26/tar-incremental.html" target="_blank">http://www.php-oa.com/2007/12/26/tar-incremental.html</a>
]]>
</description>
</item><item>
<link>https://iam.ittot.com/read.php/.htm#blogcomment</link>
<title><![CDATA[[评论] 用tar实现linux 文件增量备份]]></title> 
<author> &lt;user@domain.com&gt;</author>
<category><![CDATA[评论]]></category>
<pubDate>Thu, 01 Jan 1970 00:00:00 +0000</pubDate> 
<guid>https://iam.ittot.com/read.php/.htm#blogcomment</guid> 
<description>
<![CDATA[ 
	
]]>
</description>
</item>
</channel>
</rss>