Cuando ejecute un trabajo Unix en segundo plano ( usando &, BG command), y cierre la sesión de la sesión, su proceso será asesinado. Puede evitar esto usando varios métodos: ejecutar el trabajo con nohup, o hacerlo como trabajo por lotes usando el comando at, batch o cron.
este consejo rápido es para principiantes. Si has estado usando nohup durante un tiempo, déjanos un comentario y dinos en qué situaciones usas nohup.,
en este consejo rápido, Permítanos revisar cómo hacer que su proceso se ejecute incluso después de cerrar sesión, utilizando nohup.
Nohup significa no hang up, que se puede ejecutar como se muestra a continuación.
nohup sintaxis:
# nohup command-with-options &
Nohup es muy útil cuando tienes que ejecutar un shell-script o comando que tarda mucho tiempo en terminar. En ese caso, no quieres estar conectado al shell y esperar a que el comando se complete. En su lugar, ejecútelo con nohup, salga del shell y continúe con su Otro Trabajo.
explicación sobre nohup.,out file
de forma predeterminada, la salida estándar se redirigirá a nohup.archivo de salida en el directorio actual. Y el error estándar será redirigido a stdout, por lo que también irá a nohup.fuera. Entonces, tu nohup.out contendrá tanto la salida estándar como los mensajes de error del script que ha ejecutado usando el comando nohup.
en lugar de usar nohup.fuera, también puede redirigir la salida a un archivo utilizando las redirecciones normales de shell.,
ejemplo: imprimir líneas en ambas salidas estándar & Error estándar
while(true)doecho "standard output"echo "standard error" 1>&2 sleep 1;done
ejecutar el script sin redirección
ejecutar el script con redirección
Si cierra sesión en el shell y vuelve a iniciar sesión, custom-script.sh corriendo en segundo plano.
$ ps aux | grep sathiya sathiya 12034 0.0 0.1 4912 1080 pts/2 S 14:10 0:00 sh custom-script.sh