type: standard
aspect: process
title: "Процесс: Бэкап"
version: 1.0.0
date: 2026-02-19
status: active
Версия: 1.0.0
Дата: 2025-11-30
Уровень: У1 (Правила)
| Вопрос | Ответ |
|---|---|
| ПОЧЕМУ? | Данные могут быть потеряны |
| ЗАЧЕМ? | Возможность восстановления |
| ЧТО? | Копии кода, данных, конфигов |
| КТО? | Автоматика (cron) + Инфра (мониторинг) |
| КАК? | См. ниже |
| ЧЕМ? | Git, rclone, cron |
| ГДЕ? | S3 Hub, Яндекс.Диск, GitHub |
| КОГДА? | По расписанию + перед критичными операциями |
| СКОЛЬКО? | 30 дней retention |
УРОВЕНЬ 1: Локальные
├── Где: /var/backups/dev-pro/
├── Что: SSH keys, configs
└── Когда: Вс 03:00
УРОВЕНЬ 2: S3 Hub
├── Где: hub/_backup/
├── Что: Git bundle workspace
└── Когда: Вс 04:00
УРОВЕНЬ 3: Яндекс.Диск
├── Где: yandex:/backups/
├── Что: Копии локальных бэкапов
└── Когда: После локальных
УРОВЕНЬ 4: GitHub
├── Где: github.com/...
├── Что: Код (git push)
└── Когда: После commit
# System backup (Вс 03:00)
0 3 * * 0 /opt/.../backup.sh
# Git bundle (Вс 04:00)
0 4 * * 0 /opt/.../git-backup-s3.sh
| Скрипт | Что делает |
|---|---|
backup.sh |
SSH keys, configs → /var/backups/ |
git-backup-s3.sh |
Git bundle → S3 Hub |
git clone hub/_backup/workspace-YYYY-MM-DD.bundle workspace-restored
tar -xzf /var/backups/dev-pro/backup-YYYY-MM-DD.tar.gz -C /
# Последний бэкап
cat hub/_backup/last-backup.txt
# Список бэкапов
ls -lh hub/_backup/*.bundle
# Размер
du -sh hub/_backup/
Версия: 1.0.0