SSH & Avançado 12 visualizações

Como usar screen ou tmux para manter processos rodando após fechar o SSH

Ver no WHMCS

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á!

  1. 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.

  2. Digite o comando abaixo para criar uma nova sessão chamada minha_sessao:

    screen -S minha_sessao

    Esse comando cria uma nova janela virtual no servidor. Você já está dentro dela!

  3. Agore, execute o comando que você quer manter rodando. Por exemplo:

    python3 meu_script.py

    Seu script começou a rodar. Observe que ele está executando em segundo plano, mesmo que você não veja a saída.

  4. 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.

  5. Depois de se desconectar, você pode voltar à sessão a qualquer momento com:

    screen -r minha_sessao

    Se a sessão estiver em uso em outro lugar, use:

    screen -r -d minha_sessao

    Isso 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.

  1. Crie uma nova sessão com:

    tmux new -s minha_sessao
  2. Execute seu comando, como antes:

    python3 meu_script.py
  3. Para sair da sessão sem parar o processo, pressione:

    • Ctrl + B, depois D

    Pronto! Você está de volta ao terminal local.

  4. Para voltar à sessão, use:

    tmux attach -t minha_sessao

Dicas do Sensei da GeHost

  • Use nomes descritivos para suas sessões, como backup_rodando ou servidor_api. Isso ajuda a lembrar o que cada uma faz.

  • Se você tiver várias sessões abertas, veja todas com:

    screen -ls ou tmux list-sessions

    Isso mostra uma lista de sessões ativas.

  • Se precisar parar um processo, use Ctrl + C dentro da sessão (ou kill no 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).

Tela do Gerenciador de Arquivos do cPanel com pastas como public_html e scripts

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. 😊

Precisa de Ajuda?

Nossa equipe está pronta para resolver suas dúvidas.