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

Hay muchos comandos disponibles en los sistemas Linux. Hay algunos que usará varias veces al día y otros generalmente reservados para casos de uso especiales. nohup es uno de esos comandos. No lo usará todos los días, pero estará agradecido de que esté disponible cuando lo necesite. Aquí te mostramos lo que nohup es y cómo usarlo.

¿Qué es Nohup?

Ejemplo de Nohup

nohup es la abreviatura de «No Hangups». No es un comando que ejecute solo. nohup es un comando complementario que le dice al sistema Linux que no detenga un comando una vez que se ha iniciado. Eso significa que seguirá ejecutándose hasta que termine, incluso si el usuario que lo inició cierra la sesión. Tiene un propósito algo similar a tmux o screen, lo que le permite iniciar un proceso y no preocuparse de si terminará si cierra la sesión o se desconecta de su servidor. La sintaxis para nohup es simple y se parece a esto:

nohup sh your-script.sh &

Observe el «&» al final del comando. Eso mueve el comando a segundo plano, liberando la terminal en la que está trabajando.

nohup funciona con casi cualquier comando que ejecute en la terminal. Se puede ejecutar con scripts personalizados, así como con comandos del sistema estándar y utilidades de línea de comandos. Puede usarlo para iniciar un script de auditoría de seguridad en un servidor remoto y poder desconectarse y alejarse, o puede usarlo si desea ejecutar actualizaciones en segundo plano y que no se detengan por nada.

Nohup.fuera

Porque nohup puede seguir ejecutándose independientemente del usuario que lo inició, el comando necesita algún lugar para generar mensajes o errores. Como no hay un terminal para asociarlo, nohup registra todo en un archivo de salida, nohup.out.

De forma predeterminada, ese archivo se encuentra en el directorio en el que inició el comando. nohup.out es algo único porque contiene tanto la salida estándar como la salida de error juntas. nohup redirige ambos al mismo archivo de forma predeterminada.

Salida Nohup

No necesariamente necesita usar nohup.out, sin embargo, es solo el valor predeterminado. Puede especificar una salida personalizada cuando ejecuta nohup y colóquelo en una ubicación personalizada.

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

La salida personalizada contiene exactamente los mismos datos que el estándar nohup.out archivo sería. Esto es bueno para el script de auditoría de seguridad que mencioné anteriormente. Podrías nombrarlo audit-script-output.txt en algún tipo de carpeta remota montada y ver la postura de seguridad de ese servidor desde la comodidad de su propia computadora portátil en lugar de mirar a través cat Salidas todo el día.

¿En qué se diferencia Nohup de un demonio?

A estas alturas, probablemente se esté preguntando qué establece nohup aparte de un proceso demonizado. Después de todo, ambos parecen tener relativamente el mismo propósito, pero en realidad no es así.

Los demonios se ejecutan continuamente en segundo plano. Es mejor reservarlos para los procesos de los que no desea salir nunca, como los servidores. También requieren más trabajo para programar, por lo que no son los mejores para secuencias de comandos simples y únicas.

nohup es de un solo uso. Piense en un script que tardará mucho tiempo en ejecutarse pero que finalmente terminará. Tal vez hay una tarea larga y complicada que ejecuta de vez en cuando que lleva horas completar. No desea dejar una terminal abierta o un usuario conectado, por lo que usa nohup para mantenerlo funcionando en segundo plano y poner toda la salida en cualquier archivo que elija, ya sea el predeterminado nohup.out o su ubicación elegida.

Si te ha gustado este artículo sobre nohupsus beneficios y sus usos, asegúrese de revisar algunos de nuestros otros contenidos de Linux, como nuestra explicación de los permisos de archivos o cómo acelerar una máquina Linux lenta.

Publicaciones Similares

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *