¿Qué tan estable proceso de Linux corriendo en el fondo

  
 

A menudo nos encontramos con telnet /ssh login remoto servidor Linux, ejecutando una serie de tareas que consumen mucho tiempo, el resultado es debido a la inestabilidad de la red, del sistema o de la misión que lleva tiempo de espera-cierre de sesión de usuario abortada. Entonces, ¿cómo hacer comando enviado desde el local cerca de la ventana de terminal /desconectar la conexión a la red de interferencia que? Aquí recogido algunos ejemplos prácticos, se puede elegir diferentes maneras para diferentes escenarios para resolver este problema.

En primer lugar, el escenario de negocios 1:

Sabemos que cuando el usuario cierra la sesión (logout) o desconectado de la red, el terminal recibirá señal HUP (colgar) para cerrar todos los procesos hijos. Por lo tanto, nuestra solución hay dos maneras: o bien permitir que el proceso de hacer caso omiso de la señal HUP, o dejar que el proceso de ejecución de la nueva sesión con el fin de convertirse en el niño no pertenece a este terminal.

1. nohup

nohup es, sin duda, la forma en que pensamos en un principio. Como su nombre lo indica, es hacer uso nohup comando a someterse a ignorar las señales hangup. Justo antes de que el comando para su procesamiento puede añadir nohup, salida estándar y el error estándar será redirigido al valor predeterminado nohup.out archivo. En general, podemos añadir y " al final; &" para ordenar al mismo tiempo a un segundo plano, también disponible y " > nombre de fichero 2 > &1 ″ para cambiar el nombre del archivo de redirección predeterminado.

columna muestra 1:

[root @ test ~] # nohup de ping www.chinaunix.net &

[1] 3059

nohup: Añadir a la salida a `nohup.out y rsquo;

[root @ test ~] # ps-ef

Copyright © Conocimiento de Windows All Rights Reserved