2012-08-22 15 views
6

Tengo tres archivos: monitor.sh, que comienza scripts de Python:¿Cómo comenzar el proceso a través de SSH, para que siga funcionando?

sudo python ./webCheck & 
sudo python ./apiCheck & 

y los otherones, WebCheck & apiCheck: se supone que debe ejecutarse en segundo plano, después de cerrar la terminal. Comprueba la disponibilidad de mi otro sitio web, en un ciclo infinito.

No puedo hacer que funcione, estoy intentando nohup, pero no puedo obtener la sintaxis correcta. webCheck debe ejecutarse con sudo. ¿Nohup se incluirá también en el script sh? Supongo que se supone que el monitor.sh debe iniciar otros dos, para que uno no necesite nada.

¿Cómo hacerlo?

+1

No creo que haya nada particular de ec2 en esta pregunta, por lo que verificaría [Impedir que se detenga un proceso en segundo plano después de cerrar el cliente SSH] (http://stackoverflow.com/q/285015/950912) – brc

Respuesta

12

Usted debe ser capaz de usar:

sudo nohup python ./webCheck & sudo nohup python ./apiCheck &

No creo que su monitor.sh será necesario, ya que debe tome un tiempo relativamente corto para comenzar los otros dos. Sin embargo, no estoy seguro si los dos controles se convertirán en hijos de monitor.sh, lo que puede terminar siendo un problema.

+0

Funciona, puedo matar a la terminal y todavía se ejecuta. No apareció después de usar sudo ps, pero cuando hago sudo ps aux | menos, aparece! – Kokesh

+0

¡Me alegro de que funcionó! También puede consultar la recomendación de nneonneo. Daemonizar el programa podría ser una mejor solución, dependiendo de lo que esté tratando de hacer. – gsteiner

Cuestiones relacionadas