企业中难免会有使用svn 的怎么给svn做好备份呢

下面是用两个脚本进行同步和监控

同步脚本:

#!/bin/bash
i=1
while true
do
if [ $(expr $i % 12) == 0 ];then i=1
mail -s "svn备份消息推送" lize@example.com </root/backsvn47.log
else
echo `date +"%F %T"` "IP开始异地备份目标公司192.168.30.197,服务所在地公司">/root/backsvn47.log
/usr/bin/rsync -avzu --progress --delete --password-file=/etc/rsync.passwd rsync@ipaddress::svnbakdir /hwdata/backsvn47/ >>/root/backsvn47.log
if [ $? -eq 0 ];then
echo `date +"%F %T"` "备份成功">>/root/backsvn47.log else
echo `date +"%F %T"` "备份失败">>/root/backsvn47.log
mail -s "svn备份消息推送" lize@example.com </root/backsvn47.log fi sleep 300
let i++ fi
done

  

监控小脚本

#!/bin/bash
times=$(ps -ef | grep /root/backsvn.sh |grep -v grep |wc -l)
if [ $times -eq 1 ];then
echo `date +"%F %T"` "正常"
else
echo `date +"%F %T"` $(ps -ef | grep /root/backsvn.sh |grep -v grep)>/root/svn_check_life.log echo `date +"%F %T"` "尝试启动同步脚本">>/root/svn_check_life.log
kill -9 $(ps -ef | grep /root/backsvn.sh |grep -v grep|awk '{print $2}')
sleep 1
/bin/bash /root/backsvn.sh
echo "尝试启动同步脚本"
if [ $? -eq 0 ];then
echo `date +"%F %T"` "脚本启动完毕" >>/root/svn_check_life.log
else
echo `date +"%F %T"` "脚本启动失败" >>/root/svn_check_life.log
mail -s "svn监控脚本消息推送" lize@example </root/svn_check_life.log
fi fi

*/10 * * * * /bin/bash /root/60backsvn.sh

十分钟监控一次如果脚本被关闭,重启如果重启失败,则发送邮件

  

最新文章

  1. Html 文档在线编辑器
  2. Web性能测试的简介
  3. plsql导入excel时报错:ORA-01036: 非法变量名/编号
  4. Error=Bias+Variance
  5. php的乱码问题
  6. grep 相关
  7. php生成随机密码(php自定义函数)转自先锋教程网
  8. bzoj2487: Super Poker II
  9. ffdshow 源代码分析1 : 整体结构
  10. C++编译指令#pragma pack的配对使用
  11. Oracle PL/SQL 非预定义异常、自定义异常处理、RAISE_APPLICATION_ERROR
  12. chrome扩展第三方浏览器下载安装
  13. 《JS正则表达式》
  14. DDD创始人Eric Vans:要实现DDD原始意图,必须CQRS+Event Sourcing架构
  15. 起床困难综合症[NOI2014]
  16. Linux实战教学笔记51:Zabbix监控平台3.2.4(三)生产环境案例
  17. radio日志sim卡信号状态分析
  18. MVC WebAPI框架里设置异常返回格式统一
  19. 面向对象select方法
  20. Java基础——Ajax(二)

热门文章

  1. event.target.dataset
  2. 【问题解决:启动卡死】Eclipse启动卡死的解决办法
  3. JS对象、数据类型区别、函数
  4. Linux——命令
  5. dropna(thresh=n) 的用法
  6. React项目中使用HighCharts
  7. vue 2.0 使用replace时要点击路由多次才能返回
  8. 无头浏览器phantomJS
  9. [Hibernate] hibernate.cfg.xml 配置文件的一些设置
  10. Android24以上拍照代码