Foro de elhacker.net

Sistemas Operativos => GNU/Linux => Mensaje iniciado por: Diabliyo en 30 Agosto 2018, 07:01 am



Título: Como recuperar proceso tras ponerlo en Background y salir de la consola SSH !???
Publicado por: Diabliyo en 30 Agosto 2018, 07:01 am
Buenas.

Pues eso :D, me logeo via SSH a un server, corro un programa que demorara como 6 horas, lo mando a background y me salgo de la sesion SSH, despues regreso y miro que sigue en ejecucion, pero como lo recupero ??

Lo que actualmente hago para ponerlo en background y salir es:

Código:
casa$ ssh admin@miserver.com

miserver$ su
Password:

miserver# pwd
/root

miserver# php /root/public_html/programa.php
... emipieza a poner cosas
... mas cosas...
(pulso Ctrl+Z)

miserver# jobs
[1] Stopper php /root/public_html/programa.php

miserver# bg 1
[1] Running php /root/public_html/programa.php

// hasta aqui ya esta corriendo sin mi intervencion, y puedo recuperarlo todavia haciendo "fg 1"
// pero me tengo que ir porque voy a comer
miserver# exit
miserver$ exit
casa$

Hasta este punto, el programa se quedo en ejecucion y me sali de la conexion SSH, despues regreso a la conexion y puedo ver el proceso:

Código:
casa$ ssh admin@miserver.com
miserver$ su
Password:

miserver# ps aux|grep php
root  32564 php /root/public_html/programa.php

// el proceso es el: 32564

Como lo recupero para ponerlo en pantalla ??, OJO todo el tiempo esto en consola SSH.

Saludos !


Título: Re: Como recuperar proceso tras ponerlo en Background y salir de la consola SSH !???
Publicado por: aguro90 en 30 Agosto 2018, 12:58 pm
Con fg más el id del proceso has probado??


Título: Re: Como recuperar proceso tras ponerlo en Background y salir de la consola SSH !???
Publicado por: Diabliyo en 30 Agosto 2018, 15:11 pm
Con fg más el id del proceso has probado??

No funciona, porque fg manda a primer plano los procesos que esten en la lista de procesos de la sesion (puede verificarse con jobs), y como sali y volvi a entrar, pues ya es distinta sesion :(

Saludos !


Título: Re: Como recuperar proceso tras ponerlo en Background y salir de la consola SSH !???
Publicado por: Slava_TZD en 30 Agosto 2018, 23:23 pm
Creo que por defecto cuando terminas la sesión de SSH todo lo que hayas invocado en ella termina, puede ser que tu programa no responda al SIGHUP de la shell y por eso se quede corriendo... Lo mas sencillo en tu caso es redirigir las salidas a un fichero, otra opción es lanzarlo dentro de screen o tmux, o usar Mosh en vez de SSH.

Suerte


Título: Re: Como recuperar proceso tras ponerlo en Background y salir de la consola SSH !???
Publicado por: aguro90 en 31 Agosto 2018, 15:40 pm
Puedes lanzarlo con nohup para que no dependa de tu sesión