Modify the command file:
# vi /etc/nagios/objects/commands.cfg
# 'notify-host-by-email' command definition
define command{
command_name notify-host-by-email
command_line /usr/bin/printf "\nHost: $HOSTADDRESS$\nInfo: $HOSTOUTPUT$\n\nDate/Time\n" | /bin/mail -s "$NOTIFICATIONTYPE$ Host Alert: $HOSTNAME$ is $HO
STSTATE$" $CONTACTEMAIL$
}
# 'notify-service-by-email' command definition
define command{
command_name notify-service-by-email
command_line /usr/bin/printf "\nHost: $HOSTADDRESS$\nInfo: $SERVICEOUTPUT$\n\nDate/Time\n" | /bin/mail -s "$NOTIFICATIONTYPE$ Service Alert: $SERVICEDES
C$ is $SERVICESTATE$" $CONTACTEMAIL$
}
Modify the template file:
# vi /etc/nagios/objects/templates.cfg
define contact{
name generic-contact ;The name of this contact template
service_notification_period 24x7
host_notification_period 24x7
service_notification_options w,u,c,r,f,s
host_notification_options d,u,r,f,s
service_notification_commands notify-service-by-email ;send service notifications via email
host_notification_commands notify-host-by-email ;send host notifications via email
register 0 ;DONT REGISTER THIS DEFINITION - ITS NOT A REAL CONTACT, JUST A TEMPLATE!
}
Modify the contact file:
# vi /etc/nagios/objects/contacts.cfg
define contact{
contact_name test1 ; Short name of user
use generic-contact
alias network Admin ; Full name of user
host_notifications_enabled 1
service_notifications_enabled 1
host_notification_period 24x7
service_notification_period 24x7
host_notification_options d,u,r
service_notification_options w,u,c,r
host_notification_commands notify-host-by-email
service_notification_commands notify-service-by-email
email test@163.com
}
define contact{
contact_name test2 ; Short name of user
use generic-contact
alias network Admin ; Full name of user
host_notifications_enabled 1
service_notifications_enabled 1
email test2@localhost.localdomain
}
define contact{
contact_name test3 ; Short name of user
use generic-contact
alias system Admin ; Full name of user
host_notifications_enabled 1
service_notifications_enabled 1
host_notification_period 24x7
service_notification_period 24x7
host_notification_options d,u,r
service_notification_options w,u,c,r
host_notification_commands notify-host-by-email
service_notification_commands notify-service-by-email
email 464165559@qq.com
}
define contactgroup{
contactgroup_name Network
alias Network Administrators
members test1,test2
}
define contactgroup{
contactgroup_name System
alias System Administrators
members test3
}
Modify the hosts file to be monitored:
# vi /etc/nagios/Linuxhosts/localhost.cfg
define service{
use local-service,srv-pnp ; Name of service template to use
host_name Monitor
service_description Root Partition
check_command check_local_disk!60%!90%!/dev/sda2
contacts test3
contact_groups Network
}
Grammar Checker&&Restart:
# /usr/local/nagios/bin/nagios -v /etc/nagios/nagios.cfg
# service nagios restart