Como manter um processo rodando no servidor mesmo após fechar o terminal (screen/tmux)
Olá, querido(a) cliente da GeHost! 🌟
Se você já usou o SSH para acessar seu servidor e executou algum comando que demora para rodar — como um script de backup, um sistema de monitoramento, ou até um servidor de aplicação — provavelmente já se deparou com uma dor conhecida: fechou o terminal e o processo parou!
Não se preocupe. Isso é normal… mas tem solução. Hoje, vou te ensinar como usar ferramentas como screen ou tmux para deixar seus processos rodando em segundo plano, mesmo depois de sair do terminal.
Imagine que você está preparando um bolo. Se você sair da cozinha antes de o forno terminar, o bolo não vai cozinhar. Com o screen ou tmux, você pode sair da cozinha e ainda assim saber que o bolo está no forno — e voltar depois para ver o resultado. 🍞🔥
Por que isso acontece?
Quando você abre uma conexão SSH e executa um comando, ele roda dentro da sua sessão. Quando você fecha o terminal, a sessão é encerrada — e tudo que estava rodando dentro dela também para.
É como se o seu servidor estivesse dizendo: “Tudo bem, você começou, mas agora eu parei porque você saiu.”
Com screen ou tmux, você cria uma sessão persistente no servidor — como um “forno que continua ligado” mesmo quando você sai da cozinha.
Passo a passo: Como usar screen (recomendado para iniciantes)
Vamos usar o screen — ele é mais simples e perfeito para quem está começando. Vamos lá:
Conecte-se ao seu servidor via SSH (use seu painel painel.gehost.com.br para ver suas credenciais).
Verifique se o screen está instalado. Digite no terminal:
screen -v
Se aparecer uma versão, está tudo certo. Se não, seu plano pode não permitir instalação de pacotes. Nesse caso, use o tmux (veja mais abaixo).
Crie uma nova sessão com um nome fácil de lembrar. Por exemplo:
screen -S meu_processo
Isso cria uma sessão chamada meu_processo. Você pode escolher qualquer nome.
Execute o comando que você quer manter rodando. Por exemplo:
python3 meu_script.py
Seu script começou a rodar. Agora, mantenha a sessão ativa.
Pressione Ctrl + A, depois D (isso significa “desconectar da sessão, mas deixar rodando”).
Seu terminal volta ao normal, mas o processo continua no servidor!
Para voltar à sessão depois, digite:
screen -r meu_processo
Se tiver mais de uma sessão, use screen -ls para ver todas as sessões ativas.
Alternativa: tmux (para quem gosta de mais controle)
Se o screen não estiver disponível, o tmux é uma ótima alternativa. Funciona de forma parecida:
Crie uma sessão:
tmux new -s meu_processo
Execute seu comando (ex: node app.js).
Pressione Ctrl + B, depois D para "detacher" (desconectar).
Para voltar, use:
tmux attach -t meu_processo
Dicas do Sensei da GeHost 🌿
Use nomes claros para suas sessões, como backup_diario, servidor_api ou monitoramento. Isso evita confusão.
Se o processo for longo, use o nohup como bônus (mas screen/tmux é mais poderoso).
Se precisar de ajuda, entre em contato com nosso suporte (30 dias grátis após a entrega). Estamos aqui para te ajudar!
Seu plano GeHost é de hospedagem compartilhada — então, use essas ferramentas com responsabilidade. Evite processos que consumam muitos recursos por muito tempo.
Como verificar se o processo está rodando?
Depois de deixar rodando, você pode verificar no terminal com:
ps aux | grep nome_do_seu_processo
Isso mostra todos os processos ativos. Se o seu aparecer, está no ar!
Imagens de apoio
Para te ajudar a visualizar, aqui estão alguns momentos-chave:
Se precisar de ajuda com qualquer passo, não hesite em nos procurar. Estamos aqui com um sorriso e um coração de cliente. 💚
Até a próxima, com muito carinho,
Sensei da GeHost
Grupo: G e Soluções e Eventos LTDA (CNPJ: 46.647.904/0001-04) — entexp.com.br