1、查看check_disk脚本
[oracle@rhel5 ~]$ /usr/local/nagios/libexec/check_disk --h check_disk v1.4.15 (nagios-plugins 1.4.15) Copyright (c) 1999 Ethan Galstad <nagios@nagios.org> Copyright (c) 1999-2008 Nagios Plugin Development Team <nagiosplug-devel@lists.sourceforge.net> This plugin checks the amount of used disk space on a mounted file system and generates an alert if free space is less than one of the threshold values Usage: check_disk -w limit -c limit [-W limit] [-K limit] {-p path | -x device} [-C] [-E] [-e] [-g group ] [-k] [-l] [-M] [-m] [-R path ] [-r path ] [-t timeout] [-u unit] [-v] [-X type] Options: -h, --help Print detailed help screen -V, --version Print version information -w, --warning=INTEGER Exit with WARNING status if less than INTEGER units of disk are free -w, --warning=PERCENT% Exit with WARNING status if less than PERCENT of disk space is free -c, --critical=INTEGER Exit with CRITICAL status if less than INTEGER units of disk are free -c, --critical=PERCENT% Exit with CRITCAL status if less than PERCENT of disk space is free -W, --iwarning=PERCENT% Exit with WARNING status if less than PERCENT of inode space is free -K, --icritical=PERCENT% Exit with CRITICAL status if less than PERCENT of inode space is free -p, --path=PATH, --partition=PARTITION Path or partition (may be repeated) -x, --exclude_device=PATH <STRING> Ignore device (only works if -p unspecified) -C, --clear Clear thresholds -E, --exact-match For paths or partitions specified with -p, only check for exact paths -e, --errors-only Display only devices/mountpoints with errors -g, --group=NAME Group paths. Thresholds apply to (free-)space of all partitions together -k, --kilobytes Same as '--units kB' -l, --local Only check local filesystems -L, --stat-remote-fs Only check local filesystems against thresholds. Yet call stat on remote filesystems to test if they are accessible (e.g. to detect Stale NFS Handles) -M, --mountpoint Display the mountpoint instead of the partition -m, --megabytes Same as '--units MB' -A, --all Explicitly select all paths. This is equivalent to -R '.*' -R, --eregi-path=PATH, --eregi-partition=PARTITION Case insensitive regular expression for path/partition (may be repeated) -r, --ereg-path=PATH, --ereg-partition=PARTITION Regular expression for path or partition (may be repeated) -I, --ignore-eregi-path=PATH, --ignore-eregi-partition=PARTITION Regular expression to ignore selected path/partition (case insensitive) (may be repeated) -i, --ignore-ereg-path=PATH, --ignore-ereg-partition=PARTITION Regular expression to ignore selected path or partition (may be repeated) -t, --timeout=INTEGER Seconds before connection times out (default: 10) -u, --units=STRING Choose bytes, kB, MB, GB, TB (default: MB) -v, --verbose Show details for command-line debugging (Nagios may truncate output) -X, --exclude-type=TYPE Ignore all filesystems of indicated type (may be repeated) Examples: check_disk -w 10% -c 5% -p /tmp -p /var -C -w 100000 -c 50000 -p / Checks /tmp and /var at 10% and 5%, and / at 100MB and 50MB check_disk -w 100 -c 50 -C -w 1000 -c 500 -g sidDATA -r '^/oracle/SID/data.*$' Checks all filesystems not matching -r at 100M and 50M. The fs matching the -r regex are grouped which means the freespace thresholds are applied to all disks together check_disk -w 100 -c 50 -C -w 1000 -c 500 -p /foo -C -w 5% -c 3% -p /bar Checks /foo for 1000M/500M and /bar for 5/3%. All remaining volumes use 100M/50M Send email to nagios-users@lists.sourceforge.net if you have questions regarding use of this software. To submit patches or suggest improvements, send email to nagiosplug-devel@lists.sourceforge.net
举例:
Usage: check_disk -w limit -c limit {-p path | -x device}
格式:check_disk -w 低限% -c 低限% -p 磁盘设备文件或则分区文件的绝对路径
Options:
选项
-w, --warning=PERCENT%
设定告警通知百分比数,空间低于该百分比则发出告警通知。
-c, --critical=PERCENT%
设定严重告警通知百分比数,空间低于该百分比则发出严重告警通知。
-p, --path=PATH, --partition=PARTITION
指定磁盘设备文件或则分区文件的绝对路径。
#如果要监控根目录,达到80%报警,达到90%为严重危险
check_disk -w 80% -c 90% -p /dev/hda1 #-p后面接需要监控的硬盘分区,如果是SCSI硬盘就是sda1,当然此时被监控端的nrpe配置文件要进行相应的修改
其中check_disk主要是检查磁盘的未用空间。
2、修改nagios主机上被监控主机的配置文件
[root@rhel5 ~]# cat /usr/local/nagios/etc/services.cfg define service{ use generic-service host_name oracle service_description check-disk check_command check_nrpe!check_orcl }
3、修改被监控主机上的nrpe配置文件
[root@rhel5 ~]# cat /usr/local/nagios/etc/nrpe.cfg command[check_orcl]=/usr/local/nagios/libexec/check_disk -w 20% -c 10% -p /dev/mapper/vg_orcl-orcl
[oracle@rhel5 orcl]$ df -h 文件系统 容量 已用 可用 已用% 挂载点 /dev/sda1 7.8G 3.4G 4.1G 46% / tmpfs 355M 196M 159M 56% /dev/shm /dev/mapper/vg_orcl-orcl 15G 8.4G 5.6G 60% /u01 /dev/mapper/vg_mysql-mysql 1.9G 576M 1.3G 32% /mysql
查看一下页面:
拷贝一些文件到/u01目录下,再df -h查看一下:
[oracle@rhel5 oradata]$ df -h 文件系统 容量 已用 可用 已用% 挂载点 /dev/sda1 7.8G 3.4G 4.1G 46% / tmpfs 355M 196M 159M 56% /dev/shm /dev/mapper/vg_orcl-orcl 15G 12G 3.0G 80% /u01 /dev/mapper/vg_mysql-mysql 1.9G 576M 1.3G 32% /mysql
最后看一下页面: