OpenWRTBackupScript

0
4 месяца назад
README.md

OpenWRT Backup Script

Автоматический скрипт для создания бекапов конфигурации OpenWRT роутеров с загрузкой на Яндекс Диск.

Возможности

  • ✅ Создание бекапов конфигурации OpenWRT через
    sysupgrade -b
  • ✅ Автономная работа роутера с rclone
  • ✅ Прямая загрузка на Яндекс Диск с роутера
  • ✅ Хранение только последних 3 бекапов в облаке
  • ✅ Уведомления в Telegram об успешности/ошибках
  • ✅ Автоматическая очистка временных файлов
  • ✅ Простая настройка прямо в скрипте

Как работает скрипт

  1. Создание бекапа: Использует
    sysupgrade -b
    для создания tar.gz архива конфигурации
  2. Управление облаком: Удаляет старые бекапы, оставляя только последние 3
  3. Загрузка: Копирует новый бекап на Яндекс Диск через rclone
  4. Очистка: Удаляет временные файлы с роутера
  5. Уведомления: Отправляет статус в Telegram (если настроено)

Полная инструкция по установке на OpenWRT

Шаг 1: Установка rclone на роутер OpenWRT

Через SSH подключение к роутеру:

Шаг 2: Настройка rclone для Яндекс Диска

Запустите конфигурацию rclone:

И настройте ваше подключение к Яндекс Диску

Шаг 3: Копирование скрипта на роутер

Создайте папку для скриптов и скопируйте файл:

Вариант 1: Прямое скачивание с GitVerse (рекомендуется)

Шаг 4: Настройка Telegram (опционально)

Как создать бота в Telegram:

  1. Найдите @BotFather в Telegram
  2. Отправьте
    /newbot
  3. Введите имя бота (например, "My Router Bot")
  4. Введите username бота (например, "my_router_backup_bot")
  5. Получите токен бота (строка вида
    123456789:ABCdefGHIjklMNOpqrsTUVwxyz
    )

Как узнать Chat ID:

  1. Добавьте бота в чат или напишите ему в личные сообщения
  2. Перейдите по ссылке:
    https://api.telegram.org/bot[ВАШ_ТОКЕН]/getUpdates
  3. Найдите поле
    "chat":{"id":
    - это ваш Chat ID

Шаг 5: Настройка скрипта

Отредактируйте настройки в начале файла:

Измените параметры:

Шаг 6: Ручная проверка скрипта

Запустите скрипт вручную:

Если все работает, вы увидите:

  • Бекап создается на роутере
  • Загружается на Яндекс Диск и файлы появились в нем.
  • Временные файлы удаляются
  • Уведомление в Telegram (если настроено)

Шаг 7: Автоматизация через cron

Добавьте задачу в cron для запуска каждую неделю в понедельник в 10:00:

Формат времени cron:

  • 0 10 * * 1
    = Минута Час День Месяц День_недели
  • 0
    = минута (0-59)
  • 10
    = час (0-23)
  • *
    = любой день месяца
  • *
    = любой месяц
  • 1
    = понедельник (0=воскресенье, 1=понедельник, ..., 6=суббота)

Другие варианты расписания:

Проверьте установленные задачи:

Перезапустите службу cron:

Примеры уведомлений в Telegram

✅ Успешный бекап:

✅ OpenWRT Backup Completed 📁 File: router-backup-2025-12-13-1430.tar.gz 📍 Location: yandex:Backup/router/router-backup-2025-12-13-1430.tar.gz 🕐 Time: 2025-12-13 14:30:00

❌ Ошибка:

❌ OpenWRT Backup Failed 🚫 Error: Failed to create backup 🕐 Time: 2025-12-13 14:30:00