LinuxParty
NUESTRO SITIO necesita la publicidad para costear hosting y el dominio. Por favor considera deshabilitar tu AdBlock en nuestro sitio. También puedes hacernos una donación entrando en linuxparty.es, en la columna de la derecha.
Nohup significa "no colgar". Es un comando extremadamente útil para hacer que su proceso se ejecute incluso después de cerrar la sesión.
Uno de los usos más comunes se puede encontrar en la ejecución de comandos que toman tiempo a través de una conexión SSH. Si cree que su sesión SSH puede caer, puede usar el comando con nohup de esta manera:
nohup your_command &
¿Qué es el comando nohup?
Nohup puede verse como un contenedor. Prefija su comando con nohup así:
nohup COMMAND ARGS ....
El propósito de Nohup es interceptar y evitar que las señales SIGHUP lleguen aCOMMAND.
Cuando prefija su comando con nohup , la entrada será redirigida desde un archivo ilegible ( nohup COMMAND </ dev / null ). En pocas palabras, no llame a un comando con nohup si necesita enviar una entrada a ese comando. Cuando no ejecuta un comando, debe poder ejecutarse sin supervisión.
Nohup primero intentará redirigir la salida a ./nohup.out o la enviará a ~ / nohup.out si es necesario. También puede decidir dónde redirigir la salida de esta manera:
nohup COMMANDS >/path/to/output/file
No hay mucho que decir sobre nohup , no tiene una larga lista de opciones. Solo hay –help y –version.
Ejemplo de uso del comando nohup
Ejecutar un script con nohup es tan simple como esto.
nohup ./nhp.sh

Tenga en cuenta que nohup no bifurcó el proceso en segundo plano. Nohup solo está ahí para interceptar señales SIGHUP . Una vez que el comando se está ejecutando, puede continuar y cerrar su terminal. Le advertirá que se está ejecutando un proceso. Confirma que quieres eliminarlo.

Cuando cerró su terminal, todos los procesos secundarios recibieron una señal SIGHUP. Nohup impidió que esa señal llegara a mi comando. La siguiente imagen muestra información de proceso sobre mi comando mientras la terminal aún estaba funcionando.

¿Ves el PPID? Ese es el ID del proceso principal. Cuando solicitó cerrar la terminal, todos los hijos de PPID recibieron una señal SIGHUP . Nohup impidió que esa señal llegara a nuestro guión. El proceso principal terminó y nuestro script quedó huérfano. Cuando un proceso se queda huérfano, automáticamente se asigna 1 (systemd o init) como padre.

Como puede ver, no es difícil demostrar el uso de nohup . Comando muy simple. Puede bifurcar el proceso en segundo plano de esta manera:
nohup ./nhp.sh &
También puede decidir a dónde se redirige la salida así:
nohup ./nhp.sh >/path/to/file &
Tenga en cuenta que si apaga o reinicia el sistema Linux, se eliminará el comando. Cuando solicita un apagado o reinicio, todos los procesos reciben un SIGTERM y luego un SIGKILL . Esas señales no son interceptadas por nohup .
Nohup a través de la conexión SSH
Un uso que a menudo le viene a la mente de inmediato cuando aprende nohup es poder iniciar un proceso en una computadora remota a través de SSH. Lógicamente, ejecutar un comando con nohup le permitiría cerrar la sesión de su conexión SSH y el proceso aún se ejecutaría.
nohup COMMAND &
Un problema común es que a veces SSH se “cuelga” al cerrar la sesión. Esto se debe a que SSH a menudo se negará a perder cualquier flujo de datos hacia y desde cualquier proceso en segundo plano. Luego se “colgará” hasta que finalice el proceso.
Este problema a menudo se puede solucionar redireccionando los 3 flujos de datos.
nohup COMMAND >./nohup.out 2>./nohup.err &
Espero que este artículo rápido te haya ayudado a usar mejor las sesiones SSH . Si tiene preguntas o sugerencias, deje un comentario a continuación.

-
Seguridad
- Manual sobre crear un proxy transparente con pfSense - Squid + SquidGuard
- Disponible pfSense 2.3.4: el firewall y proxy de código abierto
- Configuración de Icinga para Nginx en Debian Wheezy/Ubuntu 11.10
- nginx: como bloquear Exploits, SQL Injections, File Injections, Spam, User Agents, Etc.
- Nuevo informe de la NSA: así es como debería proteger su red
- Script para hacer copia de seguridad de los Usuarios, Bases de Datos y /var/www/html
- Shell In A Box: un terminal SSH basado en web para acceder a servidores Linux remotos
- Cómo proteger GRUB2 y establecer contraseña en RHEL, Alma Linux y Rocky y Fedora Linux
- Ghidra Software de Ingeniera Inversa, decompilador, Debugger, Disassembler
- Comprobar puertos abiertos en el ordenador (con Linux)
- Verificar y comprobar que aplicación usa un puerto en Linux y Windows
- Generar contraseñas aleatorias seguras en Linux
- Montar un sistema de archivos remoto a través de ssh Usando sshfs.
- 20 Ejemplos IPTables para nuevos Administradores de Sistemas
- 20 ejemplos iptables para administradores de sistemas Linux