#!/bin/bash # backup_script.sh # Script de Bash para simular una copia de seguridad en Linux. # Directorio de destino para el backup y logs BACKUP_DIR="/tmp/BackupData" mkdir -p $BACKUP_DIR # Obtener la fecha y hora actual TIMESTAMP=$(date +"%Y%m%d_%H%M%S") LOG_FILE="$BACKUP_DIR/backup_log_$TIMESTAMP.txt" echo "--- Script de Copia de Seguridad Iniciado ($TIMESTAMP) ---" > $LOG_FILE echo "Creando directorio de destino: $BACKUP_DIR" >> $LOG_FILE # Simular el proceso de copia de seguridad (ejemplo: comprimir /var/log) # Nota: Esto puede requerir permisos de sudo si /var/log no es accesible para tu usuario. # Usaremos /tmp para un ejemplo más seguro. echo "Simulando compresión de archivos de ejemplo..." >> $LOG_FILE # Creamos un archivo de ejemplo para copiar si no existe if [ ! -f "/tmp/archivos_a_copiar.txt" ]; then echo "Contenido de prueba" > /tmp/archivos_a_copiar.txt fi # Simulación de la copia real (usando tar para crear un archivo) tar -czf "$BACKUP_DIR/backup_$TIMESTAMP.tar.gz" /tmp/archivos_a_copiar.txt >> $LOG_FILE 2>&1 # Simular la tarea con una pausa sleep 3 # Verificar si el archivo de backup se creó if [ -f "$BACKUP_DIR/backup_$TIMESTAMP.tar.gz" ]; then echo "Copia de seguridad completada con éxito." >> $LOG_FILE EXIT_CODE=0 else echo "ERROR: Falló la creación del archivo de copia de seguridad." >> $LOG_FILE EXIT_CODE=1 fi echo "Log guardado en: $LOG_FILE" >> $LOG_FILE echo "--- Script de Copia de Seguridad Finalizado ---" >> $LOG_FILE # Devolver el código de salida exit $EXIT_CODE