Salta al contenuto
prova
Newsletter
Blog

Elementi con i tag avvio .

Servizio Avvio Tomcat Linux

Per far partire Tomcat su sistemi Linux bisogna fare uno script un po' particolare, perchè Tomcat come processo non restituisce il pid di funzionamento percui bisogna andare a cercare il pid di tomcat tramite parole chiave del processo in esecuzione.

Questo è molto utile per chi vuole avere più di un istanza di Tomcat sul server.

Di seguito il file di avvio e stop del servizio.

#!/bin/bash
#
### BEGIN INIT INFO
# Provides:          Fenalc Copia Conforme
# Required-Start:    $local_fs $remote_fs $network
# Required-Stop:     $local_fs $remote_fs $network
# Should-Start:      $named
# Should-Stop:       $named
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Start Fenalc Copia Conforme.
# Description:       Start the FenalcPortal servlet engine.
### END INIT INFO

##VARIABLES
#path del programma

DIR=/HOME_TOMCAT/
#comandi di startup e shutdown
CMDSTART= bin/startup.sh
CMDSTOP= bin/shutdown.sh
#utente di startup
USER=USER_TO_START

#prefisso di comando nel caso ci sia bisogno del sudo
if test $(whoami) = $USER; then
    CMD_PREFIX="";
else
    CMD_PREFIX="sudo -u $USER";
fi

#echo "$(whoami)" >> /root/result.txt
#echo "$USER" >> /root/result.txt
#echo "$CMD_PREFIX $DIR$CMDSTART" >> /root/result.txt


####START SCRIPT

chown -R $USER:$USER $DIR
PID=$(ps aux |grep java | grep $DIR | awk '{print $2}')

echo "$(ps aux |grep java | grep $DIR)"

start() {
        if [ -z "$PID" ]
        then
                $CMD_PREFIX $DIR$CMDSTART
        else
                echo "Questa istanza Tomcat è già in esecuzione!!"
        fi
}

stop() {
        if [ -z "$PID" ]
        then
                echo "Questa istanza Tomcat non è in esecuzione!!"
        else
                $CMD_PREFIX $DIR$CMDSTOP
                sleep 5
        PIDc=$(ps aux |grep java | grep $DIR | awk '{print $2}')
                if [ ! -z "$PIDc" ]
                then
                        kill -9 $PIDc
                fi
        fi
}

case "$1" in
  start)
        start
        ;;
  stop)
        stop
        ;;
  status)
        if [ -z "$PID" ]
        then
                echo " Questa istanza Tomcat è in esecuzione"
        else
                echo " Questa istanza Tomcat è in esecuzione"
        fi
        ;;
  restart)
        stop
        sleep 1
        start
        ;;
  *)
        echo "Usage: /PATH_TO_THIS_SCRIPT {start|stop|restart|status}" >&2
        exit 2
esac

exit 0

 

Questo sito utilizza cookie, anche di terze parti, per migliorare la tua esperienza e offrire servizi in linea con le tue preferenze. Chiudendo questo banner, scorrendo questa pagina o cliccando qualunque suo elemento acconsenti all’uso dei cookie.

Puoi comunque continuare a visitare il sito disattivando i cookies dal tuo browser.

Se vuoi saperne di più o negare il consenso a tutti o ad alcuni cookie vai alla sezione Cookie Policy