Foros del Web » Administración de Sistemas » Unix / Linux »

Screen en crontab

Estas en el tema de Screen en crontab en el foro de Unix / Linux en Foros del Web. Hola nuevamente. Tengo un servidor de juego en un Ubuntu server 14.10 y me gustaria que si el servidor se callera o algo similar que ...
  #1 (permalink)  
Antiguo 15/06/2015, 10:19
 
Fecha de Ingreso: diciembre-2012
Ubicación: Murcia
Mensajes: 329
Antigüedad: 11 años, 11 meses
Puntos: 4
Screen en crontab

Hola nuevamente.

Tengo un servidor de juego en un Ubuntu server 14.10

y me gustaria que si el servidor se callera o algo similar que se vuelva a inicializar

tengo puesto esto en el crontab

start.sh con permisos de ejecucion.

Código BASH:
Ver original
  1. 1 * * * * /root/start.sh

Start.sh

Código BASH:
Ver original
  1. #!/bin/sh
  2.  
  3. SERVICE='node'
  4.  
  5. if ps ax | grep -v grep | grep $SERVICE > /dev/null
  6.  
  7. then
  8.  
  9. #el servicio esta activado
  10.  
  11. else
  12.  
  13. #El servicio esta detenido procederemos a encederlo.
  14.  
  15. cd ~
  16. screen  -S 5366.prueba node index.js
  17.  
  18. fi

Esta screen 5366.prueba ya esta abierta y es donde esta la ruta para poder iniciar.

pero nada
  #2 (permalink)  
Antiguo 15/06/2015, 12:22
AlvaroG
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Screen en crontab

No estoy seguro de por qué pensás que necesitás correr un programa no interactivo en screen.
Sería exactamente lo mismo que corrieras "node index.js" en tu cron, o en tu script, sin screen.

En cualquier caso: screen necesita una TTY (a grosso modo: una terminal activa) para funcionar, no puede funcionar desde cron porque cron no corre en una TTY.


Saludos.
  #3 (permalink)  
Antiguo 15/06/2015, 14:46
Avatar de lauser
Moderator Unix/Linux
 
Fecha de Ingreso: julio-2013
Ubicación: Odessa (Ukrania)
Mensajes: 3.278
Antigüedad: 11 años, 4 meses
Puntos: 401
Respuesta: Screen en crontab

Realmente que es lo que quieres?
Que si tu servicio cae se reinicie automáticamente?
Explica un poco mejor,,, yo tampoco te entiendo (como te comento AlvaroG).

Lo que si te comento es que con esa tarea provocas un consumo innecesario en tu server. Danos más datos de el mismo...(seguro que hay otra solución).
__________________
Los usuarios que te responden, lo hacen altruistamente y sin ánimo de lucro con el único fin de ayudarte. Se paciente y agradecido.
-SOLOLINUX-
  #4 (permalink)  
Antiguo 15/06/2015, 14:59
 
Fecha de Ingreso: diciembre-2012
Ubicación: Murcia
Mensajes: 329
Antigüedad: 11 años, 11 meses
Puntos: 4
Respuesta: Screen en crontab

Hola nuevamente...

Pues si lo que quiero hacer es que si el servicio cae que se vuelva a iniciar automáticamente.

por cierto estáis seguro que node funciona sin screen?

osea que pueda iniciar "node index.js"
  #5 (permalink)  
Antiguo 16/06/2015, 12:13
AlvaroG
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Screen en crontab

Si, poner "node index.js" en una línea de cron funciona sin inconvenientes.

Para verificar que un proceso se vuelva a iniciar si se cae, hay varias opciones:
- lo que has hecho, es decir, un script monitor (a decir verdad, la alternativa más frágil)
- usar las herramientas de init o systemd, dependiendo de lo que uses: agregando tu proceso en el lugar correcto en /etc/inittab, podés hacer que init lo monitoree y lo reinicie si se cae.
- Usar un programa dedicado a esta tarea, como supervisor o daemontools

Etiquetas: crontab, screen, servidor, ubuntu
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 07:54.