Como usar screen ou tmux para manter processos rodando após fechar o SSH
Olá, viajante do servidor! 🌟
Se você já usou o SSH para conectar ao seu servidor da GeHost e deixou algum processo rodando — como um script, um servidor de aplicação ou uma atualização de dados — e depois fechou a conexão, provavelmente percebeu que o processo parou. 😔
Não se preocupe! Isso é comum… mas tem uma solução simples e poderosa: usar screen ou tmux. São ferramentas que criam sessões persistentes no servidor, como se fossem uma "janela" que continua funcionando mesmo quando você se desconecta.
Por que usar screen ou tmux?
Imagine que você está executando um comando que leva 30 minutos para terminar. Se você fechar o terminal ou perder a conexão, o processo morre. Com screen ou tmux, o processo continua rodando no servidor — mesmo que você vá tomar um café, dormir ou trocar de computador. 🍵
Passo a passo: Como usar screen (recomendado para iniciantes)
Vamos aprender com calma. A GeHost já tem o screen instalado. Vamos lá!
Conecte-se ao seu servidor via SSH. Se você não sabe como fazer, veja nosso guia “Como acessar o servidor via SSH” no nosso Centro de Ajuda.
Digite o comando abaixo para criar uma nova sessão chamada
minha_sessao:screen -S minha_sessaoEsse comando cria uma nova janela virtual no servidor. Você já está dentro dela!
Agore, execute o comando que você quer manter rodando. Por exemplo:
python3 meu_script.pySeu script começou a rodar. Observe que ele está executando em segundo plano, mesmo que você não veja a saída.
Para sair da sessão sem parar o processo, pressione:
- Ctrl + A, depois Ctrl + D
Essa combinação de teclas é o "comando de saída segura" do
screen. Você volta ao seu terminal local, mas o processo continua rodando no servidor.Depois de se desconectar, você pode voltar à sessão a qualquer momento com:
screen -r minha_sessaoSe a sessão estiver em uso em outro lugar, use:
screen -r -d minha_sessaoIsso força a conexão e remove a sessão antiga.
Como usar tmux (alternativa mais moderna)
Se você gosta de ferramentas mais atuais, tmux é uma ótima escolha. Funciona de forma parecida, mas com sintaxe um pouco diferente.
Crie uma nova sessão com:
tmux new -s minha_sessaoExecute seu comando, como antes:
python3 meu_script.pyPara sair da sessão sem parar o processo, pressione:
- Ctrl + B, depois D
Pronto! Você está de volta ao terminal local.
Para voltar à sessão, use:
tmux attach -t minha_sessao
Dicas do Sensei da GeHost
Use nomes descritivos para suas sessões, como
backup_rodandoouservidor_api. Isso ajuda a lembrar o que cada uma faz.Se você tiver várias sessões abertas, veja todas com:
screen -lsoutmux list-sessionsIsso mostra uma lista de sessões ativas.
Se precisar parar um processo, use
Ctrl + Cdentro da sessão (oukillno terminal).
Quer ver isso na prática?
Se quiser, abra o cPanel e verifique se seu script está rodando em um diretório como public_html ou scripts. Você pode até verificar logs com o Gerenciador de Arquivos (veja abaixo).
Resumo rápido
✅ Use screen -S nome_da_sessao para começar.
✅ Execute seu comando.
✅ Saia com Ctrl + A + Ctrl + D (ou Ctrl + B + D em tmux).
✅ Volte com screen -r nome_da_sessao.
Com isso, você domina um dos segredos mais poderosos do servidor. Parabéns, guerreiro do código! 🛡️💻
Se tiver dúvidas, estamos aqui. É só chamar. 😊