Nexolinux
Sistemas Linux, servidores web, certificaciones, LPIC, Linux básico y profesional
Navigation
  • Home
  • Bash
  • LPIC
  • Noticias
  • Seguridad
  • Servicios
  • HowTo’s
You are here: Home › Bash & Comandos › Bash Scripting, nohup y procesos en segundo plano

Bash Scripting, nohup y procesos en segundo plano

15 abril, 2013 | Filed under: Bash & Comandos, Linux General, LPIC and tagged with: background, comandos linux, linux basico, nohup, procesos segundo plano

Estos dos comandos vienen bastante ligados uno con el otro, si bien no hace falta usarlos a la vez se complementan mutuamente.

Comando nohup

En primer lugar tenemos nohup, es extremadamente útil en casos en los que como es habitual nos conectamos por conexión ssh a un host, si vamos a ejecutar un script que tarde un tiempo bastante respetable, o por el contrario no podemos correr el riesgo de que nos falle la red por diversos motivos y al finalizarse la conexión ssh, finalice los procesos que teníamos ligados a ella mandando la señal HUP de ahí el su nombre. El uso sería tan sencillo como esto:

m3t4g4m3@nexolinux ~ $  nohup sh script.sh

Además de esto, nos proporciona un fichero de log de la ejecución, el nohup.out en la ruta donde lo ejecutemos, y como somos conscientes de lo valiosa que puede ser información así sobre todo en tareas que requieran horas para saber el porqué puede haber fallado o ver si se puede mejorar.

Procesos en segundo plano.

En casos como el anterior que nos dejaría la shell de esta forma:

m3t4g4m3@nexolinux ~ $ nohup sh script.sh

nohup: ignoring input and appending output to `nohup.out'  



Para evitar perder la consola en la que estamos logueados y tener que abrir otra, pasaremos el proceso a segundo plano, con lo que nos la dejará libre para poder seguir haciendo tareas.

Este es un ejemplo completito del uso de procesos en segundo plano:

m3t4g4m3@nexolinux ~ $ nohup script.sh &
[1] 2831
m3t4g4m3@nexolinux ~ $
m3t4g4m3@nexolinux ~ $ bg
[1]+ nohup sh script.sh &


m3t4g4m3@nexolinux ~ $ fg

 

1- Con el «&» al final de un comando lo ejecutará en segundo plano, vemos que abajo tengo la consola libre para seguir escribiendo y no he visto nada de lo que ha hecho.

2- Con el «bg» puedo ver los procesos en background, o en segundo plano

3- Con el «fg» me lo traigo a la consola que uso actualmente si por ejemplo quiero ver el stdout del comando que está ejecutando.

Comparte esto:

  • Facebook
  • Twitter
  • LinkedIn

Me gusta esto:

Me gusta Cargando...

6 Responses to "Bash Scripting, nohup y procesos en segundo plano"

  1. Leon dice:
    14 octubre, 2015 a las 16:53

    Hola, si quiero eecutar un Jar quedaria asi » nohup java -jar Mesnaje5.jar»

    Responder
  2. Alejandro Cabrera dice:
    2 agosto, 2014 a las 18:13

    oye hay alguna diferencia en entre ejecutar lo siguiente:

    – $ nohup sh proceso.sh
    – $ nohup proceso.sh

    me refiero al «sh» que se antepone al nombre del proceso, ejecute un proceso sin con el nohup sin el «sh» pero no se si tiene alguna difencia ya que no me responde ;s.

    Responder
    1. m3t4g4m3 dice:
      3 agosto, 2014 a las 21:09

      Nohup ejecuta un comando, en este caso el sh que lanza el script bash proceso.sh, si no pones sh no ejecuta el proceso pues nohup necesita de este para cogerlo como lo que ejecutará.

      De todas formas si lo haces puedes hacer un ps -aux | grep proceso.sh y ver si esta activo por ejemplo. No lo he comprobado pero diria que es así por experiencia.

      Saludos Alejandro!

      Responder
  3. Carlos García dice:
    31 julio, 2014 a las 16:34

    Que tal muy bueno el aporte, pero tengo una duda al cerrar la terminal el proceso se sigue ejecutando

    Responder
    1. m3t4g4m3 dice:
      31 julio, 2014 a las 21:33

      Buenas Carlos.

      Efectivamente, el uso de nohup se usa especialmente en servidores donde nos conectamos de forma puntual y puede finalizarse nuestra sesión por diversos motivos como un time out por seguridad, digamos que el proceso pasaría a ser propietario del sistema hasta que finalice aunque sea ejecutado en origen por el user1 por ejemplo.

      Responder
  4. Dalir dice:
    26 junio, 2014 a las 02:01

    Excelente mi amigo, muy buen aporte 🙂 me sirvió mucho, gracias

    Responder

Deja un comentarioCancelar respuesta

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

Categorías.

  • Bases de datos
  • Bash & Comandos
  • HowTo
  • Linux General
  • LPIC
  • LPIC-2
  • Nivel Avanzado
  • Nivel Basico
  • Noticias
  • Seguridad
  • Servicios
  • Servidor Web

Entradas y Páginas Populares

  • Proxy Squid, control de accesos ACL (II)
    Proxy Squid, control de accesos ACL (II)
  • Ejemplos usos mount y umount
    Ejemplos usos mount y umount
  • Ficheros de usuarios /etc/passwd y /etc/shadow
    Ficheros de usuarios /etc/passwd y /etc/shadow
  • Instruccion READ en Bash
    Instruccion READ en Bash
  • HowTo: Evitar que SSH se desconecte
    HowTo: Evitar que SSH se desconecte
  • Proxy Squid, Configuración (I)
    Proxy Squid, Configuración (I)
  • ¿Cómo cifra linux las contraseñas?
    ¿Cómo cifra linux las contraseñas?
  • 15 dispositivos que funcionan con Linux
    15 dispositivos que funcionan con Linux
  • Comando fuser, Localizamos procesos que usan un fichero.
    Comando fuser, Localizamos procesos que usan un fichero.
  • Comandos más usados para gestionar Iptables
    Comandos más usados para gestionar Iptables

© 2024 Nexolinux

Utilizamos cookies propias y de terceros para mejorar nuestros servicios y mostrar publicidad relacionada con tus preferencias. cerrar Política de cookies
Privacidad y política de cookies

Privacy Overview

This website uses cookies to improve your experience while you navigate through the website. Out of these, the cookies that are categorized as necessary are stored on your browser as they are essential for the working of basic functionalities of the website. We also use third-party cookies that help us analyze and understand how you use this website. These cookies will be stored in your browser only with your consent. You also have the option to opt-out of these cookies. But opting out of some of these cookies may affect your browsing experience.
Necessary
Siempre activado
Necessary cookies are absolutely essential for the website to function properly. This category only includes cookies that ensures basic functionalities and security features of the website. These cookies do not store any personal information.
Non-necessary
Any cookies that may not be particularly necessary for the website to function and is used specifically to collect user personal data via analytics, ads, other embedded contents are termed as non-necessary cookies. It is mandatory to procure user consent prior to running these cookies on your website.
GUARDAR Y ACEPTAR
%d