Inhaltsverzeichnis
HPUX image backup
Beschreibung
Konfigurationsparameter
Für das script make_net_recovery.sh werden folgende Parameter im zentralen environment.cfg Konfiguration File benötigt:Parameter | Wert | Beschreibung |
---|---|---|
IGNITE_ARCHIVE | nfs12:/archives/`hostname`/`uname -r` | NFS share wo die OS Images abgelegt werden sollen. Dies kann der IgniteUX Server, oder auch jedes andere NFS share sein. Bevorzugt setze ich, falls vorhanden, ein NAS System ein. |
IGNITE_N_ARCHIVE | 4 | Anzahl der Archive die max. abgelegt werden sollen Wenn die Anzahl erreicht ist, wird das älteste Image gelöscht |
IGNITE_SERVER | IgniteUX_Server hpjapp7 |
IgniteUX Server, wo die Konfigurationen der Clients abglegt werden |
IGNITE_OPTION | -x inc_entire=vg00 -x exclude=/nfs -x exclude=/net -d `hostname`-`uname -r`-Archive | es können die gleichen Optionen wie bei dem make_net_recovery Kommando benutzt werden |
Eintrag im environment.cfg File
Der Eintrag in das zentrale environment.cfg File, könnte dann wie folgt aussehen:... #### IGNITE HPUX Setting: ### ############################# IgniteUX #IGNITE_SERVER #hpapp3 IgniteUX #IGNITE_CLIENT #`hostname` IgniteUX #IGNITE_ARCHIVE #"192.6.5.21:/ignite/archives/`hostname`/`uname -r`-d `hostname`-`uname -r`-Archive" IgniteUX #IGNITE_N_ARCHIVE #4 IgniteUX #IGNITE_OPTIONS #"-A -x inc_entire=vg00" IgniteUX #IGNITE_TAPE #/dev/rmt/0mn IgniteUX@hpapp3 #IGNITE_SERVER #hpaapp9 IgniteUX@hp11itest #IGNITE_SERVER #hpaapp9 IgniteUX@hp11itest #IGNITE_ARCHIVE #"192.6.5.11:/ignite/archives/`hostname`/`uname -r`" IgniteUX@hpapp1 #IGNITE_OPTIONS #"-f /ccf/local/etc/ignite_archive_content_`hostname`" IgniteUX@hpapp2 #IGNITE_OPTIONS #"-f /ccf/local/etc/ignite_archive_content_`hostname`" IgniteUX@hpapp8 #IGNITE_SERVER #hpapp2 IgniteUX@hpapp6 #IGNITE_SERVER #hpapp2 IgniteUX@hpapp6 #IGNITE_OPTIONS #"-f /usr/local/etc/testen" ...
Hierbei überschreiben die IgniteUX@SERVER_NAME die globalen IgniteUX Settings.
Es ist hiermit möglich, rechnerspezifische Definitionen zu generieren. Bei sehr umfangreichen Optionen, sollte man auf die Möglichkeit eines separaten Konfig Files -f Konfig_FILE zurückgreifen (siehe : man make_net_recovery Section "Including and Excluding From Archive"). Diese Konfig Files sollten beim Einsatz mehrerer IgniteUX Server ebenfalls zentral abgelegt werden.
Beispiel: "archive_content" Konfig File /ccf/local/etc/testen
inc_all_affected inc_entire vg00 inc_entire vg01 exclude /nfs exclude /net exclude /u01 exclude /u00
Anwendung
Es benutzt die scripts functions2.sh und environment2.sh (zwingende Vorraussetzung) um zusätzliche Funtionen und die Umgebungsvariablen zu erhalten. Mit Hilfe der -h Option erhält man Informationen bzgl. der benutzten Optionen.make_net_recovery.sh -h
environment2.sh #------------- script setting standard definitions usage: environment2.sh [-he] usage: environment2.sh [-de] [-ce configfile] [-Fe Projekt] -he -shows help message for environment.sh -de -debug display only commands -ce value -configfile -Fe value [value2] [value3] ... -search for specific environment settings #----------------------------------------------------------------------- function2.sh #----------- -hf -shows help message for functions.sh -l -Send output to standard out -d -Debug mode. Do not execute anything -m value -Send mail to user -O value -Name of the logfile -f -Force to send mail -c value -Specify configuration file -e value -file to set special Unix environment -T value -Send SNMP trap if an error occured -F value [value2] [value3] ... -search for specific environment settings in configfile -J value -define from which scheduler script is running -R value -Return Code greater than VALUE is an error #------------------------------------------------------------------------ make_net_recovery.sh #------------- script to create a system image over network usage: make_net_recovery.sh [-h] #-----------------------------------------------------------------------
Mittels der debug und list Option -d -l kann man einfach überprüfen welches "make_net_recovery" Kommando letztendlich ausgeführt wird.
make_net_recovery.sh -l -d
make_net_recovery.sh start: ##### Tue Jul 27 16:07:03 MESZ 2010 ##### /opt/ignite/bin/make_net_recovery -a nfs87:/archives/hpapp2/B.11.31 -v -A -n 4 -s hpignite1 -x inc_entire=vg00 \ -x exclude=/nfs -x exclude=/net -d hpapp2-B.11.31-Archive make_net_recovery.sh end : ##### Tue Jul 27 16:07:03 MESZ 2010 ##### RC: 0 (succesfully)
Source
das script make_net_recovery.sh zum erstellen eines IgniteUX OS image backup ist sehr einfach geschrieben. Die immer wiederkehrenden Funktionen sind in den Scripten functions2.sh und environment2.sh definiert. Diese werden mittels der Zeile:. functions2.sh -F IgniteUX -O make_net_recovery.log $*
eingefügt. Die Option -F IgniteUX ließt die im environment2.cfg definierten Environment Variablen (s.o.) aus. Die -O make_net_recovery.log Option definiert den Log File.
#@(#) !/bin/sh #@(#) Programm: make_net_recovery.sh #@(#) Revision: 1.0 ### Flecke Reinhold ### 03.12.03 #@(#) ------------------------------------------------------------------ #@(#) Revision: 1.1 ### Flecke Reinhold ### 29.01.10 #@(#) changed functions.sh to functions2.sh + add $dflag Option #@(#) ------------------------------------------------------------------ #@(#) Description : script to create a system image over network #@(#) ################################################################## #set -x SCRIPT=`basename $0` script_help() { add_to_help "$SCRIPT\n" 0 add_to_help "#-------------\n" 0 add_to_help "script to create a system image over network\n" 0 add_to_help "usage:\t$SCRIPT [-h]\n" 0 add_to_help "#-----------------------------------------------------------------------\n" 0 HELP_ARRAY[0]=1 } #----- Housekeeping ------------------------------------ #----------------------------------------------------------------------- . functions2.sh -F IgniteUX -O make_net_recovery.log $* #---------- check Option --------------------------------------- #----------------------------------------------------------------------- while [ $# -gt 0 ]; do case $1 in -h) script_help programm_option exit 2 ;; *) shift ;; esac done start_msg #---------- start defined task --------------------------------- umask 000 echo /opt/ignite/bin/make_net_recovery -a $IGNITE_ARCHIVE -v -A -n $IGNITE_N_ARCHIVE -s $IGNITE_SERVER $IGNITE_OPTION S if [ $dflag = $FALSE ] ; then /opt/ignite/bin/make_net_recovery -a $IGNITE_ARCHIVE -v -A -n $IGNITE_N_ARCHIVE -s $IGNITE_SERVER $IGNITE_OPTIONS RTN_CODE=$? fi #---------- send mail [if defined] and finish script ----------- if [ $RTN_CODE -eq 2 ] ; then RTN_CODE=0 end_msg '[with warnings]' else end_msg fi