imported>DrOwl |
imported>DrOwl |
||
Line 81:
===Makefile.in.diff===
#--- Makefile.in.orig 2010-11-02 09:20:51.257339000 +0000
#+++ Makefile.in 2010-11-02 10:00:49.290644000 +0000
#@@ -303,6 +303,8 @@
# # Solaris pkgmk
# PACKDIR=@PACKDIR@
# VERSION=@VERSION@
#+SUN_OS_RELEASE=$(shell uname -r | cut -f2 -d. )
#+SUN_PLATFORM=$(shell uname -p)
#
# Prototype:
# if [ ! -d $(PACKDIR) ] ; then mkdir $(PACKDIR); fi
#@@ -314,12 +316,17 @@
# $(INSTALL) -m 644 sample-config/nagios.cfg $(PACKDIR)$(CFGDIR)/nagios.cfg.$(VERSION)
# $(INSTALL) -m 644 sample-config/cgi.cfg $(PACKDIR)$(CFGDIR)/cgi.cfg.$(VERSION)
# $(INSTALL) -m 640 sample-config/resource.cfg $(PACKDIR)$(CFGDIR)/resource.cfg.$(VERSION)
#- $(INSTALL) -m 664 sample-config/template-object/bigger.cfg $(PACKDIR)$(CFGDIR)/bigger.cfg.$(VERSION)
#- $(INSTALL) -m 664 sample-config/template-object/minimal.cfg $(PACKDIR)$(CFGDIR)/minimal.cfg.$(VERSION)
#- $(INSTALL) -m 664 sample-config/template-object/checkcommands.cfg $(PACKDIR)$(CFGDIR)/checkcommands.cfg.$(VERSION)
#- $(INSTALL) -m 664 sample-config/template-object/misccommands.cfg $(PACKDIR)$(CFGDIR)/misccommands.cfg.$(VERSION)
#+ $(INSTALL) -m 664 sample-config/template-object/commands.cfg $(PACKDIR)$(CFGDIR)/commands.cfg.$(VERSION)
#+ $(INSTALL) -m 664 sample-config/template-object/contacts.cfg $(PACKDIR)$(CFGDIR)/contacts.cfg.$(VERSION)
#+ $(INSTALL) -m 664 sample-config/template-object/localhost.cfg $(PACKDIR)$(CFGDIR)/localhost.cfg.$(VERSION)
#+ $(INSTALL) -m 664 sample-config/template-object/printer.cfg $(PACKDIR)$(CFGDIR)/printer.cfg.$(VERSION)
#+ $(INSTALL) -m 664 sample-config/template-object/switch.cfg $(PACKDIR)$(CFGDIR)/switch.cfg.$(VERSION)
#+ $(INSTALL) -m 664 sample-config/template-object/templates.cfg $(PACKDIR)$(CFGDIR)/templates.cfg.$(VERSION)
#+ $(INSTALL) -m 664 sample-config/template-object/timeperiods.cfg $(PACKDIR)$(CFGDIR)/timeperiods.cfg.$(VERSION)
#+ $(INSTALL) -m 664 sample-config/template-object/windows.cfg $(PACKDIR)$(CFGDIR)/windows.cfg.$(VERSION)
# cd contrib; $(MAKE) all; $(MAKE) DESTDIR=$(PACKDIR) INIT_OPTS='' INSTALL_OPTS='' COMMAND_OPTS='' nagios_grp='' nagios_usr='' install
# echo i pkginfo> Prototype
#+ if [ -f checkinstall.in ] ; then cat checkinstall.in | sed 's/!SUN_PLATFORM!/$(SUN_PLATFORM)/g' >checkinstall; fi
# if [ -f checkinstall ] ; then echo i checkinstall>> Prototype; fi
# if [ -f preinstall ] ; then echo i preinstall>> Prototype; fi
# if [ -f postinstall ] ; then echo i postinstall>> Prototype; fi
#@@ -329,10 +336,15 @@
# mkdir $(PACKDIR)/nagios
# pkgmk -o -r / -f Prototype -d $(PACKDIR) nagios
#
#-nagios.SPARC.pkg.tar.gz: pkg/nagios/pkgmap
#- cd $(PACKDIR) && tar -cf - nagios | gzip -9 -c > ../nagios.SPARC.pkg.tar.gz
#+nagios.sun.pkg.tar.gz: pkg/nagios/pkgmap
#+ cd $(PACKDIR) && tar -cf - nagios | gzip -9 -c > ../nagios-$(VERSION)-Sol$(SUN_OS_RELEASE)-$(SUN_PLATFORM).pkg.tar.gz
#
#-pkgset: nagios.SPARC.pkg.tar.gz
#+nagios.sun.pkg: pkg/nagios/pkgmap
#+ pkgtrans -s $(PACKDIR) ../nagios-$(VERSION)-Sol$(SUN_OS_RELEASE)-$(SUN_PLATFORM).pkg nagios
#+
#+pkgsettar: nagios.sun.pkg.tar.gz
#+
#+pkgset: nagios.sun.pkg
#
# pkgclean:
#- rm -rf pkg Prototype nagios.SPARC.pkg.tar.gz
#+ rm -rf pkg Prototype nagios-$(VERSION)-$(SUN_PLATFORM).pkg.tar.gz
#
===Read Only Web account patch===
|
Revision as of 15:03, 12 November 2010
Building Nagios On Solaris Sparc
Prepare
Install gcc
get the gcc package form sunfreeware
# wget ftp://ftp.sunfreeware.com/pub/freeware/sparc/10/gcc-3.4.6-sol10-sparc-local.gz
# gunzip gcc-3.4.6-sol10-sparc-local.gz
# pkgadd -d gcc-3.4.6-sol10-sparc-local
you then need to set up the environment (you can add this to /etc/profile or some enlivenment =)
# export CC ; CC=gcc # export LD_LIBRARY_PATH; LD_LIBRARY_PATH=/usr/sfw/lib:/usr/local/ssl/lib # export PATH ; PATH=/usr/local/bin:/usr/sfw/bin:/usr/sbin:/usr/bin:/usr/ccs/bin
install ligiconv
gcc needs libiconv
wget ftp://ftp.sunfreeware.com/pub/freeware/sparc/10/libiconv-1.11-sol10-sparc-local.gz
# gunzip libiconv-1.11-sol10-sparc-local.gz # pkgadd -d libiconv-1.11-sol10-sparc-local
Install Lib gd
Get the source form www.libgd.org
# wget http://www.libgd.org/releases/gd-2.0.35.tar.gz
# gunzip -dc gd-2.0.35.tar.gz | tar -xf - # cd gd-2.0.35 # ./configure --prefix=/opt/libgd ... # make ... # make install ...
Build Nagios server
get the nagios source from www.nagios.org
# gunzip -dc nagios-3.0.6.tar.gz | tar -xf -
# cd nagios-3.0.6
# groupadd -g 510 nagios # useradd -u 510 -g nagios nagios
Refer to the Read Only Webaccount Patch below
# ./configure --prefix=/opt/nagios-3.0.6 --with-nagios-user=nagios --with-nagios-group=nagios --with-gd-lib=/opt/libgd/lib --with-gd-inc=/opt/libgd/include # gmake pkgclean # gmake all # gmake pkgset
checkinstall.in
##!/bin/sh ## #expected_platform="!SUN_PLATFORM!" ## #platform=`uname -p` ## #if [ ${platform} != ${expected_platform} ]; then # echo "\n\n\n\tThis package must be installed on a ${expected_platform} architecture\n" # echo "\tAborting installation.\n\n\n" # exit 1 #fi #exit 0 #
Makefile.in.diff
#--- Makefile.in.orig 2010-11-02 09:20:51.257339000 +0000 #+++ Makefile.in 2010-11-02 10:00:49.290644000 +0000 #@@ -303,6 +303,8 @@ # # Solaris pkgmk # PACKDIR=@PACKDIR@ # VERSION=@VERSION@ #+SUN_OS_RELEASE=$(shell uname -r | cut -f2 -d. ) #+SUN_PLATFORM=$(shell uname -p) # # Prototype: # if [ ! -d $(PACKDIR) ] ; then mkdir $(PACKDIR); fi #@@ -314,12 +316,17 @@ # $(INSTALL) -m 644 sample-config/nagios.cfg $(PACKDIR)$(CFGDIR)/nagios.cfg.$(VERSION) # $(INSTALL) -m 644 sample-config/cgi.cfg $(PACKDIR)$(CFGDIR)/cgi.cfg.$(VERSION) # $(INSTALL) -m 640 sample-config/resource.cfg $(PACKDIR)$(CFGDIR)/resource.cfg.$(VERSION) #- $(INSTALL) -m 664 sample-config/template-object/bigger.cfg $(PACKDIR)$(CFGDIR)/bigger.cfg.$(VERSION) #- $(INSTALL) -m 664 sample-config/template-object/minimal.cfg $(PACKDIR)$(CFGDIR)/minimal.cfg.$(VERSION) #- $(INSTALL) -m 664 sample-config/template-object/checkcommands.cfg $(PACKDIR)$(CFGDIR)/checkcommands.cfg.$(VERSION) #- $(INSTALL) -m 664 sample-config/template-object/misccommands.cfg $(PACKDIR)$(CFGDIR)/misccommands.cfg.$(VERSION) #+ $(INSTALL) -m 664 sample-config/template-object/commands.cfg $(PACKDIR)$(CFGDIR)/commands.cfg.$(VERSION) #+ $(INSTALL) -m 664 sample-config/template-object/contacts.cfg $(PACKDIR)$(CFGDIR)/contacts.cfg.$(VERSION) #+ $(INSTALL) -m 664 sample-config/template-object/localhost.cfg $(PACKDIR)$(CFGDIR)/localhost.cfg.$(VERSION) #+ $(INSTALL) -m 664 sample-config/template-object/printer.cfg $(PACKDIR)$(CFGDIR)/printer.cfg.$(VERSION) #+ $(INSTALL) -m 664 sample-config/template-object/switch.cfg $(PACKDIR)$(CFGDIR)/switch.cfg.$(VERSION) #+ $(INSTALL) -m 664 sample-config/template-object/templates.cfg $(PACKDIR)$(CFGDIR)/templates.cfg.$(VERSION) #+ $(INSTALL) -m 664 sample-config/template-object/timeperiods.cfg $(PACKDIR)$(CFGDIR)/timeperiods.cfg.$(VERSION) #+ $(INSTALL) -m 664 sample-config/template-object/windows.cfg $(PACKDIR)$(CFGDIR)/windows.cfg.$(VERSION) # cd contrib; $(MAKE) all; $(MAKE) DESTDIR=$(PACKDIR) INIT_OPTS= INSTALL_OPTS= COMMAND_OPTS= nagios_grp= nagios_usr= install # echo i pkginfo> Prototype #+ if [ -f checkinstall.in ] ; then cat checkinstall.in | sed 's/!SUN_PLATFORM!/$(SUN_PLATFORM)/g' >checkinstall; fi # if [ -f checkinstall ] ; then echo i checkinstall>> Prototype; fi # if [ -f preinstall ] ; then echo i preinstall>> Prototype; fi # if [ -f postinstall ] ; then echo i postinstall>> Prototype; fi #@@ -329,10 +336,15 @@ # mkdir $(PACKDIR)/nagios # pkgmk -o -r / -f Prototype -d $(PACKDIR) nagios # #-nagios.SPARC.pkg.tar.gz: pkg/nagios/pkgmap #- cd $(PACKDIR) && tar -cf - nagios | gzip -9 -c > ../nagios.SPARC.pkg.tar.gz #+nagios.sun.pkg.tar.gz: pkg/nagios/pkgmap #+ cd $(PACKDIR) && tar -cf - nagios | gzip -9 -c > ../nagios-$(VERSION)-Sol$(SUN_OS_RELEASE)-$(SUN_PLATFORM).pkg.tar.gz # #-pkgset: nagios.SPARC.pkg.tar.gz #+nagios.sun.pkg: pkg/nagios/pkgmap #+ pkgtrans -s $(PACKDIR) ../nagios-$(VERSION)-Sol$(SUN_OS_RELEASE)-$(SUN_PLATFORM).pkg nagios #+ #+pkgsettar: nagios.sun.pkg.tar.gz #+ #+pkgset: nagios.sun.pkg # # pkgclean: #- rm -rf pkg Prototype nagios.SPARC.pkg.tar.gz #+ rm -rf pkg Prototype nagios-$(VERSION)-$(SUN_PLATFORM).pkg.tar.gz #
Read Only Web account patch
get the patch from http://www.nagios3book.com/
in the directory you have extracted the nagios source code:
# wget http://www.nagios3book.com/nagios-3-enm/patches/readonly.tar
# tar xvf readonly.tar
in the cgi/ dir
# patch -r cgiauth.c < cgiauth.diff # patch -r extinfo.c < extinfo.diff
and in the include/ dir
# patch -r cgiauth.h < cgiauth.h.diff
Building Nagios On Solaris x86
Prepare
Install gcc
get the gcc package form sunfreeware
# wget ftp://ftp.sunfreeware.com/pub/freeware/intel/10/gcc-3.4.6-sol10-x86-local.gz
# gunzip gcc-3.4.6-sol10-x86-local.gz
# pkgadd -d gcc-3.4.6-sol10-x86-local
you then need to set up the enviroment (you can add this to /etc/profile or some eqilivent =)
# export CC ; CC=gcc # export LD_LIBRARY_PATH; LD_LIBRARY_PATH=/usr/sfw/lib:/usr/local/ssl/lib # export PATH ; PATH=/usr/local/bin:/usr/sfw/bin:/usr/sbin:/usr/bin:/usr/ccs/bin
install ligiconv
gcc need libiconv
wget ftp://ftp.sunfreeware.com/pub/freeware/intel/10/libiconv-1.11-sol10-x86-local.gz
# gunzip libiconv-1.11-sol10-x86-local.gz # pkgadd -d libiconv-1.11-sol10-x86-local
Install Lib gd
Get the source form www.libgd.org
# wget http://www.libgd.org/releases/gd-2.0.35.tar.gz
# gunzip -dc gd-2.0.35.tar.gz | tar -xf - # cd gd-2.0.35 # ./configure --prefix=/opt/libgd ... # make ... # make install ...
Build Nagios server
get the nagios source from www.nagios.org
# gunzip -dc nagios-3.0.3.tar.gz | tar -xf -
# cd nagios-3.0.3
# groupadd -g 510 nagios # useradd -u 510 -g nagios nagios
Referee to the Read Only Webaccount Patch below
# ./configure --prefix=/opt/nagios-3.0.3 --with-nagios-user=nagios --with-nagios-group=nagios --with-gd-lib=/opt/libgd/lib --with-gd-inc=/opt/libgd/include
# gmake
Read Only Web account patch
get the patch from http://www.nagios3book.com/
in the directory you have extracted the nagios source code:
# wget http://www.nagios3book.com/nagios-3-enm/patches/readonly.tar
# tar xvf readonly.tar
in the cgi/ dir
# patch -r cgiauth.c < cgiauth.diff # patch -r extinfo.c < extinfo.diff
and in the include/ dir
# patch -r cgiauth.h < cgiauth.h.diff