Files
crm.clientright.ru/daily_backup.sh

34 lines
1.1 KiB
Bash
Raw Normal View History

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