#!/bin/bash # Простой ежедневный бэкап Git репозитория # Добавить в crontab: 0 2 * * * /var/www/fastuser/data/www/crm.clientright.ru/daily_backup.sh cd /var/www/fastuser/data/www/crm.clientright.ru # Проверяем наличие изменений if ! git diff --quiet || ! git diff --cached --quiet; then echo "$(date): Найдены изменения, создаем бэкап" # Добавляем все изменения git add . # Создаем коммит с временной меткой git commit -m "Daily backup $(date '+%Y-%m-%d %H:%M:%S')" # Создаем архив TIMESTAMP=$(date +"%Y%m%d_%H%M%S") ARCHIVE_NAME="crm_daily_${TIMESTAMP}.tar.gz" tar --exclude='.git' --exclude='cache' --exclude='logs' --exclude='test' \ -czf "/tmp/$ARCHIVE_NAME" . # Перемещаем архив в папку backups mkdir -p backups mv "/tmp/$ARCHIVE_NAME" "backups/" echo "$(date): Бэкап создан: backups/$ARCHIVE_NAME" else echo "$(date): Нет изменений для бэкапа" fi