终于用PYTHON作了一个实用于工作的脚本啦----通过邮件定时发送服务器空闲空间

简介:

呵呵,GOOGLE上东拼西凑的东东。找了十来个综合,裁剪成一个。

没有风格,不正规,无注释,只是简单可以运行。PYTHON2.4以上通上。

代码:

复制代码
 1 #!/usr/bin/env python
 2 # -*- encoding: utf-8 -*-
 3 
 4 import os, socket, statvfs
 5 from time import localtime, strftime
 6 from smtplib import SMTP
 7 
 8 smtp = SMTP()
 9 #smtp.set_debuglevel(debuglevel)
10 smtp.connect('1.2.3.4', 25)
11 smtp.login('user', 'pass')
12 
13 from_addr = "alert<alert@freedisk.com>"
14 to_addr = ["ag@163.com","ae@163.com","af@163.com"]
15 
16 # Limit in MiB
17 LIMIT=200000;
18 
19 #Define current Time as Fri, 04 Mar 2011 08:47:10
20 TIME = strftime("%d %b %Y", localtime())
21 
22 MONITOR = os.statvfs("/")
23 SPACE_LEFT=(MONITOR.f_bavail * MONITOR.f_frsize) / 1048576
24 SPACE_TOTAL = (MONITOR.f_blocks * MONITOR.f_frsize) / 1048576
25 
26 if (SPACE_LEFT < LIMIT):
27     STATUS = "Free Disk Space is ALERT!!!ALERT!!!ALERT!!! "
28         SPACE_LEFT=SPACE_LEFT / 1024 #GiB
29         print ( TIME+"\n"+STATUS+"\n"+str(SPACE_LEFT)+" GB left on disk\n"+"Alert Space is:"+str((LIMIT/1024))+"GB")
30         subj = "ALERT!!!ALERT!!!ALERT!!!["+str(SPACE_LEFT)+" GB left]Free disk space on www.163.com "+TIME
31         message_text = TIME+"\n"+STATUS+"\n"+str(SPACE_LEFT)+" GB left on disk\n"+"Alert Space is:"+str((LIMIT/1024))+"GB"
32         msg = "From: %s\nTo: %s\nSubject: %s\nDate: %s\n\n%s" % ( from_addr, to_addr, subj, TIME, message_text )
33         smtp.sendmail(from_addr, to_addr, msg)
34     smtp.sendmail(from_addr, to_addr, msg) 
35     smtp.sendmail(from_addr, to_addr, msg)  
36         smtp.quit()
37         print ('Done')
38 
39 elif (SPACE_LEFT > LIMIT):
40         STATUS = "Free Disk Space is OK on "
41            SPACE_LEFT=SPACE_LEFT / 1024 #GiB
42     SPACE_TOTAL=SPACE_TOTAL / 1024 #GB
43         print ( TIME+"\n"+STATUS+"\n"+str(SPACE_LEFT)+" GB left on disk("+str(SPACE_TOTAL)+"GB)\n"+"Alert Space is:"+str((LIMIT/1024))+"GB")
44     subj = "["+str(SPACE_LEFT)+" GB left]Free disk space on www.163.com "+TIME
45         message_text = TIME+"\n"+STATUS+"\n"+"Total space is :"+str(SPACE_TOTAL)+"GB\n"+str(SPACE_LEFT)+" GB left on disk\n"+"Alert Space is:"+str((LIMIT/1024))+"GB"
46         msg = "From: %s\nTo: %s\nSubject: %s\nDate: %s\n\n%s" % ( from_addr, to_addr, subj, TIME, message_text )
47         smtp.sendmail(from_addr, to_addr, msg)
48         smtp.quit()
49         print ('Done!')
50         
51 else:
52         print ("""
53 A serius problem detected with the script.
54 Please check what mount points you monitor and check that they're in the MON_ARRAY aswell.
55 """ )
复制代码

然后,将其放入/etc/spool/cron/相关用户文件里。

0 1 * * *       python /root/diskspace/freedisk.py

测试截图:

目录
相关文章
|
7月前
|
数据采集 运维 监控
跨厂区设备的协同同步,星旗科技 PTP 服务器能否打破空间壁垒?
星旗科技推出全国产化 PCIe 网络时间同步板卡,采用紫光同创 PG2L100H 平台,支持 PTP 协议与多种时钟源输入,精度优于 50ns,适配金融交易、工业控制等高精度场景,具备高兼容性、易维护性与灵活配置能力,助力关键系统实现精准时间协同。
|
7月前
|
JSON 算法 API
深度分析小红书城API接口,用Python脚本实现
小红书作为以UGC内容为核心的生活方式平台,其非官方API主要通过移动端抓包解析获得,涵盖内容推荐、搜索、笔记详情、用户信息和互动操作等功能。本文分析了其接口体系、认证机制及请求规范,并提供基于Python的调用框架,涉及签名生成、登录态管理与数据解析。需注意非官方接口存在稳定性与合规风险,使用时应遵守平台协议及法律法规。
|
7月前
|
JSON API 数据安全/隐私保护
【干货满满】分享微店API接口到手价,用python脚本实现
微店作为知名社交电商平台,其开放平台提供商品查询、订单管理等API接口。本文介绍如何通过微店API获取商品到手价(含优惠、券等),涵盖认证机制、Python实现及关键说明。
|
7月前
|
JSON API 数据安全/隐私保护
【干货满满】分享淘宝API接口到手价,用python脚本实现
淘宝开放平台通过API可获取商品到手价,结合商品详情与联盟接口实现优惠计算。需使用AppKey、AppSecret及会话密钥认证,调用taobao.tbk.item.info.get接口获取最终价格。代码示例展示签名生成与数据解析流程。
|
7月前
|
JSON API 数据安全/隐私保护
深度分析苏宁API接口,用Python脚本实现
苏宁易购开放平台提供覆盖商品、订单、库存、门店等零售全链路的API服务,采用RESTful架构与“AppKey+AppSecret+签名”认证机制,支持线上线下一体化业务处理。本文详解其API特性、认证流程及Python调用实现。
|
7月前
|
自然语言处理 安全 API
深度分析洋码头API接口,用Python脚本实现
洋码头是国内知名跨境电商平台,专注于海外商品直购。本文基于其API的通用设计逻辑,深入解析了认证机制、签名规则及核心接口功能,并提供了Python调用示例,适用于商品与订单管理场景。
|
7月前
|
JSON API 数据格式
深度分析易贝API接口,用Python脚本实现
本文深度解析了eBay开放平台的RESTful API接口体系,涵盖其核心功能、OAuth 2.0认证机制、请求规范及限流策略,并基于Python构建了完整的API调用框架。内容包括商品与订单管理接口的实现逻辑、认证流程、错误处理机制及实战调用示例,适用于跨境电商系统开发与多平台集成。
|
7月前
|
JSON 监控 BI
深度分析亚马逊API接口,用Python脚本实现
本内容深度解析亚马逊SP-API接口体系,涵盖商品、订单、库存等核心功能域,详解LWA认证、AWS签名及Python调用实现,适用于跨境电商系统开发与集成。
|
7月前
|
JSON API 数据格式
深度分析大麦网API接口,用Python脚本实现
大麦网为国内领先演出票务平台,提供演唱会、话剧、体育赛事等票务服务。本文基于抓包分析其非官方接口,并提供Python调用方案,涵盖演出列表查询、详情获取及城市列表获取。需注意非官方接口存在稳定性风险,使用时应遵守平台规则,控制请求频率,防范封禁与法律风险。适用于个人学习、演出信息监控等场景。
|
7月前
|
人工智能 自然语言处理 安全
Python构建MCP服务器:从工具封装到AI集成的全流程实践
MCP协议为AI提供标准化工具调用接口,助力模型高效操作现实世界。
1285 1

推荐镜像

更多