rsync를 구동하고 rsync가 끝난 후 timestamp를 찍도록 하기 위한 스크립트 적용에 대한 내용이다.

 

## 스크립트 내용 ##

[root@mapoo ~]# cat /root/timecheck.sh
#!/bin/bash

CurrTime=`date +%Y-%m-%d_%T`

/bin/ps aux | grep 'rsync' | egrep -v 'grep rsync'

if [ $? == "0" ]; then
    exit 0
elif [ $? == "1" ]; then
    ls /tmp/rsyncfinish.time_* >& /dev/null
    if [ $? == "0" ]; then
        exit 0
    else
        touch /tmp/rsyncfinish.time_$CurrTime
    fi
fi

## crontab에 스크립트를 1분 주기로 실행하도록 적용 ##

[root@mapoo ~]# crontab -l
*/1 * * * * /root/timecheck.sh

 

## rsync가 끝나서 rsync 프로세스가 없으면 아래와 같이 파일이 생성됨 ##
[root@mapoo ~]# ls -la /tmp/rsyncfinish.time*
-rw-r--r-- 1 root root 0 Mar 4 02:35 rsyncfinish.time_2015-03-04_02:35:01

 

## crontab 에서 제거

rsync 가 끝나서 기록할 필요가 없으면 crontab 에서 스케쥴을 뺀다.

다시 돌리려면 mv /tmp/rsyncfinish.time_2015-03-04_02:35:01 /tmp/old-rsyncfinish.time_2015-03-04_02:35:01

후 다시 rsync를 돌리고 cron 스케쥴링.

rsync process - end timestamp

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다