#!/bin/bash ################################################################################ # BACKUP SCRIPT # Realiza backup de modelos y configuración ################################################################################ set -e RED='\033[0;31m' GREEN='\033[0;32m' BLUE='\033[0;34m' NC='\033[0m' SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" PROJECT_DIR="$(dirname "$SCRIPT_DIR")" BACKUP_DIR="$PROJECT_DIR/backups" TIMESTAMP=$(date +%Y%m%d_%H%M%S) log() { echo -e "${BLUE}[$(date '+%H:%M:%S')]${NC} $@"; } log_success() { echo -e "${GREEN}✅ $@${NC}"; } log "Iniciando backup..." mkdir -p "$BACKUP_DIR" # Backup configuración log "Haciendo backup de configuración..." tar -czf "$BACKUP_DIR/config_$TIMESTAMP.tar.gz" \ -C "$PROJECT_DIR" \ config/ \ .env \ requirements.txt \ 2>/dev/null || true # Backup modelos (OPCIONAL - muy grandes) read -p "¿Hacer backup de modelos Ollama? (y/n - muy grande, ~20GB): " -n 1 -r echo if [[ $REPLY =~ ^[Yy]$ ]]; then log "Haciendo backup de modelos (esto tardará)..." tar -czf "$BACKUP_DIR/models_$TIMESTAMP.tar.gz" \ /home/charle/.ollama/models \ 2>/dev/null || true fi # Backup workspace log "Haciendo backup de workspace..." tar -czf "$BACKUP_DIR/workspace_$TIMESTAMP.tar.gz" \ -C "$PROJECT_DIR" \ workspace/ \ 2>/dev/null || true log_success "Backups completados en: $BACKUP_DIR" ls -lh "$BACKUP_DIR"