Existe algum mecanismo para executar um “serviço” por um usuário não-root? [duplicado]

2

Existe uma maneira em que eu possa ter um processo em segundo plano em execução contínua que possa ser controlado por mim (um usuário normal não root)?

Tudo o que preciso fazer é iniciar, parar e reiniciar o processo. Monitoramento por PID e envio de SIGHUP ou SIGINT para terminação é bom. Eu estou bem com o uso de um script complicado, não precisa ser algo em todo o sistema. Apenas para mim.

Eu também realmente preciso que não pare quando eu fizer logoff do ssh.

Existe uma maneira de fazer isso no RHEL 6.4?

    
por Soumya 10.10.2013 / 05:45

1 resposta

2

tela ou tmux

Claro que você pode iniciar processos e, em seguida, executar continuamente usando um multiplexador de terminal, como screen ou tmux. Os processos podem continuar a persistir em uma tela ou sessão tmux, e você pode conectar / desconectar para (screen ou tmux) conforme necessário.

backgrounding

Você pode executar qualquer processo que desejar e, em seguida, contextualizá-lo e, em seguida, desconectá-lo do seu terminal atual usando o comando disown .

$ disown -a

Além disso, se você quiser apenas iniciar um processo e não precisar usar o background e disown , use o comando nohup .

$ nohup myexec &

Quando você sair do shell, myexec continuará sendo executado.

Exemplo

Inicie um processo falso.

$ sleep 12345 &
[1] 24339
$

Certifique-se de que podemos ver:

$ pgrep -f "sleep 12345"
24339

Mas ainda está conectado ao nosso terminal:

$ jobs
[1]+  Running                 sleep 12345 &

Então, vamos disown it:

$ disown -a
$ jobs
$

Veja se ainda está em execução:

$ pgrep -f "sleep 12345"
24339

Agora vamos fazer logout e fazer login novamente. Veja se ainda está lá:

$ pgrep -f "sleep 12345"
24339

Você pode matar esse processo a qualquer momento usando os métodos padrão:

$ pkill -HUP -f "sleep 12345"
$ pgrep -f "sleep 12345"
$ 

O texto acima enviará o sinal HUP para um nome de processo que corresponda ao padrão "sleep 12345". A checagem dupla mostra que agora se foi.

    
por 10.10.2013 / 06:03