nohup vs. Tela

27

No passado, usei nohup para executar grandes tarefas em segundo plano, mas notei que muitas pessoas usam screen neste contexto. O screen fornece algum tipo de vantagem funcional da qual eu não tenho conhecimento, ou é apenas uma questão de preferência?

    
por HalosGhost 15.11.2011 / 17:30

4 respostas

20

Ambos possuem o próprio + e -:

nohup:

  1. nohup é bom de usar para executar o procs em segundo plano quando proc não precisa de qualquer entrada do usuário como o servidor httpd ou qualquer outro servidor proc como naquela.
  2. nohup cria log in dir da execução de proc. nome do arquivo de log o padrão é nohup.out
  3. Evita que o processo seja morto devido a erros Ctrl + C, Ctrl + D Apenas uma guarda segura.
  4. Normalmente é instalado por padrão com a configuração básica. Não há necessidade de instalar separadamente, como a tela.
  5. Sua funcionalidade é muito específica para executar um trabalho em segundo plano e saída de dumping. Baixo consumo de memória.

tela:

  1. Tem que instalar separadamente. Você pode ir a um centro de dados ou fazer login na sua conta. qualquer caixa e esperar que a tela esteja presente.
  2. É bom gerenciar vários terminais em assuntos separados e nomeá-los.
  3. É mais do gerenciador de terminal e não um comando para executar um proc por tempo infinito como nohup.
  4. É mais adequado se proc precisar de entrada do usuário. Como instalar o
    scripts, sim / não prompts.
  5. Com tons de recursos, vem a memória. Mas concordou, alguns são realmente ótimos recursos.

@rahmu, eu nunca vou adivinhar pid se quiser matá-lo. Tenha certeza antes de matar alguém / alguma coisa;). Melhor maneira em ambos os casos para tela e nohup é: ps -eaf | grep "nohup" | grep "seu nome / palavra-chave do proc". Use a tela e verifique o que está sendo executado.

Para concluir, ambos são duas coisas diferentes feitas com diferentes agendas, então a comparação é difícil.

Felicidades!

    
por 14.07.2015 / 17:15
19
A tela tem vários recursos. Ele não apenas "daemoniza" um processo, é mais um gerenciador de janelas para terminais.

Ele pode ser usado se o processo precisar de entrada em algum momento, você pode ir e verificar a saída do processo, reconectar ao seu terminal, ...

Então não, não é apenas uma questão de preferência, eles não são a mesma coisa.

    
por 15.11.2011 / 22:29
7

screen permite que você:

  1. volte para a tela atual, envie sinais, veja o quão rápido ele vai, veja se há mensagens de erro, etc.
  2. nomeia processos com um título significativo. Se você quiser matar um processo, você não precisa fazer um trabalho de adivinhação sobre seu ID de processo.
por 23.10.2012 / 17:04
-2
  1. o progresso do processo também pode ser verificado por nohup pelos campos do banco de dados.
  2. ps ax | grep nohup mostrará o id do processo e você poderá eliminá-lo.
  3. nohup é mais rápido. A razão simples é que depende da conexão de internet entre seu PC e o servidor. Sempre que a internet fica lenta, o processo também é lento.
por 01.02.2013 / 04:32