Linux Solutions Center    
Bienvenido a    :: LINUX SOLUTIONS CENTER ::
México, 
Home Scripts Ejecutar comandos con nohup después de la salida de un shell
LINUX es nuestra Especialidad: · Servidores de Internet · Monitoreo de Servidores y Enlaces · Virtualizacion · Firewalls con OpenSource · Proxy Servers (Web Cache) · DNS y DHCP · Web Server · Webmail · NAT's · IP Forwarding · FTP Server · Email Attachmnt Filtering · Reportes estadisticos · Linux Gateway/Router · Bloqueo de Puertos · Email Server · Reporte de todo el trafico interno/externo · Administracion de Ancho de banda · VPN's con Open VPN · Soporte Ténico comercial · Administración de servidores Linux (RedHat EL/AS, Debian, CentOs, etc) · Instalación y Configuración de Servidores · Configuración de servidores de E-Mail (Sendmail, Qmail, Postfix con virtual domains) · Antvirus con OpenSource · Administración de LVM · y mas... mucho mas
Linux Solutions C.
Acerca de
Actualidad
GNU/Linux
Gente en Línea
Tenemos 18 invitados conectado(s)
Estadísticas
Ver contenido por hits : 327094
Acceso



Google Translation

 
Temas Relacionados

El Clima
Current Wed, 08 Sep 2010 6:42 pm CDT
City: Ocoyucan
Mostly Cloudy
sunrise: 7:19 am
sunset: 7:41 pm
Act: 19°
Máx: 21°
Mín: 12°

Esta NocheMañana
Scattered
Thunderstorms
Scattered
Thunderstorms
 
Máx: 21°
Mín: 12°
Máx: 22°
Mín: 11°



Ejecutar comandos con nohup después de la salida de un shell PDF Imprimir E-mail Hits: 2191
Usar puntuación: / 0
MaloBueno 
Scripts
Escrito por Domingo Varela   
Lunes, 08 de Diciembre de 2008 08:28

La mayoría de las veces cuando uno se conecta a un servidor remoto a través de ssh, e iniciamos un shell script de algun trabajo
y este toma un largo tiempo en dar los resultados o simplemente ejecutamos un comando, el resultado puede demorar, y por ende
la conexion se pierde con el servidor, el o los procesos abortan o se mueren ya que no estamos activos en el servidor remoto.
 
Para solucionar este pequeño problema, si no se está seguro de cuando se termina el trabajo, entonces es mejor salir dejando el proceso
se ejecute en segundo plano.

Sin embargo, si salir del sistema, el trabajo se detuvo. ¿Qué hacer?. Para ello existe un comando que ejecuta comandos despues de salirse del interprete de comandos (shell) y este se llama  nohup.

Comando nohup

La respuesta es sencilla, con el comando nohup el cual permite ejecutar comandos/procesos  o  shell script que puede seguir funcionando en segundo plano después de salir de un shell:

Sintaxis nohup:

nohup command-name &

Dónde,

  • nombre-comando: Es el nombre del script de shell o nombre del comando. Se pueden pasar argumentos de comandos o un shell script.
  • &: Nohup no ejecuta automáticamente el comando en segundo plano, debe hacerlo explícitamente, poniendo al final de la línea de comandos un &.

Ejemplos del comando nohup.


1) Ingresar al servidor remoto
$ ssh Esta dirección electrónica esta protegida contra spam bots. Necesita activar JavaScript para visualizarla

2)Ejecutar script llamado pullftp.sh
# nohup pullftp.sh &

Escriba exit o presione CTRL + D de salida desde un servidor remoto.

# exit

3)Buscar todos los programas y scripts con el bit setuid en ON, y de enter:
# nohup find / -xdev -type f -perm +u=s -print > out.txt &
Escriba exit o presione CTRL + D de salida desde un servidor remoto.

# exit

 

 

Comando nohup

La respuesta es sencilla, con el comando nohup el cual permite ejecutar comandos/procesos  o  shell script que puede seguir funcionando en segundo plano después de salir de un shell:

Sintaxis nohup:

nohup command-name &

Dónde,

  • nombre-comando: Es el nombre del script de shell o nombre del comando. Se pueden pasar argumentos de comandos o un shell script.
  • &: Nohup no ejecuta automáticamente el comando en segundo plano, debe hacerlo explícitamente, poniendo al final de la línea de comandos un &.

Ejemplos del comando nohup.


1) Ingresar al servidor remoto
$ ssh Esta dirección electrónica esta protegida contra spam bots. Necesita activar JavaScript para visualizarla

2)Ejecutar script llamado pullftp.sh
# nohup pullftp.sh &

Escriba exit o presione CTRL + D de salida desde un servidor remoto.

# exit

3)Buscar todos los programas y scripts con el bit setuid en ON, y de enter:
# nohup find / -xdev -type f -perm +u=s -print > out.txt &
Escriba exit o presione CTRL + D de salida desde un servidor remoto.

# exit


Tenga en cuenta que nohup no cambia la programación de la prioridad del comando; use el comando nice para esto:
# nohup nice -n -5 ls / > out.txt &

Como se puede ver nohup mantiene los procesos que se ejecutan después de que uno salga del servidor.

Lea la página de ayuda del comando nohup para obtener más información.

Note que el comando nohup esta disponile en Solaris/BSD/Linux/UNIX.
 




LSC Support Online
SysOp
Tech Support
Encuestas
¿Y tú, que Desktop prefieres ?
 
Anunciate aquí

Centro de Soluciones Linux

KoalaSoft-Sitio de Amigos

Computer Fixers

Siguenos en Identi.ca Siguenos en Identi.ca


No. de Visitas
mod_vvisit_countermod_vvisit_countermod_vvisit_countermod_vvisit_countermod_vvisit_countermod_vvisit_countermod_vvisit_counter
mod_vvisit_counterHoy481
mod_vvisit_counterAyer575
mod_vvisit_counterEsta Semana1626
mod_vvisit_counterEste Mes4795
mod_vvisit_counterTotal431321
Linuxsc en RSS
News Feeds
Archivos
identi.ca

Ultimo Reporte