栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

Linux使用shell脚本监控rsync文件传输的完整性

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Linux使用shell脚本监控rsync文件传输的完整性

  Linux系统在使用rsync传输大文件的时候,由于本人不在身边,无法保证文件是否完整传输,这时可以编写一个shell脚本来监控rsync是否传输完数据,以确保文件传输到一半时中断却不知道。

  今天有台服务器a要把网站程序全部传输到另外一台服务器b上去,但离下班时间就只有1个小时了,为了准时下班,简单写了个shell脚本来监控是否有传输完。

  系统:centos 5.x

  需要的软件:rsync

  脚本内容:

  #!/bin/bash

  file=`du -sm /var/www/vhosts/|awk ‘{print $1}’`

  ps=`ps -C rsync --no-header|wc -l`

  if [ “$file” = “11517” ];then

  echo “files downloaded!”

  else

  if [ “$ps” = “1” ];then

  kill -9 $(ps aux | grep rsync |grep -v grep| awk ‘{print $2}’)

  sleep 1

  nohup sh /root/rsync.sh &

  else

  echo “rsync is running.。。”

  fi

  fi

  脚本的大概思路就是查看文件夹的大小是否有跟服务器a的大小一样,如果不一样就检查rsync的进程是否有在运行,如果没有运行就kill掉,然后重新执行rsync的下载脚本。

  ps:当然这个脚本有点简陋,没有去检测进程状态,如果出现僵尸进程的话,是没有办法处理的。

  上面就是Linux使用shell脚本监控rsync文件传输的完整性,如果检测到未传完可继续上传。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/588831.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号