Crear un servicio en linux

En este tutorial vamos a aprender a realizar un sencillo servicio o dominio en linux.

Crear un servicio en linux

Hola a todos, en este tutorial vamos a aprender a realizar un sencillo servicio o dominio en linux. Para entrar en contexto, vamos a suponer que tenemos un archivo PHP que se tiene que estar ejecutando desde el servidor en un bucle infinito captando datos cada cierto tiempo. Las opciones que le vamos a dar al servicio son:

service nombre_servicio start service nombre_servicio restart service nombre_servicio stop

Así pues para crear este servicio tenemos que añadir el siguiente archivo a nuestro servidor.

nano /etc/init.d/nombre_servicio

Y escribimos lo siguiente:

#! /bin/sh NAME=nombre_servicio DESC="Demonio del nombre_servicio" PIDFILE="/var/run/${NAME}.pid" LOGFILE="/var/log/${NAME}.log" #indicamos que vamos a ejecutar un archivo PHP DAEMON="/usr/bin/php" #Ruta del archivo DAEMON_OPTS="/var/www/myproject/myscript.php" START_OPTS="--start --background --make-pidfile --pidfile ${PIDFILE} --exec ${DAEMON} ${DAEMON_OPTS}" STOP_OPTS="--stop --pidfile ${PIDFILE}" test -x $DAEMON || exit 0 set -e case "$1" in start) echo -n "Starting ${DESC}: " start-stop-daemon $START_OPTS >> $LOGFILE echo "$NAME." ;; stop) echo -n "Stopping $DESC: " start-stop-daemon $STOP_OPTS echo "$NAME." rm -f $PIDFILE ;; restart|force-reload) echo -n "Restarting $DESC: " start-stop-daemon $STOP_OPTS sleep 1 start-stop-daemon $START_OPTS >> $LOGFILE echo "$NAME." ;; *) N=/etc/init.d/$NAME echo "Usage: $N {start|stop|restart|force-reload}" >&2 exit 1 ;; esac exit 0

Por último sólo tenemos que darle permiso al archivo recien creado.

chmod +x /etc/init.d/nombre_servicio

Y esto es todo, si queremos activar el demonio tan sólo tenemos que escribir la siguiente línea:

service nombre_servicio start

Espero que os haya gustado, nos vemos en el próximo tutorial. @alex_esquiva