检测不同服务器上代码差别的shell的脚本

简介: 检测不同服务器上代码差别

本脚本来自有学习阿铭的博文学习:
在生产中,为了防止高并发,单点,灾变,和负载均衡等一些突发情况,会将多台服务器用来跑用一代码。但是如果上线的代码出现了问题,将导致代码不一样的情况。

#!/bin/bash
#用途:检测不同服务器上代码差别的shell的脚本。
#作者:Caron maktini
#日期:2018年10月18日
#版本:v0.1

#假设B机器IP地址为192.168.0.1

B_ip=192.168.0.1 
dir=/data/wwwroot/www.abd.com
#首先检查/tmp/md5.list文件是否存在,存在的话就删除掉,避免影响后续操作
[ -f /tmp/md5.list ] && rm -f /tmp/md5.list

#把除了uploads以及tmp目录外其他目录下的全部文件列出来 
  cd $ dir 
    find . \( -path "/uploads*" -o  -path  "./tmp*" \) 

#用while循环,求出所有文件的md5值,并写入一个文件里 
  cat  /tmp/file.Iist l while read line 
  do 
      md5sum  $line 
  done  >>  /tmp/md5.Iist 

#将md5.list拷贝到B机器 
scp  /tmp/md5.Iist  $B_ip:/tmp/ 

#判断/tmp/check_md5.sh文件是否存在 
[ -f  /tmp/check_md5.sh &&  rm -f  /tmp/check_md5.sh ]

#用Here Document编写check_md5.sh脚本内容 
cat > /tmp/check_md5. sh << EOF 

#!/bin/bash 
dir=/data/wwwroot/www.abd.com 
##注意,这里涉及到的特殊符号都需要脱义,比如反引号和$ 

n=\`wc -l /tmp/md5.list | awk '{print \ $1}'`\ 
for i in \`sep 1 \$n\`\
do 
    file_name=\` sed -n "\$i"p  /tmp/md5.list I awk '{print \$1}'\` 
    md5=\`sed -n  "\$i" p  /tmp/md5.Iist  l awk '{print \$2 }'\`
    if  [ -f  \$file_name ] 
    then 
      md5_b= \`md5sum  \$file_name\` 
    if  [  \$md5_b  != \$md5  ]
    then 
        echo  " \$file_name changed" 
    fi 
    else 
        echo  " \$file_name lose " 
    fi 
done  >   /data/change. Iog 
EOF 
scp  /tmp/check_md5.sh  $B_ip:/tmp/ 
ssh $B_ip  "/bin/bash  /tmp/check_md5.sh" 
相关文章
|
3月前
|
JSON 监控 API
在线网络PING接口检测服务器连通状态免费API教程
接口盒子提供免费PING检测API,可测试域名或IP的连通性与响应速度,支持指定地域节点,适用于服务器运维和网络监控。
|
6月前
|
安全 Linux
阿里云linux服务器使用脚本通过安全组屏蔽异常海外访问ip
公网网站可能会遭受黑客攻击导致访问异常,使用此脚本可以屏蔽掉异常IP 恢复访问。也可自行设置定时任务定期检测屏蔽。
445 28
|
6月前
|
SQL 数据采集 人工智能
“服务器老被黑?那是你没上AI哨兵!”——聊聊基于AI的网络攻击检测那些事儿
“服务器老被黑?那是你没上AI哨兵!”——聊聊基于AI的网络攻击检测那些事儿
236 12
|
12月前
|
运维 Java Linux
【运维基础知识】Linux服务器下手写启停Java程序脚本start.sh stop.sh及详细说明
### 启动Java程序脚本 `start.sh` 此脚本用于启动一个Java程序,设置JVM字符集为GBK,最大堆内存为3000M,并将程序的日志输出到`output.log`文件中,同时在后台运行。 ### 停止Java程序脚本 `stop.sh` 此脚本用于停止指定名称的服务(如`QuoteServer`),通过查找并终止该服务的Java进程,输出操作结果以确认是否成功。
642 1
|
12月前
|
分布式计算 Hadoop Shell
Hadoop-35 HBase 集群配置和启动 3节点云服务器 集群效果测试 Shell测试
Hadoop-35 HBase 集群配置和启动 3节点云服务器 集群效果测试 Shell测试
243 4
|
12月前
|
分布式计算 Hadoop Shell
Hadoop-36 HBase 3节点云服务器集群 HBase Shell 增删改查 全程多图详细 列族 row key value filter
Hadoop-36 HBase 3节点云服务器集群 HBase Shell 增删改查 全程多图详细 列族 row key value filter
150 3
|
运维 监控 数据库
自动化运维:使用Python脚本实现服务器监控
【8月更文挑战第31天】在这篇文章中,我们将探索如何利用Python编写简单的脚本来实现对服务器的基本监控。通过学习和应用这些技术,你可以快速检测服务器的状态,包括CPU使用率、内存占用和磁盘空间等关键指标。这不仅有助于及时发现问题,还能提升运维效率。文章将逐步引导你理解监控的重要性,并展示如何从零开始构建自己的监控工具。
|
监控 数据挖掘 Linux
Linux服务器PBS任务队列作业提交脚本的使用方法
【8月更文挑战第21天】在Linux服务器环境中,PBS任务队列能高效管理及调度计算任务。首先需理解基本概念:作业是在服务器上执行的任务;队列则是等待执行任务的列表,具有不同的资源限制与优先级;节点指分配给作业的计算资源。
1887 4
|
存储 运维 监控
自动化运维:使用Python脚本进行服务器监控
【8月更文挑战第31天】在数字化时代,服务器的稳定运行对于企业至关重要。本文将介绍如何使用Python编写一个简单的服务器监控脚本,帮助运维人员及时发现并解决潜在问题。我们将从基础的服务器资源监控开始,逐步深入到日志分析与报警机制的实现。通过实际代码示例和操作步骤,使读者能够快速掌握自动化监控的技能,提升工作效率。
|
监控 Shell Linux
在Linux中,如何使用shell脚本检测磁盘使用率?
在Linux中,如何使用shell脚本检测磁盘使用率?

热门文章

最新文章