Como usar 'screen' ou 'tmux' para manter processos rodando mesmo depois de fechar o SSH
Olá, viajante do servidor! 👋
Se você já usou o SSH para conectar-se ao seu servidor na GeHost e fechou a sessão, já deve ter percebido que alguns processos pararam de rodar — como um script de backup, um servidor de aplicação ou um comando de longa execução.
É aqui que entra o Screen e o tmux — duas ferramentas poderosas que permitem que você "salve" um processo no servidor, mesmo depois de fechar o terminal.
Imagine que você está cozinhando um prato especial. Se o fogão desligar por acidente, o prato queimará. Mas se você deixar o fogão ligado e sair da cozinha com um "guarda-fogo" (como o screen ou tmux), o prato continua cozinhando — mesmo sem você estar lá.
Por que usar screen ou tmux?
- Evita que processos sejam interrompidos ao fechar o SSH.
- Permite voltar a uma sessão anterior, como se nunca tivesse saído.
- É ideal para tarefas longas, como atualizações, backups ou testes de aplicação.
Passo a passo: Como usar screen (recomendado para iniciantes)
Os dois comandos funcionam de forma parecida. Vamos começar com screen, que é mais simples para quem está começando.
Conecte-se ao seu servidor via SSH. Você pode usar o terminal do seu computador, o painel da GeHost ou qualquer cliente SSH (como Putty ou Termius).
Digite o comando para iniciar uma nova sessão do screen:
screen -S meu_processo
Substitua meu_processo por um nome que lembre o que você está fazendo (ex:
backup,app_server,importacao).Agindo como se fosse um terminal normal, execute o comando que você quer que continue rodando. Por exemplo:
python3 meu_script.py
ou
npm start
Para sair da sessão sem interromper o processo, pressione:
Ctrl + A, depois Ctrl + D
Sim, é um pouco estranho no começo, mas é padrão. Isso "desanexa" a sessão do screen, deixando o processo rodando no servidor.
Depois de fechar o SSH, o processo continua rodando. Quando quiser voltar, basta se conectar novamente ao servidor e digitar:
screen -r meu_processo
Se tiver mais de uma sessão aberta, use:
screen -ls
para ver todas as sessões ativas, depois escolha a que quer retomar.
Usando tmux (alternativa avançada)
Se você quiser algo mais moderno e flexível, o tmux é uma ótima escolha. Funciona de forma semelhante, mas com mais recursos.
- Conecte-se ao servidor via SSH.
- Inicie uma sessão com:
tmux new -s meu_processo
- Execute seu comando (ex:
python3 app.py). - Para sair sem parar o processo, pressione:
Ctrl + B, depois D
- Para voltar à sessão mais tarde:
tmux attach -t meu_processo
- Para ver todas as sessões ativas:
tmux ls
Dicas importantes (do Sensei)
- Nomeie suas sessões com algo claro, como
backup,webserverouimportacao. Assim, você não se perde. - Se o servidor reiniciar, os processos continuam rodando — desde que não tenham sido interrompidos por erro ou falha de sistema.
- Não use screen ou tmux para processos que dependem de interação constante (como um chat em tempo real). Eles são para tarefas que podem rodar em segundo plano.
- Se precisar parar um processo, use
Ctrl + Cdentro da sessão ativa — não feche o SSH enquanto ele está rodando.
Como saber se está funcionando?
Depois de iniciar um processo com screen ou tmux, você pode verificar se ele está rodando com comandos como:
ps aux | grep python
ps aux | grep node
Se vir o processo aparecendo na lista, ele está vivo no servidor — mesmo com o SSH fechado!
Imagem de apoio: Acessando o cPanel (para gerenciar arquivos ou backups)
Se precisar acessar arquivos ou gerenciar backups depois, use o painel da GeHost com o login que você já tem.
Quer mais ajuda?
Se tiver dúvidas, não hesite em nos procurar. Nosso suporte está disponível por 30 dias após a entrega — e estamos aqui para te ajudar com tudo, desde configurações até boas práticas de segurança.
Se precisar de um exemplo prático com seu próprio script, é só pedir. Vamos juntos, passo a passo. 💪
Com carinho,
Sensei da GeHost
Grupo: G e Soluções e Eventos LTDA (CNPJ: 46.647.904/0001-04)