QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 867|回复: 3

如何用SHELL诊断网络中哪台服务器。。。。。。。。。。

[复制链接]
发表于 2005-6-8 13:03:22 | 显示全部楼层 |阅读模式
如果网络中有很多linux服务器,怎样写shell来诊断哪一台死机了?及时提醒。
发表于 2005-6-8 14:27:19 | 显示全部楼层
man nmap
回复

使用道具 举报

发表于 2005-6-8 19:24:40 | 显示全部楼层
死机 与没有开机 不好区别吧
回复

使用道具 举报

发表于 2005-6-8 22:30:39 | 显示全部楼层
一个粗糙的 PING 监视脚本,供参考:
[code:1]##!/bin/bash

# 监视目标
TARGET="192.168.1.1"

# PING 间隔
PAUSE=1

MISSED=0

while true; do
        if ! ping -c 1 -w 1 $TARGET > /dev/null; then
                ((MISSED++))
        else
                if [ $MISSED -gt 2 ]; then
                        #提醒服务器恢复
                        echo `date +%F\ %T`  $TARGET resumed.
                fi
                MISSED=0
        fi

        if [ $MISSED -eq 2 ]; then
                #提醒服务器在1秒钟内没有回应
                echo `date +%F\ %T`  $TARGET HAS NO RESPONSE!
        fi

        sleep $PAUSE

        if [ $MISSED -gt 253 ]; then
                MISSED=5
        fi
done
[/code:1]

实际上,PING是非常不可靠的。

判断服务器是否死机(应该说停止响应),应该是去监视具体的服务端口,看能否返回一个预设的完整结果。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-10-3 05:30 , Processed in 0.045095 second(s), 15 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表