Mova um processo em execução em segundo plano e mantenha-o em execução mesmo se você desconectar

3

Você já tem um processo em execução e deseja colocá-lo em execução em segundo plano.

Se você quiser ter certeza de que isso ainda funcionará depois de fechar a conexão ssh, o que você deve fazer?

Observação: você já está executando o processo no momento em que deseja tomar essa decisão.

Eu sei que Ctrl-Z e bg farão com que ele seja executado em segundo plano, mas ainda temo que o processo seja eliminado quando você fechar a conexão ssh.

    
por sorin 14.05.2013 / 20:49

1 resposta

6

Basta digitar disown , é um evento básico

Without options, each jobspec is removed from the table of active jobs. If the -h option is given, each jobspec is not removed from the table, but is marked so that SIGHUP is not sent to the job if the shell receives a SIGHUP. If no jobspec is present, and neither the -a nor the -r option is supplied, the current job is used. If no jobspec is supplied, the -a option means to remove or mark all jobs; the -r option without a jobspec argument restricts operation to running jobs. The return value is 0 unless a jobspec does not specify a valid job.

Do zero, você fará assim

- <command> & #make it run in background
- disown #make it run even if your ssh session disconnect
    
por 14.05.2013 / 20:57