我由于工作环境的需要,必须对下载的资源源源不断的下载到后端的磁盘阵列中,所以要时时监测我的rsync进程的服务状态,以保证传输的不中断,因此我想到了用脚本来完成以上工作,好了,不说了,看我的脚本。

#!/bin/bash
# this is a sync.sh
# time 2009-04-21

cd /root/download/

#把一般输出与错误输出重定向到相应的日志文件
exec >>/root/hamobdownload/rsync.log 2>&1

#判断'rsync'进程是否存活
if ps aux | grep sync.sh | grep -v $$ | grep -v grep; then
        exit
fi

#对相应文件进行传输
for i in `ls | grep as*.log`; do
                if  [ -f $i ]; then
                        rsync -avz --delete  $i 10.10.99.19::statlog
                        rm -rf $i
                fi                                     
done



然后将该脚本防盗cron服务中,根据文件的平均传输时间我定义是每隔2分钟运行一次该脚本。