Essa é uma dica simples e rápida, mas que me quebrou um galho (ou seria árvore?) um dia desses. Eu precisava deixar um comando rodando num servidor remoto, porém não continuaria conectado via ssh neste. Ao executar o comando passando o famoso "&" no final da linha o terminal ficava livre, mas ao deslogar do terminal o comando recebia um sinal de hangup e "morria".
Enfim, pra rodar um comando em background e fazer com que o mesmo fique imune a sinais de hangup, usa-se o comando nohup.
Exemplo de uso:
# nohup ./comando_que_vai_demorar &
A saída do comando será gravada no arquivo nohup.out, que será criado no diretório corrente (onde o comando foi executado). Agora você pode desconectar do terminal remoto e ir pra casa tranquilo. Simples assim!
[1] Comentário enviado por
salsichapower em 25/01/2008 - 11:36h:
Fabio esse comando pode ser utilizado quando se usa um backup por exemplo?????
[2] Comentário enviado por
pstglia em 25/01/2008 - 15:05h:
Boa dica Fábio. Isso ajuda pacas
Caso a sessão que disparou o processo caia (receba o HUP), o owner o processo passa a ser o processo INIT (1)
Existem também o comando screen; Tem o mesmo objetivo do nohup