Initial commit
This commit is contained in:
Executable
+54
@@ -0,0 +1,54 @@
|
||||
#!/bin/bash
|
||||
# pull-backup.sh - Script para baixar backups do servidor para seu PC
|
||||
# Uso: ./pull-backup.sh
|
||||
# Agendar no crontab do SEU PC: 0 3 * * * /caminho/para/pull-backup.sh
|
||||
|
||||
set -e
|
||||
|
||||
# ============ CONFIGURAÇÃO ============
|
||||
# Preencha com seus dados
|
||||
SERVER_USER="usuario" # Usuário SSH no servidor
|
||||
SERVER_HOST="seu-servidor.com" # IP ou domínio do servidor
|
||||
SERVER_BACKUP_DIR="/var/backups/minio" # Mesmo diretório do backup-minio.sh
|
||||
LOCAL_BACKUP_DIR="$HOME/backups/minio" # Onde salvar no seu PC
|
||||
KEEP_LOCAL_DAYS=30 # Quanto tempo manter no seu PC
|
||||
|
||||
# ============ CÓDIGO ============
|
||||
mkdir -p "$LOCAL_BACKUP_DIR"
|
||||
|
||||
echo "=========================================="
|
||||
echo "Baixando backups do MinIO"
|
||||
echo "De: $SERVER_USER@$SERVER_HOST:$SERVER_BACKUP_DIR"
|
||||
echo "Para: $LOCAL_BACKUP_DIR"
|
||||
echo "Iniciado em: $(date)"
|
||||
echo "=========================================="
|
||||
|
||||
# Baixar backups (somente os que ainda não temos)
|
||||
echo "Sincronizando arquivos..."
|
||||
rsync -avz --progress \
|
||||
-e "ssh -o StrictHostKeyChecking=no" \
|
||||
"$SERVER_USER@$SERVER_HOST:$SERVER_BACKUP_DIR/" \
|
||||
"$LOCAL_BACKUP_DIR/"
|
||||
|
||||
# ============ LIMPAR BACKUPS ANTIGOS (LOCAL) ============
|
||||
echo ""
|
||||
echo "Limpando backups locais com mais de $KEEP_LOCAL_DAYS dias..."
|
||||
find "$LOCAL_BACKUP_DIR" -name "minio-backup-*.tar.gz" -mtime +$KEEP_LOCAL_DAYS -delete
|
||||
|
||||
# ============ RESUMO ============
|
||||
echo ""
|
||||
echo "=========================================="
|
||||
echo "Backups locais:"
|
||||
ls -lh "$LOCAL_BACKUP_DIR"/minio-backup-*.tar.gz 2>/dev/null | tail -5
|
||||
echo ""
|
||||
echo "Espaço usado:"
|
||||
du -sh "$LOCAL_BACKUP_DIR"
|
||||
echo ""
|
||||
echo "Concluído em: $(date)"
|
||||
echo "=========================================="
|
||||
|
||||
# ============ ALERTAS ============
|
||||
BACKUP_COUNT=$(ls -1 "$LOCAL_BACKUP_DIR"/minio-backup-*.tar.gz 2>/dev/null | wc -l)
|
||||
if [ "$BACKUP_COUNT" -eq 0 ]; then
|
||||
echo "⚠️ ATENÇÃO: Nenhum backup encontrado localmente!"
|
||||
fi
|
||||
Reference in New Issue
Block a user