source: admin/Sources/Services/opengnsys.init @ 6d356fe

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-instalacionwebconsole3
Last change on this file since 6d356fe was ea60f41, checked in by ramon <ramongomez@…>, 13 years ago

Versión 1.0.4, #414: Modificar configuración de PHP y SELinux para consola web en CentOS.

git-svn-id: https://opengnsys.es/svn/branches/version1.0@2903 a21b9725-9963-47de-94b9-378ad31fedc9

  • Property mode set to 100755
File size: 6.2 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
9# Short-Description: Servicios del sistema OpenGnSys
10# Description:       Servicios del sistema OpenGnSys:
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#
22# Servidor de OpenGnSys
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#
33REPONAME=ogAdmRepo
34REPODAEMON=$BASEDIR/sbin/$REPONAME
35REPOCFG=$BASEDIR/etc/$REPONAME.cfg
36REPOLOG=$BASEDIR/log/$REPONAME.log
37REPODAEMON_OPTIONS="-f $REPOCFG -l $REPOLOG"
[8fc9552]38############## ADV
39REPOAUXNAME=ogAdmRepoAux
40REPOAUXDAEMON=$BASEDIR/sbin/$REPOAUXNAME
[e3d8dd1]41REPOAUXPORT=$(awk -F= '/PUERTO/ {print $2+1}' $SERVERCFG 2>/dev/null)
[8fc9552]42############## ADV
[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
[ca6183e]64BTALLOW_GET=1
65BTTRACK_OPTIONS=" --port $BTTRACKPORT --dfile $BTTRACKDFILE --reannounce_interval $BTINTERVAL --logfile $BTTRACKLOG --allowed_dir $BTTORRENTSDIR --allow_get $BTALLOW_GET --parse_allowed_interval 1"
66BTTRACKPID="/var/run/bttrack.pid"
67BTSEEDERPID="/var/run/btseeder.pid"
68
69
70export PATH="${PATH:+$PATH:}/usr/sbin:/sbin:/usr/bin"
71
72# Read config file if it is present.
73if [ -r /etc/default/opengnsys ]
74then
[4b08fa5]75    source /etc/default/opengnsys
[ca6183e]76fi
77
[2777f20]78# Configuración de arranque según la distribución Linux usada.
79config() {
80    OSDISTRIB=$(lsb_release -is 2>/dev/null)
81    case "$OSDISTRIB" in
[0fe2488]82        Ubuntu|Debian|LinuxMint)
[5454b9d]83            INITFUNCTIONS=/lib/lsb/init-functions
[e64207e]84            DAEMONSTART="start-stop-daemon --start --quiet --background --exec"
85            EXTRAOPTS="--"
[2934e9e]86            DAEMONSTOP="start-stop-daemon --stop --quiet --oknodo --exec"
[5454b9d]87            ACTIONMSG="log_daemon_msg"
88            SUCCESSMSG="log_end_msg 0"
89            FAILMSG="log_end_msg 1"
[2777f20]90            ;;
[55477d2]91        CentOS|Fedora)
[5454b9d]92            INITFUNCTIONS=/etc/init.d/functions
[2777f20]93            DAEMONSTART="daemon"
[55477d2]94            ENDOPTS="&"
[2777f20]95            DAEMONSTOP="killproc"
[5454b9d]96            ACTIONMSG="echo -n"
[55477d2]97            SUCCESSMSG="eval ( success; echo )"
98            FAILMSG="eval ( failure; echo )"
[2777f20]99            ;;
[6ef01d9]100        *)  echo "Distribución Linux desconcocida o no soportada."
[2777f20]101            exit ;;
102    esac
[d4e90c1]103    if [ -r $INITFUNCTIONS ]; then
[5454b9d]104        source $INITFUNCTIONS
105    fi
[2777f20]106}
107
[ca6183e]108arranca_demonios() {
[e3d8dd1]109  # Comprobar que está instalado OpenGnSys.
110  if [ ! -d $BASEDIR ]; then
111     $ACTIONMSG "ERROR: No existe el directorio $BASEDIR"
112     $FAILMSG
113     exit $?
114  fi
[ea60f41]115  # Deshabilitar modo reforzado de SELinux.
116  [ -f /selinux/enforce ] && echo 0 > /selinux/enforce
[e3d8dd1]117  # Verificar permisos básicos.
118  if [ "$(stat --printf="%A%G" $IMAGEDIR 2>/dev/null)" != "drwxrwxr-x$OPENGNSYSUSER" ]; then
119     mkdir $IMAGEDIR 2>/dev/null
120     chmod 775 $IMAGEDIR
121     chgrp $OPENGNSYSUSER $IMAGEDIR
122  fi
123  if [ "$(stat --printf="%A%G" $CLIENTLOGDIR 2>/dev/null)" != "drwxrwxr-x$OPENGNSYSUSER" ]; then
124     mkdir -p $CLIENTLOGDIR 2>/dev/null
125     chmod 775 $CLIENTLOGDIR
126     chgrp $OPENGNSYSUSER $CLIENTLOGDIR
127  fi
128  # Arrancar los servicios indicados.
[ca6183e]129  if [ $RUN_OGADMSERVER = "yes" ]
130  then
[5454b9d]131     $ACTIONMSG "Iniciando demonio: $SERVERNAME"
[55477d2]132     $DAEMONSTART $SERVERDAEMON $EXTRAOPTS $SERVERDAEMON_OPTIONS $ENDOPTS
[5454b9d]133     [ $? = 0 ] && $SUCCESSMSG || $FAILMSG
[ca6183e]134  fi
135  if [ $RUN_OGADMSERVER = "yes" ] && [ $RUN_OGADMREPO = "yes" ]
136  then
137     sleep 5 # Damos tiempo a que ogAdmServer este funcionando
138  fi
139  if [ $RUN_OGADMREPO = "yes" ]
140  then
[5454b9d]141     $ACTIONMSG "Iniciando demonio: $REPONAME"
[55477d2]142     $DAEMONSTART $REPODAEMON $EXTRAOPTS $REPODAEMON_OPTIONS $ENDOPTS
[5454b9d]143     [ $? = 0 ] && $SUCCESSMSG || $FAILMSG
[8fc9552]144     ############ ADV   
[5454b9d]145     $ACTIONMSG "Iniciando demonio: $REPOAUXNAME"
146     faucet $REPOAUXPORT --daemon --in bash -c "$REPOAUXDAEMON"
147     [ $? = 0 ] && $SUCCESSMSG || $FAILMSG
[2777f20]148     ############ ADV
[ca6183e]149  fi
[aeb0e7d7]150  if [ $RUN_OGADMAGENT = "yes" ]
151  then
[5454b9d]152     $ACTIONMSG "Iniciando demonio: $AGENTNAME"
[55477d2]153     $DAEMONSTART $AGENTDAEMON $EXTRAOPTS $AGENTDAEMON_OPTIONS $ENDOPTS
[5454b9d]154     [ $? = 0 ] && $SUCCESSMSG || $FAILMSG
[aeb0e7d7]155  fi   
[ca6183e]156  if [ $RUN_BTTRACKER = "yes" ]
157  then
[5454b9d]158     $ACTIONMSG "Iniciando demonio: $BTTRACK"
[ca6183e]159     start-stop-daemon --make-pidfile --pidfile $BTTRACKPID --start --quiet --background --exec $BTTRACK -- $BTTRACK_OPTIONS
[5454b9d]160     [ $? = 0 ] && $SUCCESSMSG || $FAILMSG
[ca6183e]161  fi
162  if [ $RUN_BTSEEDER = "yes" ]
163  then
[5454b9d]164     $ACTIONMSG "Iniciando demonio: $BTSEEDER"
[ca6183e]165     start-stop-daemon --make-pidfile --pidfile $BTSEEDERPID --start --quiet  --background --exec $BTSEEDER -- $BTTORRENTSDIR
[5454b9d]166     [ $? = 0 ] && $SUCCESSMSG || $FAILMSG
[ca6183e]167  fi
168
169}
170
171para_demonios() {
172  if [ -e $BTSEEDERPID ]
173  then
[5454b9d]174    $ACTIONMSG "Parando demonio: $BTSEEDER"
[ca6183e]175    start-stop-daemon --stop --quiet --oknodo --retry 30 --pidfile $BTSEEDERPID
[5454b9d]176    [ $? = 0 ] && $SUCCESSMSG || $FAILMSG
177    rm -f $BTSEEDERPID
[ca6183e]178  fi
179  if [ -e $BTTRACKPID ]
180  then
[5454b9d]181    $ACTIONMSG "Parando demonio: $BTTRACK"
[ca6183e]182    start-stop-daemon --stop --quiet --oknodo --pidfile $BTTRACKPID
[5454b9d]183    [ $? = 0 ] && $SUCCESSMSG || $FAILMSG
184    rm -f $BTTRACKPID
[aeb0e7d7]185  fi
[5454b9d]186  $ACTIONMSG "Parando demonio: $AGENTNAME"
[2777f20]187  $DAEMONSTOP $AGENTDAEMON
[5454b9d]188  [ $? = 0 ] && $SUCCESSMSG || $FAILMSG
189  $ACTIONMSG "Parando demonio: $REPONAME"
[2777f20]190  $DAEMONSTOP $REPODAEMON
[5454b9d]191  [ $? = 0 ] && $SUCCESSMSG || $FAILMSG
[8fc9552]192  ############# ADV
[5454b9d]193  $ACTIONMSG "Parando demonio: $REPOAUXNAME"
[8fc9552]194  pkill faucet
[4b08fa5]195  [ $? -le 1 ] && $SUCCESSMSG || $FAILMSG
[8fc9552]196  ############ ADV 
[5454b9d]197  $ACTIONMSG "Parando demonio: $SERVERNAME"
[2777f20]198  $DAEMONSTOP $SERVERDAEMON
[5454b9d]199  [ $? = 0 ] && $SUCCESSMSG || $FAILMSG
[ca6183e]200}
201
[2777f20]202config
203
[ca6183e]204case "$1" in
205  start)
206        arranca_demonios
207        ;;
208  stop)
209        para_demonios
210        ;;
211  restart)
212        para_demonios
213        arranca_demonios
214        ;;
215
216  *)
[6ef01d9]217        echo "Uso: $0 {start|stop|restart}"
[ca6183e]218        exit 1
219        ;;
220esac
221
222exit 0
[e3d8dd1]223
Note: See TracBrowser for help on using the repository browser.