Suponiendo que tiene un programa ejecutándose en primer plano, presione ctrl-Z , entonces:
[1]+ Stopped myprogram
$ disown -h %1
$ bg 1
[1]+ myprogram &
$ logout
Si solo hay un trabajo, entonces no necesita especificar el número de trabajo. Solo usa disown -h
y bg
.
Explicación de los pasos anteriores:
Presionas ctrl-Z. El sistema suspende el programa en ejecución, muestra un número de trabajo y un mensaje "Detenido" y lo devuelve a un mensaje de bash.
Escribes el disown -h %1
comando (aquí, he usado un 1
, pero usaría el número de trabajo que se mostró en el Stopped
mensaje) que marca el trabajo para que ignore el SIGHUP
señal (no se detendrá al cerrar la sesión).
A continuación, escriba el bg
comando usando el mismo número de trabajo; esto reanuda la ejecución del programa en segundo plano y se muestra un mensaje que lo confirma.
Ahora puede cerrar la sesión y seguirá ejecutándose.
Deberías intentar usar nohup
y ejecutándolo en segundo plano:
nohup sleep 3600 &
Probaría con la pantalla del programa.