Quando for executar um comando que rode durante muito tempo, não é conveniente deixar o processo travando um terminal principalmente porque se o terminal cai, o processo vai junto. Pode-se enviar o processo para background, usando “bg comando” ou “comando&”. Ainda assim, se deslogar, receber um sinal de hangup e o processo morrer, use “nohup comando &”, sendo que a saída do comando será gravada no arquivo nohup.out no diretório corrente. Outra opção mais completa é usar o programa screen.
O Screen é um multiplexador de terminais que permite ao usuário, em uma mesma sessão, abrir várias janelas e realizar atividades paralelas (terminais virtuais). Com o screen, também é possível um usuário ver o que o outro está digitando e vice-versa (ambos os usuários podem digitar os comandos e ambos verão os resultados). Pode ser instalado através do repositório, para iniciar sua utilização (criando uma nova sessão), basta digitar “screen”. Se digitar “screen -ls”, aparecem as sessões que estão rodando. Escreva “screen -x” para retomar a última sessão ou digite “screen -r NomeDaSessao” para retomar essa sessão.
A partir do momento em que você está dentro do multiplexador screen, todo o gerenciamento é feito utilizando a sequência de caracteres “Ctrl+a+
Para navegar para cima e para baixo no terminal, pressione CTRL+A+[ e assim abrir o “copy mode” do screen. Então utilize as teclas de seta e Page Up/Down para navegar como um texto. Para sair desse modo, digite CTRL+A+].
Digite “exit” para fechar a sessão shell. Os outros shells permanecerão ativos e realizando as tarefas que você iniciou. Já o comando CTRL+a+d faz abandonar a sessão screen sem fechá-la. Todos os terminais abertos permanecerão abertos e todos os processos que deixamos rodando continuarão rodando.
2 comments