expect与rsync 异步并行备份数据脚本

expect与rsync 异步并行备份数据脚本,第1张

expect与rsync异步并行备份数据脚本 expect与rsync 多线程并行备份数据脚本 #!/bin/bash #author:qunying.liu #2014.08.02 #脚本主要用途:根据rsync从远程控制机器备份数据到该设备机器相匹配目录 #脚本目录:/usr/local/scripts/,expect脚本目录:/usr/local/scripts/dsfilersync, #备注名称:一个机器相匹配一个exp脚本,该脚本中包括该机器全部rsync同歩目录。 #复位目录 cd   /usr/local/scripts/ grep "rsync -avz" ./dsfilersync/*.exp|awk '{print $NF}' >backupdir.info for DIR in `cat   ./backupdir.info`; do [ ! -d $DIR ] && mkdir -p $DIR && echo "Create Dir $DIR done !" ls -ld $DIR done  #统计分析必须备份的机器IP到dataserver.ip文件中  grep "rsync -avz" ./dsfilersync/*.exp|awk -F@ '{print $2}'|awk -F: '{print $1}'|sort |uniq >./dsfilersync/dataserver.ip tmp_fifofile="/tmp/fifo.$$"  ;mkfifo "$tmp_fifofile" ;exec 6<>"$tmp_fifofile"  ;rm $tmp_fifofile    #根据管路文档,让expect脚本多线程实行。 for ip in `cat ./dsfilersync/dataserver.ip`;do { echo "$ip,Begin at `date %Y-%m-%d-%H-%M-%S`...." #每日下午12点清除日志 if [ 12 -eq  $(date %H) ];then echo "">/data/scripts/logs/time$ip.log echo "">/data/scripts/logs/datarsync$ip.log fi flag="`/bin/ps -ef|grep $ip.exp|grep -v grep`" if [ -z "$flag" ];then    echo "$ip:Begin at `date %Y-%m-%d-%H-%M-%S`" >> ./logs/time$ip.log cd   /usr/local/scripts/   ( ./dsfilersync/$ip.exp 1> ./logs/datarsync$ip.log   2>&1 && echo "$ip:Finsh at `date %Y-%m-%d-%H-%M-%S`" >> /data/applogs/time$ip.log ) || /usr/local/scripts/MonitorAgent -f monitor -t "data rsync file from $ip failed  "  -i " rsync file failed from $ip , please check /data/applogs/datarsync$ip.log " else   echo "$ip: Already running...." fi } & done  wait exec 6>&- echo "Finsh at `date %Y-%m-%d-%H-%M`" $ip.exp: #!/usr/bin/expect -f # expect "#" set NDATE [exec date %Y-%m-%d] set TDATE [exec date -d tomorrow %Y-%m-%d] #set NDATE [exec date -d yesterday %Y-%m-%d] #set TDATE [exec date   %Y-%m-%d] set timeout 12000; spawn  /usr/bin/rsync -avz --include "*.tar.gz"  --exclude "*.*"     -e  "/usr/local/bin/ssh -lqunying -p12345 -q" [email protected]:/data/test/welike/tmps/$TDATE /data/test/10.1.2.1/webs/tmp/ expect "password:" { send "hehe\n" ; exp_continue }


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zz/784401.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-04
下一篇 2022-05-04

发表评论

登录后才能评论

评论列表(0条)

保存