公司内網的一些伺服器當機或者出問題時,網絡管理人員不能及時發現,利用sendmail+shell腳本可以及時告知網絡管理人員。
其中iplist.txt檔案為監控的伺服器ip位址清單。
1
2
3
4
<code>[root@mail sh]</code><code># cat iplist.txt</code>
<code>192.168.1.1</code>
<code>192.168.1.100</code>
<code>192.168.1.200</code>
檢視腳本:
5
6
7
8
9
10
11
12
13
<code>[root@mail sh]</code><code># cat check_ip_all.sh</code>
<code>#!/bin/bash</code>
<code>BASE=</code><code>/root/sh</code>
<code>for</code> <code>ip </code><code>in</code> <code>`</code><code>cat</code> <code>$BASE</code><code>/iplist</code><code>.txt`</code>
<code>do</code>
<code>ping</code> <code>$ip -c 2 > </code><code>/dev/null</code> <code>2>&1</code>
<code> </code><code>if</code> <code>[ ! $? -</code><code>eq</code> <code>0 ];</code><code>then</code>
<code> </code><code>echo</code> <code>"The company server $ip down,please solved the problem as soon as possible!"</code> <code>> </code><code>/root/sh/mail</code><code>.txt</code>
<code> </code><code>mail -s </code><code>"The server $ip is down now"</code> <code>[email protected] < </code><code>/root/sh/mail</code><code>.txt</code>
<code> </code><code>fi</code>
<code>done</code>
<code>#添加crontab,每2分鐘自動檢測</code>
<code>*</code><code>/5</code> <code>* * * * </code><code>/bin/bash</code> <code>/root/sh/check_ip_all</code><code>.sh > </code><code>/dev/null</code> <code>2>&1</code>
本文轉自 sfzhang 51CTO部落格,原文連結:http://blog.51cto.com/sfzhang88/857716,如需轉載請自行聯系原作者