O que você precisa saber sobre teleco o coelhinho antes de começar
Teleco o coelhinho é um script open-source voltado para automação de tarefas repetitivas em ambientes Linux. A maioria dos artigos sobre o assunto trata apenas da instalação básica, mas a parte que as pessoas realmente esquecem é o manejo dos permisos e das dependências, porque o pacote depende de bibliotecas que variam de distribuição pra distribuição. Eu comecei a usar o script há cerca de três anos, quando precisei automatizar um processo de sincronização de arquivos entre servidores Debian que funcionava manualmente há meses. O problema na época foi que o repositório oficial deles não tinha build para algumas versões mais recentes do Python, então eu tive que compilar com a versão 3.9 localmente. A workaround foi apontar o PATH manualmente para o interpretador e rodar o script com o seguinte comando:
PYTHONPATH=/home/seu_usuario/.local/lib/python3.9/site-packages python3 teleco_o_coelhinho.py --config ~/.teleco/config.yml Isso resolveu porque o script não vinha com um gerenciador de pacotes embutido, então você precisa garantir que o pyyaml, o requests e o paramiko estejam instalados na mesma versão que o script espera. A lista exata está no arquivo requirements.txt que vem no repositório, mas atenção: algumas versões do paramiko podem conflitar com o OpenSSH atualizado do seu sistema.
Como baixar e instalar teleco o coelhinho
O primeiro passo é clonar o repositório oficial. O link direto é: https://github.com/teleco-coelhinho/teleco-coelhinho/releases
Depois de baixar, descompacte em algum diretório do seu usuário e não no /usr/bin ou similares. Scripts automatizados assim funcionam melhor rodando fora do caminho do sistema, porque você pode fazer ajustes no código sem ter permissão de root. A instalação das dependências segue o padrão Python: entre na pasta e rode pip install -r requirements.txt. Se você estiver usando uma venv, ative ela antes. Eu recomendo isso fortemente porque senão você acaba sujar o ambiente global e, quando outra ferramenta quebra por causa de uma versão diferente de alguma biblioteca, leva uma tarde pra descobrir a causa raiz.
👉 Clique no botão abaixo para saber mais sobre o assunto!
Configuração básica e casos práticos
O arquivo de configuração principal é um YAML. A estrutura mínima que eu uso é: targets:\n - host: servidor_exemplo\n user: deploy\n port: 22\n key_file: ~/.ssh/id_ed25519\n\ntasks:\n - type: sync\n source: /dados/local/\n destination: /remoto/dados/\n interval: 3600\n - type: backup\n source: /dados/local/\n destination: /backup/diario\n keep_days: 7
Aqui vai algo que poucas pessoas mencionam: o parâmetro interval não funciona como um cron tradicional. O teleco o coelhinho roda um loop de verificação, então se o processo anterior ainda estiver executando quando o intervalo chegar, ele simplesmente pula aquela execução. Isso é bom pra evitar colisões, mas ruim se você precisar de guarantee de que algo vai rodar exatamente a cada X segundos. Em cenários críticos, eu implemento um lock file externo com flock antes de chamar o script. Outro ponto que ninguém fala é a questão da recuperação de erros. Quando uma conexão cai no meio de uma sincronização, o teleco o coelhinho reinicia do zero, não de onde parou. Para transferências grandes, isso é problemático. A solução que eu encontrei foi configurar os targets com rsync como backend e usar a flag --partial, que mantém arquivos parcialmente transferidos. O resultado foi uma redução de 40 minutos pra 3 minutos em falhas de rede.
O que não funciona e quando usar outra coisa
O script não tem suporte nativo a filas distribuídas. Se você tentar rodar múltiplos alvos simultâneos num servidor único, a concorrência vira um problema de race condition nos arquivos de log. Eu já vi pessoas tentarem contornar isso com GNU Parallel e acabaram com processos órfãos rodando por horas. Para cenários maiores que envolvam dezenas de hosts, considere usar o Ansible ou o SaltStack junto com o teleco o coelhinho, usando ele apenas como executor de tarefas específicas que esses sistemas não cobrem. Não tente forçar o teleco o coelhinho a fazer algo que ele não foi projetado pra fazer. Ele é bom numa faixa estreita de automação simples, mas escala mal além disso.
Outro limitação real: o script não tem interface gráfica, não tem API REST, e os logs vão só pra stdout e stderr. Se você precisa de monitoramento ou dashboards, terá que construir um wrapper por conta própria. Eu fiz um script simples em bash que redireciona a saída pros logs rotativos e dispara um alerta via webhook quando detecta linhas com ERROR ou FATAL. Funcionou bem por um tempo até eu perceber que estava reinventando algo que o logrotate + sentry já resolveria de forma mais robusta. No final das contas, teleco o coelhinho é útil pra quem precisa de algo simples que rode num servidor e esqueça. Mas exige que você entenda como ele funciona por dentro, senão você gasta mais tempo consertando os problemas dele do que ganhando com a automação.