Building nagios...
Build the GD library:
Download from http://www.boutell.com/gd/
http://www.boutell.com/gd/http/gd-1.8.4.tar.gz
# make
# make install
sh ./install-item 644 libgd.a /usr/local/lib/libgd.a
sh ./install-item 755 pngtogd /usr/local/bin/pngtogd
sh ./install-item 755 pngtogd2 /usr/local/bin/pngtogd2
sh ./install-item 755 gdtopng /usr/local/bin/gdtopng
sh ./install-item 755 gd2topng /usr/local/bin/gd2topng
sh ./install-item 755 gd2copypal /usr/local/bin/gd2copypal
sh ./install-item 755 gdparttopng /usr/local/bin/gdparttopng
sh ./install-item 755 webpng /usr/local/bin/webpng
sh ./install-item 755 bdftogd /usr/local/bin/bdftogd
sh ./install-item 644 gd.h /usr/local/include/gd.h
sh ./install-item 644 gdcache.h /usr/local/include/gdcache.h
sh ./install-item 644 gd_io.h /usr/local/include/gd_io.h
sh ./install-item 644 gdfontg.h /usr/local/include/gdfontg.h
sh ./install-item 644 gdfontl.h /usr/local/include/gdfontl.h
sh ./install-item 644 gdfontmb.h /usr/local/include/gdfontmb.h
sh ./install-item 644 gdfonts.h /usr/local/include/gdfonts.h
sh ./install-item 644 gdfontt.h /usr/local/include/gdfontt.h
root@wsadmin01:/build/gd-1.8.4#
Need to make package of this
Download nagios and plugins... nagios.org
# ./configure --prefix=/usr/local/nagios --with-cgiurl=/nagios/cgi-bin --with-htmurl=/nagios --with-nagios-user=nagios --with-nagios-grp=nagios --with-gd-lib=/usr/local/lib --with-gd-inc=/usr/local/include
*** Configuration summary for nagios 1.0b6 09-15-2002 ***:
General Options:
-------------------------
Nagios user/group: nagios,nagios
Command user/group: nagios,nagios
Embedded Perl: no
Install ${prefix}: /usr/local/nagios
Lock file: ${prefix}/var/nagios.lock
Init directory: /etc/init.d
Web Interface Options:
------------------------
HTML URL: http://localhost/nagios/
CGI URL: http://localhost/nagios/cgi-bin/
Traceroute (used by WAP): /usr/sbin/traceroute
External Data Routines:
------------------------
Status data: Default (text file)
Object data: Template-based (text file)
Comment data: Default (text file)
Downtime data: Default (text file)
Retention data: Default (text file)
Peformance data: Default (external commands)
Extended info data: Template-based (text file)
# make all
# make install
# make install-config
# make install-init
Make package out of these files:
cd ./html && make install
make[1]: Entering directory `/var/tmp/build/nagios-1.0b6/html'
.././install-sh -c -m 775 -o nagios -g nagios -d /usr/local/nagios/share
.././install-sh -c -m 775 -o nagios -g nagios -d /usr/local/nagios/share/media
.././install-sh -c -m 775 -o nagios -g nagios -d /usr/local/nagios/share/stylesheets
.././install-sh -c -m 775 -o nagios -g nagios -d /usr/local/nagios/share/contexthelp
.././install-sh -c -m 775 -o nagios -g nagios -d /usr/local/nagios/share/docs
.././install-sh -c -m 775 -o nagios -g nagios -d /usr/local/nagios/share/docs/images
.././install-sh -c -m 775 -o nagios -g nagios -d /usr/local/nagios/share/images
.././install-sh -c -m 775 -o nagios -g nagios -d /usr/local/nagios/share/images/logos
.././install-sh -c -m 775 -o nagios -g nagios -d /usr/local/nagios/share/ssi
.././install-sh -c -m 664 -o nagios -g nagios robots.txt /usr/local/nagios/share
.././install-sh -c -m 664 -o nagios -g nagios docs/robots.txt /usr/local/nagios/share/docs
for file in *.html; \
do .././install-sh -c -m 664 -o nagios -g nagios $file /usr/local/nagios/share; done
for file in media/*.wav; \
do .././install-sh -c -m 664 -o nagios -g nagios $file /usr/local/nagios/share/media; done
for file in stylesheets/*.css; \
do .././install-sh -c -m 664 -o nagios -g nagios $file /usr/local/nagios/share/stylesheets; done
for file in contexthelp/*.html; \
do .././install-sh -c -m 664 -o nagios -g nagios $file /usr/local/nagios/share/contexthelp; done
for file in docs/*.html; \
do .././install-sh -c -m 664 -o nagios -g nagios $file /usr/local/nagios/share/docs; done
for file in docs/images/*.*; \
do .././install-sh -c -m 664 -o nagios -g nagios $file /usr/local/nagios/share/docs/images; done
for file in images/*.gif; \
do .././install-sh -c -m 664 -o nagios -g nagios $file /usr/local/nagios/share/images; done
for file in images/*.jpg; \
do .././install-sh -c -m 664 -o nagios -g nagios $file /usr/local/nagios/share/images; done
for file in images/*.png; \
do .././install-sh -c -m 664 -o nagios -g nagios $file /usr/local/nagios/share/images; done
for file in images/logos/*.*; \
do .././install-sh -c -m 664 -o nagios -g nagios $file /usr/local/nagios/share/images/logos; done
make[1]: Leaving directory `/var/tmp/build/nagios-1.0b6/html'
./install-sh -c -m 775 -o nagios -g nagios -d /usr/local/nagios/var
./install-sh -c -m 775 -o nagios -g nagios -d /usr/local/nagios/var/archives
if [ no = yes ]; then \
./install-sh -c -m 664 -o nagios -g nagios p1.pl /usr/local/nagios/bin; \
fi;
root@wsadmin01:/build/nagios-1.0b6# make install-config
./install-sh -c -m 775 -o nagios -g nagios -d /usr/local/nagios/etc
./install-sh -c -m 664 -o nagios -g nagios sample-config/nagios.cfg /usr/local/nagios/etc/nagios.cfg-sample
./install-sh -c -m 664 -o nagios -g nagios sample-config/cgi.cfg /usr/local/nagios/etc/cgi.cfg-sample
./install-sh -c -m 660 -o nagios -g nagios sample-config/resource.cfg /usr/local/nagios/etc/resource.cfg-sample
./install-sh -c -m 664 -o nagios -g nagios sample-config/template-object/checkcommands.cfg /usr/local/nagios/etc/checkcommands.cfg-sample
./install-sh -c -m 664 -o nagios -g nagios sample-config/template-object/contactgroups.cfg /usr/local/nagios/etc/contactgroups.cfg-sample
./install-sh -c -m 664 -o nagios -g nagios sample-config/template-object/contacts.cfg /usr/local/nagios/etc/contacts.cfg-sample
./install-sh -c -m 664 -o nagios -g nagios sample-config/template-object/dependencies.cfg /usr/local/nagios/etc/dependencies.cfg-sample
./install-sh -c -m 664 -o nagios -g nagios sample-config/template-object/escalations.cfg /usr/local/nagios/etc/escalations.cfg-sample
./install-sh -c -m 664 -o nagios -g nagios sample-config/template-object/hostgroups.cfg /usr/local/nagios/etc/hostgroups.cfg-sample
./install-sh -c -m 664 -o nagios -g nagios sample-config/template-object/hosts.cfg /usr/local/nagios/etc/hosts.cfg-sample
./install-sh -c -m 664 -o nagios -g nagios sample-config/template-object/misccommands.cfg /usr/local/nagios/etc/misccommands.cfg-sample
./install-sh -c -m 664 -o nagios -g nagios sample-config/template-object/services.cfg /usr/local/nagios/etc/services.cfg-sample
./install-sh -c -m 664 -o nagios -g nagios sample-config/template-object/timeperiods.cfg /usr/local/nagios/etc/timeperiods.cfg-sample
root@wsadmin01:/build/nagios-1.0b6# make install-init
./install-sh -c -m 755 -d -o root -g root /etc/init.d
./install-sh -c -m 774 -o root -g root daemon-init /etc/init.d/nagios
root@wsadmin01:/build/nagios-1.0b6#
root@wsadmin01:/build/nagios-1.0b6# /etc/init.d/nagios start
Starting network monitor: nagios
touch: cannot change times on /usr/local/nagios/var/nagios.log
touch: cannot change times on /usr/local/nagios/var/status.sav
# find /usr/local/nagios -exec chown nagios:nagios {} \;
Modify the apache interface:
http://nagios.sourceforge.net/docs/1_0/installweb.html
Add to the bottom of httpd.conf:
#
# Nagios
#
ScriptAlias /nagios/cgi-bin/ /usr/local/nagios/sbin/
AllowOverride AuthConfig
Options ExecCGI
Order allow,deny
Allow from all
#
#
#
Alias /nagios/ /usr/local/nagios/share/
Options None
AllowOverride AuthConfig
Order allow,deny
Allow from all
Now modify the ServerName and User parameters up near the top of the file:
User nagios
Group nagios
ServerName wsadmin01.harcourt.com:80
Build the plugins:
# ./configure --prefix=/usr/local/nagios --with-cgiurl=/nagios/cgi-bin --with-htmurl=/nagios --with-nagios-user=nagios --with-nagios-grp=nagios --with-gd-lib=/usr/local/lib --with-gd-inc=/usr/local/include
# cd plugins
# make all
# make install
Verify the plugins install:
# cd /usr/local/nagios/libexec
# ./check_ssh wsmon01.harcourt.com
SSH ok - protocol version 1.99- - server version
Download the image packs:
http://www.nagios.org/download/#imagepacks
http://telia.dl.sourceforge.net/sourceforge/nagios/imagepak-base.tar.gz
http://telia.dl.sourceforge.net/sourceforge/nagios/imagepak-andrade.tar.gz
http://telia.dl.sourceforge.net/sourceforge/nagios/imagepak-bernhard.tar.gz
Tar xvf all the imagepak's
copy all *.gif, *.jpg, *.png and *.gd2 to /usr/local/nagios/share/images/logos/
# find . -name '*.gif' -exec cp {} /usr/local/nagios/share/images/logos/. \;
# find . -name '*.jpg' -exec cp {} /usr/local/nagios/share/images/logos/. \;
# find . -name '*.png' -exec cp {} /usr/local/nagios/share/images/logos/. \;
# find . -name '*.gd2' -exec cp {} /usr/local/nagios/share/images/logos/. \;
# chown nagios:nagios /usr/local/nagios/share/images/logos/*.*
Copy in some libraries (because I can't figure out how to get nagios
to source LD_LIBRARY_PATH)
# cp /usr/local/lib/libpng* /usr/lib/.
# cp /usr/ucblib/libucb.so.1 /usr/lib/.
Modifying the configs:
http://www.onlamp.com/pub/a/onlamp/2002/09/26/nagios.html