From 6eb202110a7d9a8cb5d27481097adc3c0460c4f4 Mon Sep 17 00:00:00 2001 From: ada Date: Tue, 3 Mar 2026 15:28:47 +0300 Subject: [PATCH] feat(readme): enhance backup instructions and profile structure for Restic --- README.md | 124 +++++++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 122 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 9b600db..07d4f84 100644 --- a/README.md +++ b/README.md @@ -11,5 +11,125 @@ mkdir -p ~/.ssh/sockets stow -t ~ */ ``` -Дополнение: -yandex.ru, devel.mephi.ru, mephi.ru, *.ada-dev.ru, 192.168.1.0/24, ada-dev.ru, disk.yandex.ru, sogaz.ru, gosuslugi.ru, vk.com, wifi.mephi.ru, market.yandex.ru, tbank.ru, practicum.yandex.ru, practicum.yandex, reddit.com \ No newline at end of file +## Resticprofile: Резервные копии + +Конфигурация автоматического резервного копирования данных на Яндекс.Диск через rclone. + +### На уже настроенной машине + +После синхронизации dotfiles резервные копии начнут создаваться автоматически по расписанию. Возможные команды: + +**Статус и информация:** +```bash +resticprofile status # список всех профилей и их статуса +resticprofile profiles # показать все доступные профили +resticprofile show [profile] # подробно о профиле +``` + +**Создание резервной копии вручную:** +```bash +resticprofile backup # backup для всей группы 'all' +resticprofile -n dotfiles backup # backup определённого профиля (напр. dotfiles) +resticprofile -n projects backup # backup проектов +``` + +**Просмотр снимков:** +```bash +resticprofile snapshots # список всех снимков +resticprofile -n dotfiles snapshots # снимки конкретного профиля +``` + +**Очистка старых снимков:** +```bash +resticprofile forget # удалить старые снимки согласно политике +resticprofile -n dotfiles forget # очистить конкретный профиль +``` + +**Восстановление данных:** +```bash +resticprofile -n dotfiles restore latest /tmp/restore # восстановить в /tmp/restore +resticprofile -n dotfiles restore /path # конкретный снимок +``` + +**Проверка целостности:** +```bash +resticprofile -n dotfiles check # проверить репозиторий +``` + +### На новой машине + +1. **Клонизация dotfiles:** + ```bash + git clone ~/.dotfiles + cd ~/.dotfiles + mkdir -p ~/.ssh/sockets + ``` + +2. **Развёртывание конфигов (stow):** + ```bash + stow -t ~ */ + ``` + Это разместит конфиги из `restic/.config/resticprofile/` в `~/.config/resticprofile/` + +3. **Установка rclone и resticprofile** (если нет): + ```bash + # rclone (для работы с облаком) + curl https://rclone.org/install.sh | sudo bash + + # resticprofile (управление бэкапами) + # или через пакетный менеджер вашей системы + ``` + +4. **Настройка rclone** (нужно один раз): + ```bash + rclone config + # Добавить remote 'yadisk' для Яндекс.Диска + # Использовать OAuth или AppPassword для авторизации + ``` + +5. **Установка пароля для репозитория restic:** + Убедитесь, что файл `~/.config/resticprofile/pass.txt` содержит пароль для шифрования бэкапов (он же, что на основной машине). + +6. **Проверка подключения к существующему репозиторию:** + ```bash + resticprofile -n dotfiles snapshots # проверить доступ к репозиторию + ``` + Если вывод показывает список снимков — подключение работает. + +7. **Восстановление данных из последних бэкапов:** + ```bash + # Восстановить kritical данные (dotfiles, конфиги, SSH) + resticprofile -n dotfiles restore latest / + + # Или выборочно в временную папку для проверки + resticprofile -n dotfiles restore latest /tmp/restore + ``` + +8. **Включение в systemd** (опционально, для автозапуска): + ```bash + resticprofile install + resticprofile schedule + ``` + +### Структура профилей + +| Профиль | Источник | Частота | Назначение | +|---------|----------|---------|-----------| +| **dotfiles** | ~/.dotfiles, ~/.config, ~/.ssh | Каждые 6 часов | Критичные конфигурационные файлы | +| **projects** | ~/Documents/Projects | Каждый час | Код и проекты (меняются часто) | +| **vaults** | ~/Documents/Vaults | Каждый час | Важные данные и пароли | +| **files** | ~/Documents/Files | Ежедневно в 02:15 | Документы | +| **pictures** | ~/Pictures, ~/Videos | По групповому расписанию | Фотографии и видео | + +**Политика хранения:** +- Последние 10 снимков (общая) +- Ежедневные (7 дней) +- Еженедельные (4 недели) +- Ежемесячные (6 месяцев) +- Профиль `dotfiles`: более агрессивная политика (28 часов, 30 дней, 12 месяцев) + +### Полезные параметры конфига + +- `check-before: false` — не проверять целостность перед бэкапом (для скорости) +- `use-fs-snapshot: false` — не использовать снимки файловой системы +- `.resticignore` — исключает тяжёлые зависимости (node_modules, venv, target и т.д.)