source: admin/Sources/Services/opengnsys.init @ 03e3f88

918-git-images-111dconfigfileconfigure-oglivegit-imageslgromero-new-oglivemainmaint-cronmount-efivarfsmultivmmultivm-ogboot-installerogClonningEngineogboot-installer-jenkinsoglive-ipv6test-python-scriptsticket-301ticket-50ticket-50-oldticket-577ticket-585ticket-611ticket-612ticket-693ticket-700ubu24tplunification2use-local-agent-oglivevarios-instalacion
Last change on this file since 03e3f88 was b351d8a, checked in by Ramón M. Gómez <ramongomez@…>, 6 years ago

#875: Removing old ogAdmRepo service.

  • Property mode set to 100755
File size: 6.7 KB
RevLine 
[d4e90c1]1#!/bin/bash
[ca6183e]2
3### BEGIN INIT INFO
4# Provides:          opengnsys
5# Required-Start:
6# Required-Stop:
7# Default-Start:     2 3 4 5
8# Default-Stop:      1
[d7fe54a]9# Short-Description: Servicios del sistema OpenGnsys
10# Description:       Servicios del sistema OpenGnsys
[ca6183e]11### END INIT INFO
12
13#
14# Definiciones globales
15#
16BASEDIR=/opt/opengnsys
[e3d8dd1]17OPENGNSYSUSER="opengnsys"
18IMAGEDIR=$BASEDIR/images
19CLIENTLOGDIR=$BASEDIR/log/clients
[ca6183e]20
21#
[d7fe54a]22# Servidor de OpenGnsys
[ca6183e]23#
24SERVERNAME=ogAdmServer
25SERVERDAEMON=$BASEDIR/sbin/$SERVERNAME
26SERVERCFG=$BASEDIR/etc/$SERVERNAME.cfg
27SERVERLOG=$BASEDIR/log/$SERVERNAME.log
28SERVERDAEMON_OPTIONS="-f $SERVERCFG -l $SERVERLOG"
29
30#
31# Servidor de Repositorio
32#
[8fc9552]33############## ADV
34REPOAUXNAME=ogAdmRepoAux
35REPOAUXDAEMON=$BASEDIR/sbin/$REPOAUXNAME
[e3d8dd1]36REPOAUXPORT=$(awk -F= '/PUERTO/ {print $2+1}' $SERVERCFG 2>/dev/null)
[8fc9552]37############## ADV
[831830f]38############# IRINA # para setBootMode desde el cliente
39SERVERAUXNAME=ogAdmServerAux
40SERVERAUXDAEMON=$BASEDIR/sbin/$SERVERAUXNAME
41SERVERAUXPORT=2011 
42############# IRINA
[aeb0e7d7]43
44#
45# Servidor de tareas programadas
46#
47AGENTNAME=ogAdmAgent
48AGENTDAEMON=$BASEDIR/sbin/$AGENTNAME
49AGENTCFG=$BASEDIR/etc/$AGENTNAME.cfg
50AGENTLOG=$BASEDIR/log/$AGENTNAME.log
51AGENTDAEMON_OPTIONS="-f $AGENTCFG -l $AGENTLOG"
52
[ca6183e]53#
54# Opciones Bittorrent
55#
56
57BTTRACK=/usr/bin/bttrack.bittorrent
58BTSEEDER=/usr/bin/btlaunchmany.bittornado
59BTTRACKPORT=6969
60BTTRACKDFILE=/tmp/dstate
[e3d8dd1]61BTTRACKLOG=$BASEDIR/log/bttrack.log
[ca6183e]62BTINTERVAL=30
[e3d8dd1]63BTTORRENTSDIR=$BASEDIR/images
[1cf578b]64BTTRACK_OPTIONS=" --port $BTTRACKPORT --dfile $BTTRACKDFILE --reannounce_interval $BTINTERVAL --logfile $BTTRACKLOG --allowed_dir $BTTORRENTSDIR --allow_get 1"
[ca6183e]65BTTRACKPID="/var/run/bttrack.pid"
66BTSEEDERPID="/var/run/btseeder.pid"
67
68
69export PATH="${PATH:+$PATH:}/usr/sbin:/sbin:/usr/bin"
70
71# Read config file if it is present.
[1cf578b]72if [ -r /etc/default/opengnsys ]; then
[4b08fa5]73    source /etc/default/opengnsys
[ca6183e]74fi
75
[2777f20]76# Configuración de arranque según la distribución Linux usada.
77config() {
[6374326]78    if [ -f /etc/os-release ]; then
79        source /etc/os-release
[eeb438a]80        OSDISTRIB="$ID"
[6374326]81    else
82        OSDISTRIB=$(lsb_release -is 2>/dev/null)
83    fi
[eeb438a]84    OSDISTRIB="${OSDISTRIB,,}"
[2777f20]85    case "$OSDISTRIB" in
[eeb438a]86        ubuntu|debian|linuxmint)
[5454b9d]87            INITFUNCTIONS=/lib/lsb/init-functions
[e64207e]88            DAEMONSTART="start-stop-daemon --start --quiet --background --exec"
89            EXTRAOPTS="--"
[9d859d0]90            DAEMONSTOP="start-stop-daemon --stop --quiet --oknodo --name"
[5454b9d]91            ACTIONMSG="log_daemon_msg"
92            SUCCESSMSG="log_end_msg 0"
93            FAILMSG="log_end_msg 1"
[1cf578b]94            TRACKERSTART="start-stop-daemon --make-pidfile --pidfile $BTTRACKPID --start --quiet --background --exec"
95            BTTRACK_OPTIONS="$BTTRACK_OPTIONS --parse_allowed_interval 1"
[9d859d0]96            TRACKERSTOP="start-stop-daemon --stop --quiet --oknodo --retry 30 --pidfile $BTTRACKPID"
[1cf578b]97            SEEDERSTART="start-stop-daemon --make-pidfile --pidfile $BTSEEDERPID --start --quiet --background --exec"
98            SEEDERSTOP="start-stop-daemon --stop --quiet --oknodo --pidfile $BTSEEDERPID"
[2777f20]99            ;;
[eeb438a]100        centos|fedora)
[5454b9d]101            INITFUNCTIONS=/etc/init.d/functions
[2777f20]102            DAEMONSTART="daemon"
[55477d2]103            ENDOPTS="&"
[2777f20]104            DAEMONSTOP="killproc"
[5454b9d]105            ACTIONMSG="echo -n"
[55477d2]106            SUCCESSMSG="eval ( success; echo )"
107            FAILMSG="eval ( failure; echo )"
[1cf578b]108            BTTRACK=/usr/bin/bttrack.py
109            BTSEEDER=/usr/bin/btlaunchmany.py
110            TRACKERSTART="daemon --pidfile $BTTRACKPID"
111            TRACKERSTOP="killproc -p $BTTRACKPID $BTTRACK"
112            SEEDERSTART="daemon --pidfile $BTSEEDERPID"
113            SEEDERSTOP="killproc -p $BTSEEDERPID $BTSEEDER"
[2777f20]114            ;;
[6ef01d9]115        *)  echo "Distribución Linux desconcocida o no soportada."
[2777f20]116            exit ;;
117    esac
[d4e90c1]118    if [ -r $INITFUNCTIONS ]; then
[5454b9d]119        source $INITFUNCTIONS
120    fi
[2777f20]121}
122
[ca6183e]123arranca_demonios() {
[d7fe54a]124  # Comprobar que está instalado OpenGnsys.
[e3d8dd1]125  if [ ! -d $BASEDIR ]; then
126     $ACTIONMSG "ERROR: No existe el directorio $BASEDIR"
127     $FAILMSG
128     exit $?
129  fi
[ea60f41]130  # Deshabilitar modo reforzado de SELinux.
131  [ -f /selinux/enforce ] && echo 0 > /selinux/enforce
[e3d8dd1]132  # Verificar permisos básicos.
133  if [ "$(stat --printf="%A%G" $IMAGEDIR 2>/dev/null)" != "drwxrwxr-x$OPENGNSYSUSER" ]; then
134     mkdir $IMAGEDIR 2>/dev/null
135     chmod 775 $IMAGEDIR
136     chgrp $OPENGNSYSUSER $IMAGEDIR
137  fi
138  if [ "$(stat --printf="%A%G" $CLIENTLOGDIR 2>/dev/null)" != "drwxrwxr-x$OPENGNSYSUSER" ]; then
139     mkdir -p $CLIENTLOGDIR 2>/dev/null
140     chmod 775 $CLIENTLOGDIR
141     chgrp $OPENGNSYSUSER $CLIENTLOGDIR
142  fi
143  # Arrancar los servicios indicados.
[1cf578b]144  if [ $RUN_OGADMSERVER = "yes" ]; then
[5454b9d]145     $ACTIONMSG "Iniciando demonio: $SERVERNAME"
[55477d2]146     $DAEMONSTART $SERVERDAEMON $EXTRAOPTS $SERVERDAEMON_OPTIONS $ENDOPTS
[5454b9d]147     [ $? = 0 ] && $SUCCESSMSG || $FAILMSG
[831830f]148     # Para SetBootmode desde el cliente
149     $ACTIONMSG "Iniciando demonio: $SERVERAUXNAME"                    #
150     faucet $SERVERAUXPORT --daemon --in bash -c "$SERVERAUXDAEMON"    #   NUEVO
151     [ $? = 0 ] && $SUCCESSMSG || $FAILMSG
[ca6183e]152  fi
[1cf578b]153  if [ $RUN_OGADMREPO = "yes" ]; then
[5454b9d]154     $ACTIONMSG "Iniciando demonio: $REPOAUXNAME"
155     faucet $REPOAUXPORT --daemon --in bash -c "$REPOAUXDAEMON"
156     [ $? = 0 ] && $SUCCESSMSG || $FAILMSG
[ca6183e]157  fi
[b351d8a]158  if [ $RUN_OGADMSERVER = "yes" ] && [ $RUN_OGADMAGENT = "yes" ]; then
159     sleep 5 # Damos tiempo a que ogAdmServer este funcionando
160  fi
[1cf578b]161  if [ $RUN_OGADMAGENT = "yes" ]; then
[5454b9d]162     $ACTIONMSG "Iniciando demonio: $AGENTNAME"
[55477d2]163     $DAEMONSTART $AGENTDAEMON $EXTRAOPTS $AGENTDAEMON_OPTIONS $ENDOPTS
[5454b9d]164     [ $? = 0 ] && $SUCCESSMSG || $FAILMSG
[aeb0e7d7]165  fi   
[1cf578b]166  if [ $RUN_BTTRACKER = "yes" ]; then
[5454b9d]167     $ACTIONMSG "Iniciando demonio: $BTTRACK"
[1cf578b]168     $TRACKERSTART $BTTRACK $EXTRAOPTS $BTTRACK_OPTIONS $ENDOPTS
[5454b9d]169     [ $? = 0 ] && $SUCCESSMSG || $FAILMSG
[ca6183e]170  fi
[1cf578b]171  if [ $RUN_BTSEEDER = "yes" ]; then
[5454b9d]172     $ACTIONMSG "Iniciando demonio: $BTSEEDER"
[1cf578b]173     $SEEDERSTART $BTSEEDER $EXTRAOPTS $BTTORRENTSDIR &>/dev/null $ENDOPTS
[5454b9d]174     [ $? = 0 ] && $SUCCESSMSG || $FAILMSG
[ca6183e]175  fi
176
177}
178
179para_demonios() {
[1cf578b]180  if [ -e $BTSEEDERPID ]; then
[5454b9d]181    $ACTIONMSG "Parando demonio: $BTSEEDER"
[1cf578b]182    $SEEDERSTOP
[5454b9d]183    [ $? = 0 ] && $SUCCESSMSG || $FAILMSG
184    rm -f $BTSEEDERPID
[ca6183e]185  fi
[1cf578b]186  if [ -e $BTTRACKPID ]; then
[5454b9d]187    $ACTIONMSG "Parando demonio: $BTTRACK"
[1cf578b]188    $TRACKERSTOP
[5454b9d]189    [ $? = 0 ] && $SUCCESSMSG || $FAILMSG
190    rm -f $BTTRACKPID
[aeb0e7d7]191  fi
[5454b9d]192  $ACTIONMSG "Parando demonio: $AGENTNAME"
[9d859d0]193  $DAEMONSTOP $AGENTNAME
[5454b9d]194  [ $? = 0 ] && $SUCCESSMSG || $FAILMSG
195  $ACTIONMSG "Parando demonio: $REPOAUXNAME"
[8fc9552]196  pkill faucet
[4b08fa5]197  [ $? -le 1 ] && $SUCCESSMSG || $FAILMSG
[5454b9d]198  $ACTIONMSG "Parando demonio: $SERVERNAME"
[9d859d0]199  $DAEMONSTOP $SERVERNAME
[5454b9d]200  [ $? = 0 ] && $SUCCESSMSG || $FAILMSG
[ca6183e]201}
202
[2777f20]203config
204
[ca6183e]205case "$1" in
206  start)
207        arranca_demonios
208        ;;
209  stop)
210        para_demonios
211        ;;
212  restart)
213        para_demonios
214        arranca_demonios
215        ;;
216
217  *)
[6ef01d9]218        echo "Uso: $0 {start|stop|restart}"
[ca6183e]219        exit 1
220        ;;
221esac
222
223exit 0
[e3d8dd1]224
Note: See TracBrowser for help on using the repository browser.