Files
2026-02-19 08:21:06 -03:00
..
2026-02-19 08:21:06 -03:00
2026-02-18 17:06:56 -03:00

Script de Gerenciamento de Backup

Script para gerenciamento e rotação de backups em servidores FTP.

Funcionalidades

  • Varredura Dinâmica: Detecta automaticamente novas pastas de usuários em /home/ftpuser.
  • Organização Plana: Arquivos antigos são movidos para antigos/usuario/, preservando a estrutura original.
  • Limpeza Automática:
    • Arquivos com mais de 15 dias são movidos para a pasta de arquivamento.
    • Arquivos na pasta de arquivamento com mais de 60 dias são excluídos permanentemente.
    • Logs de execução com mais de 30 dias são removidos.
  • Logs Detalhados: Gera logs diários em /home/ftpuser/logs/.

Instalação e Uso

1. Dependências

O script utiliza apenas bibliotecas padrão do Python 3. Certifique-se de ter o Python 3 instalado:

sudo apt update
sudo apt install python3

2. Configuração do Cron

Adicione a seguinte linha ao crontab (crontab -e ou /etc/crontab) para executar o script diariamente (ex: meia-noite):

0 0 * * * root /usr/bin/python3 /usr/local/sbin/manage_backups.py

3. Parametrização e Filtros

As configurações podem ser ajustadas no topo do arquivo manage_backups.py:

Retenção:

DIAS_MOVER = 15           # Dias antes de mover para 'antigos'
DIAS_EXCLUIR_ANTIGOS = 60 # Dias antes de excluir permanentemente de 'antigos'
DIAS_RETENCAO_LOGS = 30   # Dias de retenção dos logs

Filtros (Ignorar Pastas e Arquivos): Você pode configurar pastas e extensões que o script deve ignorar completamente (não mover nem excluir):

# Pastas para ignorar na varredura
DIRETORIOS_IGNORAR = ['antigos', 'logs', 'temp']

# Extensões para ignorar (ex: executáveis, isos)
EXTENSOES_IGNORAR = ['.exe', '.iso']