rsync 本地备份 月 周 天 小时

本地同步备份

#!/bin/bash
#author kinggoo
# shell.sh [hourly|daily|weekly|month]
#inotify-slave的ip地址
backupdatapath="/data2/backupdata/"
dsrc="${backupdatapath}htdocs"
#本地监控的目录
src=/data1/htdocs/
#exclude-from
excludeFrom="/var/spool/cron/rsync.exclude"
#日志
log="${backupdatapath}/log/`date  +%Y%m`"
inotify_home=/usr/bin/
#inotify的安装目录

if [ ! -e "${inotify_home}/inotifywait" ] \
|| [ ! -e "/usr/bin/rsync" ];
then
echo "Check File and Folder"
exit 9
fi

if [ ! -d "${backupdatapath}/log/" ];
then
    mkdir "${backupdatapath}/log/"
fi

if [[ "0"$1 == "0" ]];then
    echo  "shell file.sh [hourly|daily|weekly|month]"
    exit 9
fi

case "${1}" in
"hourly")
        dsrc=${dsrc}.hourly
        echo "`date +%F\ %T` - rsync every 8 hours" >> $log
        ;;

"daily")
        dsrc=${dsrc}.daily
        echo "`date +%F\ %T` - rsync daily" >> $log
        ;;

"weekly")
        dsrc=${dsrc}.weekly
        echo "`date +%F\ %T` - rsync weekly" >> $log
        ;;

"month")
        dsrc=${dsrc}.month
        echo "`date +%F\ %T` - rsync month" >> $log
        ;;

"year")
        dsrc=${dsrc}.year
        echo "`date +%F\ %T` - rsync year" >> $log 
        ;; 
esac

if [ ! -d "$dsrc" ];
then
    echo "Backupdata folder not found."
    exit 9
fi

#  rsync -avzP --delete --timeout=100 --password-file=${rsync_passfile} $src $user@$host01::$dst >/dev/null 2>&1
cd $src && /usr/bin/rsync -aruztD -R --delete  --exclude-from=${excludeFrom}  --timeout=100 ./ $dsrc >/dev/null 2>&1
echo "rsync done `date +%F\ %T` ${1}" > ${dsrc}/sync.log
exit 0

crond计划

0 3,11,15 * * * /usr/bin/sh /var/spool/cron/inotify_backupdata.sh hourly
0 0 * * * /usr/bin/sh /var/spool/cron/inotify_backupdata.sh daily
58 3 * * fri /usr/bin/sh /var/spool/cron/inotify_backupdata.sh weekly
30 6 2 * * /usr/bin/sh /var/spool/cron/inotify_backupdata.sh month
10 1 2 1,7 * /usr/bin/sh /var/spool/cron/inotify_backupdata.sh year
- THE END -
版权声明:
转载原创文章请注明,文章出处://kinggoo.com
原文地址:https://kinggoo.com/rsync-inotify-backupdata.htm
发表评论?

0 条评论。

发表评论


此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据