linux监听远程ip,设计一个脚本,监控远程的一台机器(假设ip为123.23.11.21)的存活状态,当发现宕机时发一封...
提示:
1. 你可以使用ping命令? ?ping -c10 123.23.11.21
2. 發郵件腳本可以參考#!/usr/bin/env?python
#-*-?coding:?UTF-8?-*-
import?os,sys
reload(sys)
sys.setdefaultencoding('utf8')
import?getopt
import?smtplib
from?email.MIMEText?import?MIMEText
from?email.MIMEMultipart?import?MIMEMultipart
from??subprocess?import?*
def?sendqqmail(username,password,mailfrom,mailto,subject,content):
#郵箱的smtp填寫在這里
gserver?=?'smtp.qq.com'
#qq郵箱的端口號為465
gport?=?25
try:
msg?=?MIMEText(unicode(content).encode('utf-8'))
msg['from']?=?mailfrom
msg['to']?=?mailto
msg['Reply-To']?=?mailfrom
msg['Subject']?=?subject
#ssl連接,把下面改為smtp?=?smtplib.SMTP_SSL(gserver,?gport)
smtp?=?smtplib.SMTP(gserver,?gport)
smtp.set_debuglevel(0)
smtp.ehlo()
smtp.login(username,password)
smtp.sendmail(mailfrom,?mailto,?msg.as_string())
smtp.close()
except?Exception,err:
print?"Send?mail?failed.?Error:?%s"?%?err
def?main():
to=sys.argv[1]
subject=sys.argv[2]
content=sys.argv[3]
##定義郵箱的賬號和密碼,你需要修改成你自己的賬號和密碼(請不要把真實的用戶名和密碼放到網上公開,否則你會死的很慘)
sendqqmail('1234567@qq.com','aaaaaaaaaa','1234567@qq.com',to,subject,content)
if?__name__?==?"__main__":
main()
#####腳本使用說明######
#1.?首先定義好腳本中的郵箱賬號和密碼
#2.?腳本執行命令為:python?mail.py?目標郵箱?"郵件主題"?"郵件內容"
#3.?更改其他郵箱后綴,只需要更改gserver?=?'smtp.139.com',把郵箱的smtp開啟就可以了
#4.??gport?=?25?為端口,qq郵箱的端口為465
#5.??如有ssl連接,代碼部分為smtp?=?smtplib.SMTP_SSL(gserver,?gport),在原基礎加_SSL
3. 腳本可以搞成死循環,每隔30s檢測一次
答案:#!/bin/bash
ip=123.23.11.21
mail=3600000@qq.com
while??:
do
ping?-c?10?123.23.11.21?&>?/tmp/mail.log
if?[?$??-ne?0?]
then
##郵件腳本是mail.py
python?/tmp/mail.py??$mail???"$ip?is?down"??"?$ip?is?down"
fi
sleep?30
done
總結
以上是生活随笔為你收集整理的linux监听远程ip,设计一个脚本,监控远程的一台机器(假设ip为123.23.11.21)的存活状态,当发现宕机时发一封...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: ab压力测试工具linux,【Linux
- 下一篇: 低配置系统安装 linux,Linux系