Benutzer-Werkzeuge

Webseiten-Werkzeuge


users:werner:saprc

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
users:werner:saprc [2008-06-27 2310]
werner SLES10 vergessen...
users:werner:saprc [2010-10-08 2023] (aktuell)
werner ufzsap 2 oursap
Zeile 1: Zeile 1:
 +====== SAP will nicht starten ======
  
 +...und zwar aus Gründen, die vermutlich am Betriebssystem liegen? Genau das lag bei einem neu installierten SAP Solution Manager (DB: Oracle 10.2.0.2, OS: SUSE Linux Enterprise Server 10, Architektur: Linux x86_64) vor...
 +
 +Der SAP-Support teilte mir mit, dass das Problem aus einem Namenskonfikt zwischen dem Novell-Paket "sapinit" und dem SAP-Systemscript "startsapserv" resultiere. Workaround bis zur Freigabe eines geänderten "sapinit" sei es, das Paket ganz zu deinstallieren.
 +
 +Naja, wenn es weiter nichts ist... Aber schließlich sollte die Software bei einem Rechnerstart automatisch starten, also habe ich ein eigenes rc-Script geschrieben:
 +
 +<code bash>
 +#! /bin/bash
 +#
 +# /etc/init.d/oursap
 +#
 +#   and its symbolic link
 +#
 +# /usr/sbin/rcoursap
 +#
 +### BEGIN INIT INFO
 +# Provides:       UFZSAP
 +# Required-Start: $remote_fs $syslog
 +# Should-Start:   sysstat
 +# Required-Stop:  $remote_fs $syslog
 +# Default-Start:  3 5
 +# Default-Stop:   0 1 2 6
 +# Short-Description:    Control script for SAP systems
 +# Description:    Controls SAP systems installed on this machine
 +### END INIT INFO
 +
 +# Fetch the boot script functions, if available
 +test -f /etc/rc.status && . /etc/rc.status
 +
 +# get configuration data
 +CONFIGFILE=/etc/sysconfig/oursap
 +test -f $CONFIGFILE && . $CONFIGFILE
 +
 +# Reset status of this service
 +rc_reset
 +
 +# Figure out what to do, and do it;-)
 +case "$1" in
 +    start)
 +        for SAPSID in $OURSAP_SYSTEMS; do
 +            SIDBIG=$(echo $SAPSID | tr /a-z/ /A-Z/)
 +            SIDSML=$(echo $SAPSID | tr /A-Z/ /a-z/)
 +            SIDADM="${SIDSML}adm"
 +            ORASID="ora${SIDSML}"
 +            su - $ORASID -c "/oracle/$SIDBIG/102_64/bin/lsnrctl start"
 +            su - $SIDADM -c "/sapmnt/$SIDBIG/exe/startsap"
 +        done
 +        rc_status -v
 +        ;;
 +    stop)
 +        for SAPSID in $OURSAP_SYSTEMS; do
 +            SIDBIG=$(echo $SAPSID | tr /a-z/ /A-Z/)
 +            SIDSML=$(echo $SAPSID | tr /A-Z/ /a-z/)
 +            SIDADM="${SIDSML}adm"
 +            ORASID="ora${SIDSML}"
 +            su - $SIDADM -c "/sapmnt/$SIDBIG/exe/stopsap"
 +            su - $ORASID -c "/oracle/$SIDBIG/102_64/bin/lsnrctl stop"
 +        done
 +        rc_status -v
 +        ;;
 +    status)
 +        for SAPSID in $OURSAP_SYSTEMS; do
 +            SIDBIG=$(echo $SAPSID | tr /a-z/ /A-Z/)
 +            SAPPROCS=$(ps ax | grep "dw.sap$SIDBIG" | grep -v grep | wc -l)
 +            ORAPROCS=$(ps ax | grep "oracle$SIDBIG" | grep -v grep | wc -l)
 +            JVAPROCS=$(ps ax | grep jlaunch | grep $SIDBIG | grep -v grep | wc -l)
 +            ICMPROCS=$(ps ax | grep icman | grep $SIDBIG | grep -v grep | wc -l)
 +            SSSPROCS=$(ps ax | grep sapstartsrv | grep $SIDBIG | grep -v grep | wc -l)
 +            echo "Prozesse System $SIDBIG: $SAPPROCS d+w, $ORAPROCS Oracle, $JVAPROCS Java, $ICMPROCS ICM, $SSSPROCS sapstartserv"
 +        done
 +        rc_status -v
 +        ;;
 +    try-restart|restart)
 +        $0 stop
 +        $0 start
 +        ;;
 +    *)
 +        echo "Usage: $0 {start|status|stop|restart|try-restart}"
 +        exit 1
 +        ;;
 +esac
 +rc_exit
 +</code>
 +
 +Zum Abschluss noch ein
 +<code bash>
 +ln -s /etc/init.d/oursap /usr/sbin/rcoursap
 +insserv oursap
 +</code>
 +und die Sache funktioniert!
 +
 +Ach ja, die Konfigurationsdatei ''/etc/sysconfig/oursap'' sieht so aus:
 +<code bash>
 +## Path:        Productivity/Other
 +## Description: Parameters for SAP software on this machine
 +## Config:      oursap
 +#
 +# This file defines some parameters.
 +#
 +# There are no default values, since they highly depend on the
 +# individual system.
 +#
 +
 +## Type:                string
 +## Default:             ""
 +## Config:              ""
 +#
 +# the SAP systems to be controlled. Multiple systems separated by space.
 +# for example OURSAP_SYSTEMS="C11 UFO"
 +#
 +OURSAP_SYSTEMS="SID"
 +</code>
 +
 +Diese Seite gibt es auch [[users:werner:saprc_en|in Englisch]].
users/werner/saprc.txt · Zuletzt geändert: 2010-10-08 2023 von werner