Hola
Como hago para que
java -jar $toba_dir/php/3ros/JavaBridge/WEB-INF/lib/JavaBridge.jar SERVLET:8081
se ejecute al arranque de un debian 6?
Gracias
Emilio
Hola
Como hago para que
java -jar $toba_dir/php/3ros/JavaBridge/WEB-INF/lib/JavaBridge.jar SERVLET:8081
se ejecute al arranque de un debian 6?
Gracias
Emilio
A ver si te sirve:
Simpre es bueno definir el start y el stop
/etc/init.d/<nombre_demonio> start (para iniciar el demonio)
/etc/init.d/<nombre_demonio> stop (para detenerlo)
#!/bin/sh
case “$1” in
start)
# código para iniciar el demonio/programa
;;
stop)
# código para parar el demonio/programa
;;
restart)
# código para reiniciar el demonio/programa
;;
esac
chmod 755 /etc/init.d/myScript
update-rc.d myscript defaults
Saludos, Emilio
Reproduci tu requerimiento en mi servidor, te dejo el paso a paso:
crear el archivo en /etc/init.d/servidorJasper.sh
Poner la siguente linea dentro del archivo:
nohup sudo java -jar /usr/local/proyectos/guarani/3.8.0/lib/toba/php/3ros/JavaBridge/WEB-INF/lib/JavaBridge.jar SERVLET:8081 &
(nohup para que corre en background y no dependa de la consola)
Cambiarle los permisos: sudo chmod 755 servidorJasper.sh
editar el archivo /etc/rc.local
Antes del exit poner la siguiente linea:
sh /etc/init.d/servidorJasper.sh
Para probar si esta corriendo el servicio ejecutar: ps -ax | grep SERVLET
Tendrias qeu ver algo asi:
1177 ? S 0:00 sudo java -jar /usr/local/proyectos/guarani/3.8.0/lib/toba/php/3ros/JavaBridge/WEB-INF/lib/JavaBridge.jar SERVLET:8081
1181 ? Sl 0:04 java -jar /usr/local/proyectos/guarani/3.8.0/lib/toba/php/3ros/JavaBridge/WEB-INF/lib/JavaBridge.jar SERVLET:8081
Podes ver si el pueto esta a la escucha: netstat -pltn
Y tendrias que ver algo asi:
tcp6 0 0 :::8081 :::* LISTEN
Saludos
Hola
Muchas gracias por las opciones.
Esta segunda la entiendo.
Ni idea de como pararlo al servicio, segun me dijistes en la primera. Vi como estaba trabajando el BIServer que tenía una bat para arrancar y otra para parar pero no pude hacerlo que pare.
Si se te ocurre como para tener algo para resetear el ésto sin tener que resetear la maquina, sería bueno.
Emilio
Te paso lo que me pedis, pero tenes que usar la primera opcion que te pase (Borrar lo otro):
(Lo hice en mi server y funciono…)
#! /bin/sh
case “$1” in
start)
echo "Iniciando servicio… "
nohup sudo java -jar /usr/local/proyectos/guarani/3.8.0/lib/toba/php/3ros/JavaBridge/WEB-INF/lib/JavaBridge.jar SERVLET:8081 &
;;
stop)
echo “Deteniendo servicio…”
for i in ps -ef | grep SERVLET | awk '{print $2}'
; do sudo kill -9 $i; done
;;
*)
echo “Modo de empleo: /etc/init.d/jasperServicio {start|stop}”
exit 1
;;
esac
exit 0
Darle permisos de ejecucion chmod 755 jasperServicio.sh
agregar links simbolicos para que sean ejecutados cuendo el sistema inicie o cuando se apague:
update-rc.d jasperServicio.sh defaults
La linea: ps -ef | grep SERVLET | awk ‘{print $2}’ lo que hace es buscar la palabra clave SERVLET y de la salida de del ps toma la segunda columna del comando ps (proba con $1 y veras al usuario, por ejemplo)… Ojo que si tenes otra cosa con SERVLET tambien lo mata, puede ser que necesites ser mas explicito en el grep
Podes probar el funcionamiento con lo que te pase anteriormente:
Para probar si esta corriendo el servicio ejecutar: ps -ax | grep SERVLET
Tendrias qeu ver algo asi:
1177 ? S 0:00 sudo java -jar /usr/local/proyectos/guarani/3.8.0/lib/toba/php/3ros/JavaBridge/WEB-INF/lib/JavaBridge.jar SERVLET:8081
1181 ? Sl 0:04 java -jar /usr/local/proyectos/guarani/3.8.0/lib/toba/php/3ros/JavaBridge/WEB-INF/lib/JavaBridge.jar SERVLET:8081
Podes ver si el pueto esta a la escucha: netstat -pltn
Y tendrias que ver algo asi:
tcp6 0 0 :::8081 :::* LISTEN
Seria buena que agregen esto como parte de la documentacion de Guarani3, ya que es un proceso que debe quedar corriendo en todo momento.
Saludos
Concuerdo. Estoy con la versión 3.11 y tampoco esta documentado esto en el tutorial. Debería estar en el punto 11
documentacion.siu.edu.ar/wiki/SIU-Guarani/Version3.11.0/instalacion_actualizacion_gestion
En mi caso estoy usando Debian 8 y entiendo que los servicios se crean de otra forma porque usa Systemd. Por lo pronto añadí la siguiente línea en /etc/rc.local
/usr/bin/java -jar /usr/local/proyectos/guarani/lib/toba/php/3ros/JavaBridge/WEB-INF/lib/JavaBridge.jar SERVLET:8081
Hola
Cree un archivo severjasper.sh con la sentencia que mencionas y puse
cp /root/serverjasper.sh /etc/init.d/serverjasper.sh
chmod 700 /etc/init.d/serverjasper.sh
cd /etc/init.d
insserv serverjasper.sh
arranca como servicio al arranque del sistema.
Emilio
Buenas tardes, vamos a tener en cuenta los comentarios para ver si lo agregamos en la documentación del proyecto.
Saludos y Gracias