Blogs

Blog Tags Help

Enter a tag to filter the current view
Combined feed for site

Lotus Domino

IBM Software

Previous |  Main  | Next

Automatic start Domino on RedHat when reboot

ЙОРДАН ВИЧЕВ  

А ето и няколко настройки за автоматично стартиране на Доминото след стартиране на RedHat операционна система:

Необходимо ни е стартиращ скрипт за Доминото. Файла се слага в директорията /etc/init.d/. Нека файла да се казва domino. Той може да съдържа например следния код:


#################################################################################
#!/bin/sh
#
# domino        Start/stop the Lotus Domino server
#
# chkconfig: 345 95 01
# description:  This script is used to start and stop the domino \
#               server as a background process. It will send \
#               the serverID password from a file to the server.\
#               Communication with the server has to be done through \
#               console, Notes Administrator or webadmin.\
#
# Usage:        /etc/rc.d/init.d/domino start|stop|restart|condrestart
#
# process name: server, ...
#
# Version 1.1, by LB, 2205-01-07

# Change the USER, GROUP, DATA_DIR and BIN_DIR for your server
DOMINO_USER="notes"
DOMINO_GROUP="notes"
DOMINO_DATA_DIR="/local/notesdata"
DOMINO_BIN_DIR="/opt/ibm/lotus/bin"
DESC="Domino R6"

if [ `id -u` != 0 ]; then
  echo "This script must be run by root only"
  exit 1
fi

TimeOutKill=300
TasksToKill="server replica router update stats adminp sched calconn event pop3 imap maps ldap http smtp mtc amgr"

tok=0

#. /etc/rc.d/init.d/functions

getpid() {
        pid=`/sbin/pidof -s server`
}

getpid

start() {

# Two ways to run the server (comment one of them out)
# 1. With the output of the console redirected to /var/log/domino.log
#       Be sure to change the logrotate daemon.
# 2. With the output of the console redirected to /dev/null

    echo -n "Starting Domino server..."

# Version with logfile
    su - ${DOMINO_USER} -c "cd ${DOMINO_DATA_DIR};\
      ${DOMINO_BIN_DIR}/server" \
      >> /local/log/domino.log 2>&1 &


# Version without logfile
#    su - ${DOMINO_USER} -c "cd ${DOMINO_DATA_DIR};\
#      cat ${SERVER_PASSWD_FILE} |\
#      ${DOMINO_BIN_DIR}/server" > /dev/null 2>&1 &

    echo "Done."
}

stop() {
    echo -n "Stopping Domino server. "

    TimeOutKill=$[TimeOutKill/2]

    if [ "$pid" != "" ]; then
        su - ${DOMINO_USER} -c "cd ${DOMINO_DATA_DIR}; ${DOMINO_BIN_DIR}/server -q"

        # Let's wait for the Domino to terminate

        while [ "$pid" != "" ] && [ "$tok" != "$TimeOutKill" ] ; do
                tok=$[tok+1]
                sleep 2
                getpid
        done

        if  [ "$tok" = "$TimeOutKill" ] ; then
                $0 kill
        fi
     fi
}

kill () {
        echo -n "Killing $DESC: "

        kill -9 `/sbin/pidof -s $TasksToKill` > /dev/null
        sleep 1
        kill -9 `/sbin/pidof -s $TasksToKill` > /dev/null
        sleep 1

        tmp=`/sbin/pidof -s $TasksToKill`

        echo
}

restart() {
        stop
        start
}

# See how we were called.

case $1 in
  start)
        start
        ;;
  stop)
        stop
        ;;
  kill)
        kill
        ;;
  restart)
        stop
        start
        ;;
  *)
    echo "Usage: domino {start|stop|restart|kill}"
    exit 1
    ;;

esac

# End of the domino script
exit 0
#################################################################################

Този скрипт записва всичко от изхода на конзолата на Доминото във файла /local/log/domino.log


Работи безупречно : ).
Необходимо е да се направи още нещо в директорията /etc/rc3.d/ трябва да се направи символичен линк към скрипта а именно:
#cd /etc/rc3.d
#ln -s ../init.d/domino S86Domino

Така можем да си спираме и пускаме Доминото от операционната система със следната команда:
#/etc/init.d/domino stop
#/etc/init.d/domino start
#/etc/init.d/domino restart

Надявам се че това би ви помогнало.

Comments

Previous |  Main  | Next