Ejecutar programa de Linux Ubuntu en segundo plano

En este corto post sobre servidores de Linux (Ubuntu específicamente) te enseñaré a ejecutar un programa en segundo plano sin bloquear la terminal.

Como sabes, al ejecutar un programa desde la consola, la misma se bloquea y no recibe más órdenes, por lo que si nos desconectamos o queremos ejecutar otro comando debemos detener al primero.

Al usar un servidor y conectarse usando SSH esto se vuelve un problema más grave, pues si nos desconectamos tenemos que detener el programa.

Por esto es que hoy te enseñaré a ejecutar un programa por SSH (de hecho también sirve de manera física) en segundo plano o en el background.

Ejecutando programa en segundo plano

En mi caso tengo algunos programas corriendo en un servidor con Ubuntu, y debo ejecutarlos sin que bloqueen la terminal. Para hacerlo uso la siguiente sintaxis:

programa >> ubicación_log 2>&1 &

Por ejemplo, si tienes un programa llamado sistema_escolar y quieres que los mensajes y errores queden en ~/control_escolar.log entonces debes ejecutar lo siguiente:

./sistema_escolar >> ~/control_escolar.log 2>&1 &

Recuerda que ~ hace referencia a /home/tu_usuario.

Detener programa

Al ejecutar el comando en segundo plano nos aparecerá el PID o Id de proceso del programa que acabamos de ejecutar, mismo que podemos detener más adelante con kill PID.

Si no guardas el PID no hay problema, lo puedes encontrar con ps y grep más adelante.

Siguiendo el ejemplo, si quisieras buscar el id de proceso del programa llamado sistema_escolar debes ejecutar:

ps aux | grep sistema_escolar

Eso te daría normalmente dos líneas de salida, una del propio comando que acabas de ejecutar y otra del programa que ejecutaste anteriormente.

Una vez que tengas el id del proceso puedes detenerlo con:

kill PID

Así podemos ejecutar programas y comandos en segundo plano desde la terminal en Linux Ubuntu usando SSH o la consola.

Supongo que también funciona en otros sistemas basados en Linux, pero no lo he podido probar. Para terminar te dejo con más tutoriales de Linux.

Encantado de ayudarte


Estoy disponible para trabajar en tu proyecto, modificar el programa del post o realizar tu tarea pendiente, no dudes en ponerte en contacto conmigo.

No te pierdas ninguno de mis posts

Suscríbete a mi canal de Telegram para recibir una notificación cuando escriba un nuevo tutorial de programación.

Dejar un comentario