Linux 定期自动备份脚本

我们在网维工作中,常常要备份一些资料,虽然事情不复杂,但是很费时间的,我在这里分享一个 Linux 备份脚本,轻松自如的实现自动备份,并且可以保留N天备份的档案。这个脚本分为两个文件,一个是执行文件backup.sh,另一个是备份项目文件project.lst。

#backup.sh
-- 重要变量名  作用
LogFile	日志文件
SourceDir	需要备份的目录
BakDir	备份至此目录
RetainDay	备份档案文件保留天数
ProjectLst	备份项目文件配置文件

代码:

    #!/bin/bash
    #author:        InBi
    #date:          2011-07-28
    #role:          backup files periodically.
    #website:       http://www.itwhy.org/2011/07-28/707.html
    ##################################################
    LogFile=/backup/log/`date +"%Y-%m"`.log
    DATE=`date +"%Y-%m-%d"`
    SourceDir=/var/RDfile
    BakDir=/backup
    RetainDay=20
    ProjectLst=/backup/project.lst
    ##################################################
    echo "backup start at $(date +"%Y-%m-%d %H:%M:%S")" > $LogFile
    echo "--------------------------------------------------" >> $LogFile
    cd $BakDir
    PROJECTLIST=`cat $ProjectLst`
    for Project in $PROJECTLIST
    do
    	ProjectData=$SourceDir/$Project
    	DestDir=$BakDir/$Project
    	PackFile=$DATE.$Project.tgz
    	if [ -f $BakDir/$PackFile ]
    	then
    		echo "backup file have exist !" >>$LogFile
    	else
    		cp -RHpf $ProjectData $DestDir > /dev/null
    		tar -zcvf $PackFile $Project > /dev/null
    		echo "backup $Project done into $PackFile ">>$LogFile
    		rm -rf $Project
    	fi
    	OldFile="$BakDir/"$(date --date="$RetainDay days ago" +"%Y-%m-%d").$Project.tgz
    	if [ -f $OldFile ]
    	then
    		rm -f $OldFile > /dev/null
    		echo "[$OldFile],Delete Old File Success!" >> $LogFile
    	fi
    	echo " " >> $LogFile
    done
    echo "--------------------------------------------------" >> $LogFile
    echo "backup end at $(date +"%Y-%m-%d %H:%M:%S")" >> $LogFile
    echo " " >> $LogFile
    exit 0


# project.lst :  这个文件比较好理解,就是一个text文件,它的每一行表示一个项目,也就是你需要备份的目录下面的文件或目录。

    onu_arm
    onu_voip
    onu_wifi
    5xxx
    7xxx
    8xxx
    nms



转自:http://wowubuntu.com/backup-script.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值