Permitir que processos iniciados por ssh continuem e registrem a saída no arquivo

0

Então, essa é uma questão de várias partes, eu tenho um vps que eu conecto através do ssh para executar alguns processos.

Gostaria de poder iniciar os processos e fechar a janela do meu terminal, mas ainda assim poder voltar ao ssh e verificar os processos.

Eu também gostaria que cada processo imprima o que for impresso no terminal em um arquivo, idealmente nomeado após o comando que o iniciou. (incluindo bandeiras e tal)

como faço para alcançar esse objetivo?

    
por davegri 07.10.2015 / 23:54

1 resposta

0

Existem possivelmente várias maneiras de alcançá-lo, mas aqui estão alguns dos itens essenciais:

tela

screen permite criar console virtual, digitá-lo a partir de seu tty ( CTRL A seguido por CTRL D ) e anexe-o de volta ( screen -r ) sempre que precisar.

nohup

nohup é um software que permite executar o comando que irá ignorar qualquer sinal de desligamento e gravar a saída do comando no arquivo nohup.out em cwd . Na prática, executar o seguinte comando: ssh e, em seguida, fazer logout manterá o processo funcionando nohup dd if=/dev/random of=/dev/null & .

tee

O comando

tee de uso muito simples funciona como uma bifurcação que escreve stdin em um arquivo e stdout simulavelmente. No seu caso, isso seria ls -alh | tee 'ls' . Se você também quiser gravar stderr no arquivo append 2&>1 (que significa "redirect stderr to stdout ") no seu comando base.

Ao combinar essas soluções, você deve conseguir o que deseja. Você também pode ver uma resposta semelhante: 8703001/1732775 .

    
por Roomy 08.10.2015 / 01:20