#15 Sí así es. Hay que darlo de alta con chkconfig. Lo triste es que antes ya habia pasado por esa pagina y habia probado el comando. Pero siempre me tiraba un error. Y es porque hay que añadir dos lineas cruciales para poder añadirlo. Voy a explicarlo mejor por si alguien mas le hace falta algun dia, ahora que lo he dejao perfect.
CREAR AUTOARRANQUE DE SCRIPT EN CENTOS
1º Copia tu shell script que ejecuta tu server php|java|phyton en /etc/init.d/tuscript
2º Edita tu script (# vi tuscript) y añadele dos lineas arriba, pero debajo de #!/bin/bash:
#!/bin/bash
#chkconfig: - 85 16
#description: Conkis server autorun
chkconfig: especifica los niveles de prioridad en la ejecucion.
3º Hay que añadirlo al listado de servicios
chkconfig --add /etc/init.d/tuscript
4º Por ultimo, hay que activarlo
chkconfig tuscript on
A mí me fallaba en el paso tres al no tener las lineas de dos.
Y ya como curiosidad que tambien he averiguado como se hace:
CONVERTIR UN SCRIPT EN COMANDO DE CONSOLA
1º Copia el script a /usr/bin/tuscript
2º Dale permisos de ejecucion:
chmod +x /usr/bin/tuscript
Ahora podras ejecutar tuscript como un comando en cualquier ruta.
Esto tiene un inconveniente. Y es que para hacer el autoarranque y el comando, tenemos que tener dos scripts. Uno en /usr/bin/tuscript y el otro /etc/init.d/tuscript
La solucion es borrar el de /etc/init.d y crear un enlace simbolico (Acceso directo para los winderos como yo xD)
ln /usr/bin/tuscript /etc/int.d/tuscript
A la inversa no funciona, si dejas el script en /etc/init.d/ y haces el enlace a /usr/bin/, no podras usarlo como comando. Con lo cual el enlace debe estar obligatoriamente en /etc/init.d/
Y aqui el script que he hecho sacando un poco de cada sitio:
#!/bin/bash
#chkconfig: - 85 16
#description: Conkis server autorun
SERVER_PATH="/ruta/del/archivo/php/que/es/tu/servidor.php"
OUTPUT_PATH="/ruta/del/log/archivo.log"
start() {
pid=`php $SERVER_PATH >> $OUTPUT_PATH & echo $!`
echo "Starting serverconkis: #$pid"
}
stop() {
get_proc=`ps -e -o pid,command | grep $SERVER_PATH`
echo $get_proc > get_it
pid=`gawk -F" " '{ print $1 }' get_it`
ptype=`gawk -F" " '{ print $2 }' get_it`
if [ $ptype = "php" ]
then
echo "Stoping serverconkis: #$pid"
kill -9 $pid
else
echo "The server is not running"
fi
}
### main logic ###
case "$1" in
start)
start
;;
stop)
stop
;;
restart|reload|condrestart)
stop
start
;;
*)
echo $"Usage: $0 {start|stop|restart|reload}"
start
exit 1
esac
exit 0
Gracias de nuevo a todos