Cómo hacer que un programa siga ejecutándose después del logout

Cuando se lanza un programa desde el shell, éste normalmente queda ligado a la sesión abierta, por lo que cuando se cierra ésta el programa se finaliza automáticamente. Para que esto no suceda es necesario que el proceso se desligue del shell, bien haciéndolo explicitamente en su código, o mediante la utilización del comando nohup por ejemplo.

El siguiente ejemplo ejecuta un programa de nombre foobar en segundo plano y desligándolo del shell, redirigiendo además sus salidas estándar y de error al archivo foobar.log. Este proceso seguirá ejecutándose hasta que termine, incluso aunque finalicemos la sesión de shell bajo la que se haya lanzado.

 bash# nohup foobar > foobar.log 2>&1 &
Twitter Digg Delicious Stumbleupon Technorati Facebook Email

3 Respuestas para “Cómo hacer que un programa siga ejecutándose después del logout”

  1. Hola amigos, ¿alguien me podría explicar que sucedería si se le da shutdown a la máquina con uno de estos tipos de procesos ejecutándose?

  2. Hola Pablo, el proceso recibiría la señal de finalización y terminaría. Sería similar a si el programa se ejecutase en paralelo asociada a la sesión de shell abierta y la finalizásemos.

  3. Muchas gracias patxi!
    sucede que le dí shutdown a la estación y ahora me marca muchos errores, pensé q era por haber corrido el proceso en el modo nohup y haber dado el shutdown, al terminar de bootear ya no me sale la misma ventana de login sino otra diferente, le meto mi cuenta y password y se queda congelada. ¿Hay algun modo de corregir esto, por ej. como en el caso de windows q se arranca en modo protegido y de ahi se puede correr el chkdsk?
    saludos desde México.
    Pablo