Pular para o conteúdo principal

Como Executar Tarefas Demoradas no Servidor Linux com a Ferramenta tmux

Administrar servidores Linux muitas vezes envolve a execução de tarefas demoradas, como backups, downloads, compilações ou scripts complexos. Um dos maiores desafios nesses casos é garantir que essas tarefas continuem sendo executadas mesmo quando você se desconecta do servidor. Felizmente, a ferramenta tmux resolve esse problema de forma simples e eficiente.

Neste post, você aprenderá o que é o tmux, como usá-lo para executar tarefas demoradas e algumas dicas para aproveitar ao máximo essa ferramenta poderosa.


O que é o tmux?

O tmux (abreviação de "terminal multiplexer") é uma ferramenta de gerenciamento de sessões de terminal. Ele permite que você:

  • Inicie sessões persistentes de terminal.
  • Desconecte-se do servidor sem interromper os processos em execução.
  • Reconecte-se mais tarde à mesma sessão, retomando de onde parou.
  • Divida uma única janela de terminal em painéis múltiplos.

Por que usar o tmux?

Sem o tmux, processos longos são interrompidos se sua conexão SSH for perdida. Isso pode causar atrasos e frustração, especialmente ao trabalhar remotamente. Com o tmux, as tarefas continuam rodando mesmo que sua conexão seja encerrada.


Como instalar o tmux

O tmux está disponível na maioria das distribuições Linux. Para instalá-lo, use o gerenciador de pacotes da sua distribuição:


  • Debian/Ubuntu:

sudo apt update
sudo apt install tmux

  • CentOS/RHEL:
sudo yum install tmux

  • Arch Linux:
sudo pacman -S tmux

  • Fedora:
sudo dnf install tmux


Como usar o tmux

Aqui está um guia prático para começar a usar o tmux:

1. Inicie uma nova sessão

Para iniciar uma nova sessão no tmux, use:

tmux

Isso abrirá uma nova sessão de terminal dentro do tmux.


2. Execute sua tarefa

Digite o comando que deseja executar. Por exemplo:

python meu_script_demorado.py


3. Desconecte-se da sessão

Para desconectar-se da sessão sem interromper o processo, pressione as teclas:

Ctrl + B, depois D

Isso "desanexa" (detach) a sessão, deixando-a rodando em segundo plano.


4. Reanexe a sessão

Para voltar à sessão e verificar o progresso da tarefa, use:

tmux attach


Se houver várias sessões, você pode listar todas elas com:

tmux list-sessions


E conectar-se a uma sessão específica com:

tmux attach-session -t <nome-da-sessão>

Dicas Avançadas com tmux

  • Nomeie suas sessões: Para facilitar o gerenciamento, dê nomes às sessões ao criá-las:

tmux new -s minha_sessao
  • Divida a tela: No tmux, você pode dividir a janela em múltiplos painéis:
    • Dividir verticalmente:  Ctrl + B, depois %
    • Dividir horizonalmente: Ctrl + B, depois "
  • Navegue entre os painéis: Use:

    Ctrl + B, depois seta (esquerda, direita, cima ou baixo)

Saia de todas as sessões: Para encerrar todas as sessões, use:

tmux kill-server


Conclusão

O tmux é uma ferramenta indispensável para administradores de servidores
Linux e desenvolvedores que precisam executar tarefas demoradas ou
manter processos ativos mesmo após desconexões.

Com este guia, você pode começar a usar o tmux para
melhorar sua produtividade e evitar interrupções.

Se você tiver dúvidas ou dicas adicionais sobre o uso do tmux,
deixe um comentário abaixo! 🚀

Comentários

Postagens mais visitadas deste blog

Como compilar javascript com Sublime Text

Tutorial de como compilar código javascript com o Editor Sublime Text: Primeiro de tudo é necessário baixar e instalar o node js. Agora, no sublime, clique em Tools - Build System - New Build System..., e cole o código abaixo: { "cmd": ["node", "$file"], "selector": "source.js", "working_dir": "${project_path:${folder}}", "path": "C:\\Program Files\\nodejs" } Atenção: Em path, coloque o caminho correto da instalação do nodejs. Usa-se duas barras mesmo, não é erro! Agora tecle Ctrl + S para salvar este arquivo, já será apontado para o diretório correto, basta mudar o nome do arquivo para node. Nome completo do arquivo deverá ser: node.sublime-build. Pronto! Crie um arquivo de teste e vá em Tools - Build System e selecione a opção node . E para compilar tecle Ctrl + B.

Como criar projeto no Laravel especificando a versão do framework

Olá amigos dev's! Este post nos ensina como criar um projeto em um dos frameworks PHP mais utilizados atualmente, o Laravel. A criação é feita via Composer, porém às vezes queremos trabalhar com uma versão específica do framework e se executarmos o comando sem especificar a versão, ele automaticamente instalará a mais recente. Antes de executarmos o comando para criar o projeto, precisamos instalar o framework. Para tal, executamos o seguinte comando: composer global require "laravel/installer" Ao executar o comando acima, o composer irá se encarregar de baixar e instalar os pacotes das dependências do framework. Se for a primeira vez, ele pode demorar alguns minutos! Após finalizado a instalação do Laravel , executamos o comando para criar nosso projeto. Digite: composer create-project --prefer-dist laravel/laravel nome-do-projeto 5.1.* Note que no final do comando está especificado a versão do framework que desejarmos! Referencias:  https://laravel.c...

Traduzindo Aplicação Laravel

Uma dica muito boa para traduzir sua aplicação desenvolvida em PHP no framework Laravel. Primeiro acessamos o link do projeto no Github que contém a biblioteca com mais de 61 idiomas, que é  https://github.com/caouecs/Laravel-lang Há dois modos de fazermos este processo, baixando a biblioteca através do composer ou copiando somente a pasta do idioma que desejamos traduzir. Baixando a biblioteca via Composer: No terminal, digite o comando abaixo e aguarde o fim da instalação: composer require caouecs/laravel-lang Após instalado, a biblioteca ficará no diretório: app\vendor\caouecs. Acessamos esta pasta e dentro da pasta src  teremos as pastas dos respectivos idiomas, basta copiar a pasta desejada e colar em resources\lang. O outro modo é baixarmos o arquivo da biblioteca compactado direto no Github e fazermos o mesmo processo da cópia da pasta do idioma mencionado acima. Feito isto, acessamos o arquivo de configurações em config\app.php , para mudarmos o idioma d...