Linux/Unix shell 脚本监控磁盘可用空间

Linux下监控磁盘的空闲空间的shell脚本,对于系统管理员或DBA来说,必不可少。下面是给出的一个监控磁盘空间空间shell脚本的样本,供大家参考。

1、监控磁盘的空闲空间shell脚本

[python] view plain copy

print?

  1. [email protected]:~/dba_scripts/custom/bin> more ck_fs_space.sh
  2. #!/bin/bash
  3. # ------------------------------------------------------------------------------+
  4. #                  CHECK FILE SYSYTEM SPACE BY THRESHOLD                        |
  5. #   Filename: ck_fs_space.sh                                                    |
  6. #   Desc:                                                                       |
  7. #       The script use to check file system space by threshold                  |
  8. #       Once usage of the disk beyond the threshold, a mail alert will be sent. |
  9. #       Deploy it by crontab. e.g. per 15 min                                   |
  10. #   Usage:                                                                      |
  11. #       ./ck_fs_space.sh <percent> </filesystem [/filesystem2]>                 |
  12. #                                                                               |
  13. #   Author : Robinson                                                           |
  14. #   Blog   : http://blog.csdn.net/robinson_0612                                 |
  15. # ------------------------------------------------------------------------------+
  16. #
  17. # -------------------------------
  18. #  Set environment here
  19. # ------------------------------
  20. if [ -f ~/.bash_profile ]; then
  21. . ~/.bash_profile
  22. fi
  23. export host=`hostname`
  24. export mail_dir=/users/robin/dba_scripts/sendEmail-v1.56
  25. export mail_list=‘[email protected]‘
  26. export mail_fm=‘[email protected]‘
  27. tmpfile=/tmp/ck_fs_space.txt
  28. alert=n
  29. # --------------------------------
  30. #  Check the parameter
  31. # --------------------------------
  32. max=$1
  33. if [ ! ${2} ]; then
  34. echo "No filesystems specified."
  35. echo "Usage: ck_fs_space.sh 90 / /u01"
  36. exit 1
  37. fi
  38. # --------------------------------
  39. #  Start to check the disk space
  40. # --------------------------------
  41. while [ "${2}" ]
  42. do
  43. percent=`df -P ${2} | tail -1 | awk ‘{print $5 }‘ | cut -d‘%‘ -f1`
  44. if [ "${percent}" -ge "${max}" ]; then
  45. alert=y
  46. break
  47. fi;
  48. shift
  49. done;
  50. # ------------------------------------------------------------------------
  51. #  When a partition was above the threshold then send mail with df output
  52. # ------------------------------------------------------------------------
  53. if [ ! "${alert}" = ‘n‘ ];then
  54. df -h >$tmpfile
  55. mail_sub="Disk usage beyond the threshold ${max} on ${host}."
  56. $mail_dir/sendEmail -u ${mail_sub} -f $mail_fm -t $mail_list -o message-file=${tmpfile}
  57. fi;
  58. exit;

2、脚本说明
   a、该脚本使用了 sendEmail 工具来发送邮件。
   b、使用方式为"Usage: ck_fs_space.sh 90 / /u01" 。
   c、脚本中使用了一个while循环来逐个判断所有的指定分区的空闲空间是否超出阙值。
   d、对于超出阙值的情形发送邮件并且附上当前服务器上磁盘空间的使用情况。

转:http://blog.csdn.net/leshami/article/details/8893943

时间: 2024-10-24 20:31:42

Linux/Unix shell 脚本监控磁盘可用空间的相关文章

Linux/Unix shell 脚本中调用SQL,RMAN脚本

Linux/Unix shell脚本中调用或执行SQL,RMAN 等为自动化作业以及多次反复执行提供了极大的便利,因此通过Linux/Unix shell来完成Oracle的相关工作,也是DBA必不可少的技能之一.本文针对Linux/Unix shell脚本调用sql, rman 脚本给出了相关示例. 一.由shell脚本调用sql,rman脚本 [python] view plain copy print? 1.shell脚本调用sql脚本 #首先编辑sql文件 [email protecte

Linux下shell脚本监控Tomcat的状态并实现自动启动

最近公司需要在Linux下监控tomcat的服务,一旦tomcat服务存在异常或者宕机,重启tomcat保证服务的正常运行,由于Linux下有Shell脚本可以实现此效果,下面是Linux下shell脚本监控Tomcat的状态并实现自动启动的步骤. 1.编写Shell脚本monitor.sh #!/bin/sh # func:自动监控tomcat脚本并且执行重启操作# author:EagleHao# date:2018-04-08# DEFINE # 获取tomcat进程ID(其中[grep

Linux用shell脚本监控网站运行状态并发告警邮件

#!/bin/bash # DATE=`date "+%Y.%m.%d-%H:%M:%S"` ACCESS_DIR=/root/curl/access ERRO_DIR=/root/curl/erro SUCCESS_DIR=/root/curl/success FILE=`date "+%Y.%m.%d-%H"` WRONG(){ cat $ERRO_DIR/$FILE | awk -F ' ' '{print $2$3"\n"}'#有错误状态

Linux/Unix shell 监控Oracle告警日志(monitor alter log file)

使用shell脚本实现对Oracle数据库的监控与管理将大大简化DBA的工作负担,如常见的对实例的监控,监听的监控,告警日志的监控,以及数据库的备份,AWR report的自动邮件等.本文给出Linux 下使用 shell 脚本来监控 Oracle 告警日志(monitor alter log file). Linux Shell的相关参考:        Linux/Unix shell 脚本中调用SQL,RMAN脚本        Linux/Unix shell sql 之间传递变量   

Linux/Unix shell 监控Oracle监听器(monitor listener)

使用shell脚本实现对Oracle数据库的监控与管理将大大简化DBA的工作负担,如常见的对实例的监控,监听的监控,告警日志的监控,以及数据库的备份,AWR report的自动邮件等.本文给出Linux 下使用 shell 脚本来监控 Oracle 监听器. Linux Shell的相关参考:        Linux/Unix shell 脚本中调用SQL,RMAN脚本        Linux/Unix shell sql 之间传递变量        Linux/Unix shell 调用

Linux/Unix shell 监控Oracle实例(monitor instance)

使用shell脚本实现对Oracle数据库的监控与管理将大大简化DBA的工作负担,如常见的对实例的监控,监听的监控,告警日志的监控,以及数据库的备份,AWR report的自动邮件等.本文给出Linux 下使用 shell 脚本来监控 Oracle 实例. Linux Shell的相关参考:        Linux/Unix shell 脚本中调用SQL,RMAN脚本        Linux/Unix shell sql 之间传递变量        Linux/Unix shell 调用 P

Linux/Unix shell sql 之间传递变量

灵活结合Linux/Unix Shell 与SQL 之间的变量传输,极大程度的提高了DBA的工作效率,本文针对Linux/Unix shell sql 之间传递变量给出几个简单的示例以供参考. Linux/Unix 下调用SQL,RAMN 请参考:Linux/Unix shell 脚本中调用SQL,RMAN脚本 一.示例 [python] view plain copy print? 1.shell变量接受sql返回值之方式一 [email protected]:~> more ./retval

用shell脚本监控linux系统 自动发送邮件

此脚本可以做一个定时的检测,超出设定的值,即往邮箱发送警告 脚本用到bc,sendmail,163邮箱, yum install bc #!/bin/bash #System Monitoring Script while [ 1 ] do #本机需开启postfix或sendmail服务. #报警邮件地址设置 [email protected] [email protected] #设置脚本运行间隔时间.单位(秒). RUNTIME=900 #内存使用率监控设置,单位 (%) MEMTHRE=

SQL Server自动化运维系列——监控磁盘剩余空间及SQL Server错误日志(Power Shell)

原文:SQL Server自动化运维系列--监控磁盘剩余空间及SQL Server错误日志(Power Shell) 需求描述 在我们的生产环境中,大部分情况下需要有自己的运维体制,包括自己健康状态的检测等.如果发生异常,需要提前预警的,通知形式一般为发邮件告知. 在所有的自检流程中最基础的一个就是磁盘剩余空间检测.作为一个高效的DBA不可能每天都要上生产机上查看磁盘剩余或者直到磁盘无剩余空间报错后才采取扩容措施. 当然,作为微软的服务器有着自己的监控软件:SCCM(System Center