Uso da tela para anexar e desanexar sessões de console
O Screen é um poderoso multiplexador de terminal que permite criar, gerenciar e retomar várias sessões de shell a partir de uma única janela de terminal. Isso é particularmente útil ao trabalhar em servidores remotos via SSH ou quando você precisa executar processos de longa duração que deseja manter em execução mesmo depois de se desconectar da sessão. Neste guia, abordaremos os conceitos básicos do uso da tela, inclusive como iniciar, desconectar e reconectar sessões.
Instalação do screen
Antes de usar o screen, verifique se ele está instalado em seu sistema. Na maioria das distribuições Linux, você pode instalá-lo usando o gerenciador de pacotes:
Para Debian/Ubuntu:
Para CentOS/RHEL:
Para o Fedora:
Para macOS (com Homebrew):
Iniciando uma sessão de tela
Para iniciar uma nova sessão de tela, basta digitar:
Isso abrirá uma nova sessão de tela e será apresentado a você um prompt de shell padrão.
Como nomear uma sessão de tela
Para facilitar a identificação das sessões de tela, você pode nomeá-las:
Substitua session_name por um nome descritivo para sua sessão. Isso facilita o gerenciamento de várias sessões.
Exemplo:
Desvinculação de uma sessão de tela
Para sair de uma sessão de tela sem encerrá-la, pressione a seguinte combinação de teclas:
- Ctrl A: sinaliza à tela que você deseja enviar um comando.
- D: esse é o comando para desconectar a sessão.
Após a desconexão, você voltará ao prompt do terminal, mas a sessão do screen continuará sendo executada em segundo plano.
Listagem de sessões de tela
Se houver várias sessões de tela em execução, você poderá listá-las com:
Esse comando exibirá todas as sessões de tela ativas, juntamente com seus IDs e nomes de sessão.
Exemplo de saída:
12345.mysession (Detached)
67890.outra_sessão (Desanexada)
2 Sockets em /var/run/screen/S-user.
Reanexação a uma sessão de tela
Para se conectar novamente a uma sessão de tela, use a opção -r seguida do ID ou nome da sessão:
Usando a ID da sessão:
Usando o nome da sessão:
Se você tiver apenas uma sessão desanexada, basta executar:
Como anexar a uma sessão de tela que já está anexada
Se uma sessão de tela ainda estiver anexada e você quiser forçá-la novamente (por exemplo, se tiver perdido a conexão), use as opções -d -r:
- -d: desanexa a sessão se ela já estiver anexada.
- -r: Anexar novamente à sessão.
Esse comando desconecta a sessão do terminal anterior e a reconecta ao terminal atual.
Criação de uma nova janela em uma sessão de tela
Uma vez dentro de uma sessão de tela, você pode criar novas janelas (terminais virtuais) com:
Cada nova janela é como um novo terminal dentro da sessão de tela. Você pode alternar entre elas, o que pode ser útil para multitarefa.
Alternância entre janelas
Para alternar entre janelas dentro de uma sessão de tela:
- Para ir para a próxima janela:Ctrl A, depois N
- Para ir para a janela anterior:Ctrl A e, em seguida, P
- Para listar todas as janelas:Ctrl A e, em seguida, “
Isso exibirá uma lista de todas as janelas abertas, permitindo que você selecione uma.
Fechamento de uma sessão de tela
Para fechar uma sessão de tela, basta sair de todos os processos em execução ou digitar exit em cada janela até que todas as janelas sejam fechadas. Quando a última janela for fechada, a sessão de tela será encerrada.
Resumo dos comandos comuns de tela
Conclusão
o screen é uma ferramenta versátil para gerenciar processos de longa duração e manter sessões de console persistentes em servidores remotos. Com o screen, é possível desconectar-se das sessões, manter os processos em execução em segundo plano e reconectar-se posteriormente de qualquer lugar, o que o torna uma ferramenta inestimável para administradores de sistemas e desenvolvedores. Ao dominar os comandos básicos para criar, gerenciar e navegar pelas sessões de screen, você poderá aumentar consideravelmente sua produtividade em ambientes baseados em terminal.