Como gerenciar processos em segundo plano no CentOS

Como gerenciar processos em segundo plano no CentOS

Estou usando o CentOS e não consigo descobrir como:

  1. Mostrar lista de processos/trabalhos em segundo plano atuais (que executo).
  2. Como executar o processo em segundo plano.
  3. Como interromper o processo em segundo plano.

Meu comando que desejo executar em segundo plano é assim:

activator run

Até agora encontrei apenas este comando (que executa o processo em segundo plano).

nohup activator run &

Responder1

Isso depende principalmente do seu shell, presumivelmente bash(1). A maioria dos outros shells modernos oferece recursos de controle de tarefas semelhantes (ou até idênticos).

  • Para iniciar um comando em segundo plano, faça command &ou nohup command &(se quiser sair e ainda mantê-lo em execução)
  • Para interromper o comando em execução, C-z(ctrl-Z), para colocar o comando interrompido em segundo plano, faça bg. Com fgvocê trazê-lo de volta para o primeiro plano, jobsinforma o que está parado ou em segundo plano. kill %kmata o número do trabalho k( fg %kou simples %k) o traz para o primeiro plano. Você pode iniciar o trabalho interrompido kem segundo plano por bg %k(ou simplesmente %k &).

Há um pouco mais de silêncio.

Outra forma bastante flexível é usar screen(1), verifique sua página de manual. Com ele você pode iniciar um comando e desconectar, e conectar posteriormente de outro terminal (ou outra máquina pela rede).

Responder2

Sua abordagem deve funcionar ...

Comece o trabalho comnohup activator run &

Verifique o que está acontecendo comjobs -l

Pare com kill PID(você pode obter o PID com ps -ef | grep activator)


Eu pessoalmente prefiro screen-http://linux.die.net/man/1/screen

Comece o trabalho comscreen -d -m activator run

Verifique as sessões de tela comscreen -ls

Pare acessando a janela da tela screen -xseguida pelo ID da sessão da tela

informação relacionada