¿Qué es Nohup y cómo se usa?

Hay muchos comandos disponibles en los sistemas Linux. Hay algunos que usted usará varias veces al día, y hay otros que generalmente se reservan para casos de uso especial. Nohup es una de esas órdenes. No lo usarás todos los días, pero estarás agradecido de que esté a tu alrededor cuando lo necesites.

¿Qué es Nohup?

¿Qué es Nohup y cómo se usa?


Nohup es la abreviatura de «No Hangups». No es una orden que se ejecuta por sí misma. Nohup es un comando suplementario que le dice al sistema Linux que no detenga otro comando una vez que se haya iniciado. Esto significa que seguirá funcionando hasta que lo haga, incluso si el usuario que lo inició cierra la sesión. La sintaxis de nohup es simple y se parece a ésta:

nohup sh your-script.sh &

Fíjate en el «&» al final de la orden. Esto mueve el comando al segundo plano, liberando el terminal en el que está trabajando.

Nohup funciona con casi cualquier comando que se ejecute en la terminal. Se puede ejecutar con scripts personalizados, así como con comandos estándar del sistema y utilidades de línea de comandos.

Nohup.out

Debido a que nohup puede seguir funcionando independientemente del usuario que lo inició, el comando necesita un lugar para producir cualquier mensaje o error. Como no hay un terminal para asociar con él, nohup registra todo en un archivo de salida, nohup.out.

Por defecto, ese archivo se encuentra en cualquier directorio en el que haya iniciado el comando. Nohup.out es algo único porque contiene tanto la salida estándar como la salida de error juntas. Nohup redirecciona ambos al mismo archivo por defecto.

¿Qué es Nohup y cómo se usa?


Sin embargo, no es necesario que uses nohup.out. Es sólo el valor predeterminado. Puede especificar una salida personalizada cuando ejecute nohup y colocarla en una ubicación personalizada.

nohup sh your-script.sh> /path/to/custom.out &

La salida personalizada contiene exactamente los mismos datos que el archivo nohup.out estándar.

Diferencias con Daemons

En este punto, usted probablemente se esté preguntando qué es lo que diferencia a nohup de un proceso demonizado. Después de todo, ambos parecen servir para el mismo propósito, pero en realidad no lo hacen. Los demonios se ejecutan continuamente en segundo plano. Es mejor reservarlas para procesos que no quieres que salgan nunca, como los servidores. También requieren más trabajo de programación, por lo que no son los mejores para guiones únicos y sencillos.

Nohup es para un solo uso. Piense en un guión que tardará mucho tiempo en ejecutarse, pero que al final terminará. Tal vez hay una tarea larga y complicada que se ejecuta de vez en cuando y que lleva horas completar. No quieres dejar un terminal abierto o un usuario conectado, así que usas nohup para mantenerlo funcionando en segundo plano. Como ventaja adicional, registrará automáticamente todo para usted.

Puede ver que nohup no es una herramienta cotidiana, pero puede ser muy útil para la tarea correcta. Se sitúa entre un script corto normal y un demonio que se ejecuta continuamente. Le ayuda a tomar más de un enfoque de no intervención para guiones más largos que usted podría haber perdido tiempo regularmente cuidando niños.

Fuente: este post proviene de Vida Tecno, donde puedes consultar el contenido original.
¿Vulnera este post tus derechos? Pincha aquí.
Creado:
¿Qué te ha parecido esta idea?

Esta idea proviene de:

Y estas son sus últimas ideas publicadas:

Etiquetas: Linux

Recomendamos

Relacionado

Linux

Normalmente utilizamos el comando clear o pulsamos «Ctrl + L» para borrar la pantalla del terminal en Linux. Aunque funciona, en realidad la pantalla no está despejada – sólo la salida anterior se desplaza hacia arriba fuera del área visible. ¿Pero qué pasa si el requisito es realmente limpiar la pantalla del terminal? En este artículo discutiremos el comando reset que lo hace posi ...

Linux

sed significa s tream ed itor y es un comando de uso común en Linux/Unix. El nombre proviene de un portmanteau de esas dos palabras. No es un editor de texto, aunque sí modifica el texto. En su lugar, sed recibe la entrada de texto como un «stream» y edita el stream de acuerdo con sus instrucciones. En general, la gente usa sed como una versión de línea de comandos de find and replace. E ...

Linux

Grep es un pequeño programa de Unix para encontrar patrones coincidentes. Iniciado como un programa Unix, se puede encontrar tanto en Linux como en Mac y BSD. Puede leer casi cualquier texto, lo que significa que puede leer las entradas de otros comandos, o puede abrir y revisar los archivos directamente. Grep es increíblemente útil, especialmente para mirar a través de directorios desde la línea ...

Linux

Dos potentes características del shell de la línea de comandos de Linux son la redirección y las tuberías que permiten que la salida (o incluso la entrada) de un programa se envíe a un archivo o a otro programa. Es posible que ya haya utilizado estas funciones sin ser consciente de ello. Siempre que se ha utilizado el signo «>» en un comando o «|» entonces se ha utilizado la ...

Linux

Unas cuantas veces, al instalar/actualizar un paquete desde la línea de comandos (usando apt-get o apt) en Ubuntu, obtenemos este error: E: No se puede bloquear el directorio de administración (/var/lib/dpkg/) . Desde el punto de vista de un principiante, es un error complejo, ya que la mayoría de los nuevos usuarios no son conscientes del directorio «/var/lib/dpkg/» y de lo que tiene qu ...

Sobremesa Windows cmd ...

Todos los sistemas Windows incluyen una serie de comandos que permiten transmitir órdenes directamente al sistema operativo. Son los conocidos como comandos CMD, comandos de DOS o comandos MS-DOS. Se trata de simples instrucciones que se pueden usar de formas diferentes, la más conocida de ellas es introduciéndolos en la consola de comandos CMD (de hecho, “CDM” corresponde al nombre de ...

Linux

Dentro de su sistema Linux o macOS, hay un archivo llamado «sudoers» que controla los niveles más profundos de su sistema de permisos. Permite o niega a los usuarios el acceso a los superusuarios y tiene algunas preferencias especiales para sudo. ¿Qué es el archivo Sudoers? El archivo sudoers es un archivo de texto que vive en «/etc/sudoers». Controla cómo funciona sudo en su m ...

Linux

Enviar un correo electrónico es algo que a menudo no tienes que pensar dos veces. Simplemente encienda su cliente de correo electrónico, ya sea basado en la web o en el escritorio, escriba un mensaje, introduzca la dirección de correo electrónico del destinatario y haga clic en «Enviar». ¿Qué sucede si es necesario que envíe correo electrónico desde la línea de comandos, por ejemplo, par ...

Linux

La gente siempre tiene la impresión de que GNU/Linux es difícil de usar. La mayoría de la gente sigue pensando que GNU/Linux es igual que DOS, donde tienes que navegar escribiendo comandos. Lo bueno es que la mayoría de las distribuciones hoy en día vienen con una interfaz y aplicaciones muy bonitas, y no es necesario entender ninguna línea de comandos para usar Linux. Por otro lado, tener algún c ...

Linux

Si eres un fan de Linux, conoces la razón exacta por la que es impresionante: la línea de comandos. Aunque muchos forasteros lo ven sólo como una «herramienta de hacker», en realidad es una de las mejores herramientas disponibles para cualquier sistema operativo. El shell de Linux tiene la capacidad de instalar software, administrar su sistema operativo y básicamente todo lo demás. Para ...