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:
# 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 -y
Passo 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.
# Cria uma nova sessão chamada "backup-dados"
screen -S backup-dados
DICA 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.
# 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.
# 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-dados
ALERTA: 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:
| Ação | Tecla de Atalho (Após Ctrl+a) | Função |
| Criar Janela | c | Abre uma nova aba dentro da mesma sessão. |
| Próxima Janela | n ou Espaço | Alterna para a próxima aba. |
| Janela Anterior | p | Volta para a aba anterior. |
| Listar Janelas | " (aspas) | Mostra uma lista vertical selecionável. |
| Nomear Janela | A (Shift+a) | Renomeia a aba atual (útil para organização). |
| Modo Scroll | [ ou Esc | Permite rolar o texto para cima (Use Enter para sair). |
| Matar Janela | k | Encerra a aba atual forçadamente. |
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:
nano ~/.screenrcCole estas configurações para adicionar uma barra de status útil na parte inferior:
# 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”).
