Cansado de perder o progresso de um script longo porque sua conexão SSH caiu? O comando Linux screen é a solução padrão para manter processos rodando em segundo plano, proteger sessões contra falhas de rede e transformar um único terminal em uma central de multitarefa.
O que é o GNU Screen?
O Screen é um multiplexador de terminal que permite criar, acessar e alternar entre múltiplas sessões virtuais dentro de uma única janela física. Diferente de terminais comuns, as sessões do Screen persistem independentemente da sua conexão; se você se desconectar, os processos continuam rodando no servidor até que você volte.
O QUE VOCÊ PRECISA SABER:
- Persistência: Scripts continuam rodando mesmo se você fechar o terminal ou perder a internet.
- Organização: Gerencie múltiplas abas de terminal via linha de comando sem interface gráfica.
- Legado vs. Moderno: Embora o tmux seja popular, o screen vem pré-instalado na maioria absoluta dos servidores Linux.:::
Pré-requisitos e Instalação
Embora onipresente, é possível que versões “minimal” de distros não o tragam por padrão. Verifique a instalação e instale se necessário:
Bash# Verifique a versão instalada screen --version # Instalação no Debian/Ubuntu/Mint sudo apt update && sudo apt install screen -y # Instalação no RHEL/CentOS/Fedora sudo dnf install screen -yPasso a Passo: Dominando o Ciclo de Vida do Screen
O fluxo de trabalho profissional consiste em três etapas: Nomear, Executar e Destacar (Detach).
1. Inicie uma Sessão Nomeada
Evite rodar apenas screen (que cria sessões com IDs numéricos difíceis de memorizar). Crie uma sessão identificável para facilitar o gerenciamento futuro.
Bash# Cria uma nova sessão chamada "backup-dados" screen -S backup-dadosDICA PRO: Sempre use a flag -S. Quando você tiver 5 sessões rodando daqui a um mês, agradecerá por ter dado nomes descritivos a elas.
2. Execute seus Processos
Agora você está dentro de um terminal virtual. Rode qualquer comando demorado normalmente.
Bash# Exemplo: Atualizando o sistema (pode levar minutos ou horas) sudo apt full-upgrade -y3. O “Pulo do Gato”: Detach (Desconectar sem Fechar)
Aqui está a mágica. Para sair do servidor e deixar o comando rodando, você deve “desanexar” a tela.
Pressione a seguinte sequência:
- Ctrl + a (Solte as teclas)
- d
Você verá a mensagem [detached]. Seu terminal voltou ao normal, mas o processo de atualização continua firme e forte no background.
4. Reattach (Retomar a Sessão)
Voltou do almoço ou logou novamente no servidor? Recupere sua sessão.
Bash# 1. Liste as sessões ativas para ver os nomes screen -ls # Saída esperada: # There is a screen on: # 2456.backup-dados (Detached) # 2. Reconecte-se à sessão específica screen -r backup-dadosALERTA: Se a sessão ainda estiver marcada como (Attached) (por exemplo, se sua conexão caiu bruscamente e o servidor ainda não percebeu), use screen -d -r nome_sessao para forçar o desanexamento remoto e reconectar aqui.
Cheat Sheet: Atalhos Essenciais
O Screen usa uma “tecla de comando” (Meta Key), que por padrão é Ctrl + a. Pressione Ctrl + a, solte e então pressione a tecla de ação:
Personalização Avançada (.screenrc)
O visual padrão do Screen é austero (sem barra de status). Você pode modernizá-lo editando o arquivo de configuração.
Edite o arquivo na sua home:
Bashnano ~/.screenrcCole estas configurações para adicionar uma barra de status útil na parte inferior:
Bash# Desativa a mensagem de boas-vindas startup_message off # Adiciona uma barra de status com [Lista de Janelas] Data e Hora hardstatus alwayslastline hardstatus string '%{= kG}[ %{G}%H %{g}][%= %{= kw}%?%-Lw%?%{r}(%{W}%n*%f%t%?(%u)%?%{r})%{w}%?%+Lw%?%?%= ][ %{g}%Y-%m-%d %{W}%c %{g}]'Screen vs. Tmux: Qual escolher em 2026?
Muitos usuários avançados migraram para o Tmux devido à sua arquitetura mais limpa e facilidade de divisão de painéis (split panes).
- Use o Screen se: Você administra servidores legados, roteadores ou sistemas onde não tem permissão para instalar novos pacotes. O Screen está instalado em praticamente qualquer lugar.
- Use o Tmux se: Você quer um ambiente de desenvolvimento complexo com muitas divisões de tela e plugins modernos.
VEREDITO: Para tarefas rápidas de sysadmin e manutenção de conexão, o Screen continua sendo a ferramenta mais rápida e direta ao ponto (“batteries included”).
Perguntas Frequentes (FAQ)
Posso dividir a tela (split) no Screen?
Sim. Use Ctrl+a seguido de S (split horizontal) ou | (split vertical). Para navegar entre as regiões, use Ctrl+a e Tab.
Como encerro uma sessão travada?
Se o programa dentro do screen travou e você não consegue digitar, pressione Ctrl+a e depois k (kill) para matar aquela janela específica. Para encerrar a sessão inteira via terminal externo, use screen -X -S [nome] quit.
O Screen consome muita memória?
Não. O Screen é extremamente leve. Ele consome apenas alguns megabytes de RAM, mesmo gerenciando múltiplas janelas, sendo ideal para VPS com poucos recursos (LowEndBox).