Linux/Unix shell 脚本监控磁盘可用空间
Linux下监控磁盘的空闲空间的shell脚本,对于系统管理员或DBA来说,必不可少。下面是给出的一个监控磁盘空间空间shell脚本的样本,供大家参考。
1、监控磁盘的空闲空间shell脚本
- robin@SZDB:~/dba_scripts/custom/bin> more ck_fs_space.sh
- #!/bin/bash
- # ------------------------------------------------------------------------------+
- # CHECK FILE SYSYTEM SPACE BY THRESHOLD |
- # Filename: ck_fs_space.sh |
- # Desc: |
- # The script use to check file system space by threshold |
- # Once usage of the disk beyond the threshold, a mail alert will be sent. |
- # Deploy it by crontab. e.g. per 15 min |
- # Usage: |
- # ./ck_fs_space.sh <percent> </filesystem [/filesystem2]> |
- # |
- # Author : Robinson |
- # Blog : http://blog.csdn.net/robinson_0612 |
- # ------------------------------------------------------------------------------+
- #
- # -------------------------------
- # Set environment here
- # ------------------------------
- if [ -f ~/.bash_profile ]; then
- . ~/.bash_profile
- fi
- export host=`hostname`
- export mail_dir=/users/robin/dba_scripts/sendEmail-v1.56
- export mail_list='Robinson.cheng@12306.com'
- export mail_fm='oracle@szdb.com'
- tmpfile=/tmp/ck_fs_space.txt
- alert=n
- # --------------------------------
- # Check the parameter
- # --------------------------------
- max=$1
- if [ ! ${2} ]; then
- echo "No filesystems specified."
- echo "Usage: ck_fs_space.sh 90 / /u01"
- exit 1
- fi
- # --------------------------------
- # Start to check the disk space
- # --------------------------------
- while [ "${2}" ]
- do
- percent=`df -P ${2} | tail -1 | awk '{print $5 }' | cut -d'%' -f1`
- if [ "${percent}" -ge "${max}" ]; then
- alert=y
- break
- fi;
- shift
- done;
- # ------------------------------------------------------------------------
- # When a partition was above the threshold then send mail with df output
- # ------------------------------------------------------------------------
- if [ ! "${alert}" = 'n' ];then
- df -h >$tmpfile
- mail_sub="Disk usage beyond the threshold ${max} on ${host}."
- $mail_dir/sendEmail -u ${mail_sub} -f $mail_fm -t $mail_list -o message-file=${tmpfile}
- fi;
- exit;
2、脚本说明
a、该脚本使用了 sendEmail 工具来发送邮件。
b、使用方式为"Usage: ck_fs_space.sh 90 / /u01" 。
c、脚本中使用了一个while循环来逐个判断所有的指定分区的空闲空间是否超出阙值。
d、对于超出阙值的情形发送邮件并且附上当前服务器上磁盘空间的使用情况。
转:http://blog.csdn.net/leshami/article/details/8893943
Linux/Unix shell 脚本监控磁盘可用空间的更多相关文章
- linux实现shell脚本监控磁盘内存达到阈值时清理catalina.out日志
想在服务器上写一个shell脚本,在磁盘使用率达到80%时,自动清理掉一些没有用的日志文件,根据这个想法,在生产环境上写了一个以下脚本,按照该流程,可实现在linux环境做一个定时任务来执行shell ...
- Linux简单Shell脚本监控MySQL、Apache Web和磁盘空间
Linux简单Shell脚本监控MySQL.Apache Web和磁盘空间 1. 目的或任务 当MySQL数据库.Apache Web服务器停止运行时,重新启动运行,并发送邮件通知: 当服务器磁盘的空 ...
- Linux/Unix shell 脚本中调用SQL,RMAN脚本
Linux/Unix shell脚本中调用或执行SQL,RMAN 等为自动化作业以及多次反复执行提供了极大的便利,因此通过Linux/Unix shell来完成Oracle的相关工作,也是DBA必不可 ...
- Linux使用shell脚本监控
(1)性能监控脚本 performance.sh #!/bin/bash #-------------------------------------------------------------- ...
- zabbix 调用python脚本监控 磁盘剩余空间(创建模版,创建监控项,创建触发器)
主要 记录一下 使用zabbix 自己创建模版.监控项.触发器,并调用python脚本. 需求: 监控备份机磁盘剩余空间(windows系统) 一.安装zabbix_agent 比较简单 修改配置文 ...
- Linux/Unix shell 监控Oracle监听器(monitor listener)
使用shell脚本实现对Oracle数据库的监控与管理将大大简化DBA的工作负担,如常见的对实例的监控,监听的监控,告警日志的监控,以及数据库的备份,AWR report的自动邮件等.本文给出Linu ...
- Linux/Unix shell 监控Oracle告警日志(monitor alter log file)
使用shell脚本实现对Oracle数据库的监控与管理将大大简化DBA的工作负担,如常见的对实例的监控,监听的监控,告警日志的监控,以及数据库的备份,AWR report的自动邮件等.本文给出Linu ...
- Linux/Unix shell 监控Oracle实例(monitor instance)
使用shell脚本实现对Oracle数据库的监控与管理将大大简化DBA的工作负担,如常见的对实例的监控,监听的监控,告警日志的监控,以及数据库的备份,AWR report的自动邮件等.本文给出Linu ...
- Linux/Unix shell sql 之间传递变量
灵活结合Linux/Unix Shell 与SQL 之间的变量传输,极大程度的提高了DBA的工作效率,本文针对Linux/Unix shell sql 之间传递变量给出几个简单的示例以供参考. Lin ...
随机推荐
- 传说中的WCF(3):多个协定
我们知道,WCF服务端是先定义服务协定,其实就是一个接口,然后通过实现接口来定义服务类.那么,有一个问题,如果一个服务类同时实现N个接口(也就是有N个协定)呢?结果会如何? 不必猜,我们还是通过实验来 ...
- dom对象详解--document对象(三)
form对象 form对象代表一个HTML表单,在HTML文档中<form>每出现一次,form对象就会被创建.从dom对象层次图看,document.forms对象是当前文档所有for ...
- Java IO(四)
对象序列化 对象序列化又叫对象的持久化,对象的串行化(或反串行化) 当使用Serializable接口实现序列化操作时,如果一个对象中的某个属性不希望被序列化,则可以使用transient关键字进行声 ...
- 关于vmware下复制linux系统虚拟机后eth0变成eth1问题解决
在vmware虚拟机中,当我们克隆或者复制linux系统虚拟机后,再启动系统时会发现系统下不再有eth0,而变成了eth1 当我们使用/etc/init.d/network restart重启网络时, ...
- Linux 删除文件夹和文件的命令
linux删除目录很简单,很多人还是习惯用rmdir,不过一旦目录非空,就陷入深深的苦恼之中,现在使用rm -rf命令即可.直接rm就可以了,不过要加两个参数-rf 即:rm -rf 目录名字-r 就 ...
- iOS Core Telephony Framework
Core Telephony Framework(核心通讯框架) 概述: 这个库的前缀为CT(Core Telephony),主要用来获得用户通讯相关信息,我们可以使用这些信息来定义外部接口以便自己使 ...
- AngularJs-ui modal 传参数
最近开始学习 AnjularJs: 看了两天项目的代码开始动手完成项目中的功能,碰到些问题记录下备忘:方便以后再碰到这样疑惑的coder. 参见 Angular-ui modal 传递 header ...
- 矩形嵌套 南阳理工ACM
描述 有n个矩形,每个矩形可以用a,b来描述,表示长和宽.矩形X(a,b)可以嵌套在矩形Y(c,d)中当且仅当a<c,b<d或者b<c,a<d(相当于旋转X90度).例如(1, ...
- 实际利率 > 名义利率
名义利率与实际利率的关系为:实际利率=(1+名义利率/计息周期)计息周期-1. 如计息周期数=1时,两者相等.如计息周期数大于1时,实际利率大于名义利率,当计息周期数小于1时,实际利率小于名义利率. ...
- 初识EasyUI
1.下载Jquery_EasyUI文档,将里面的spket-1.6.18.jar复制放到适合的位置(随意,不要有中文路径).使用命令行将其安装: 进入到文件目录下: 弹出安装界面选择下一步: 选 ...