ProyectoPython_2/backup_script.sh

44 lines
1.5 KiB
Bash

#!/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