2026-04-14 17:22:41 +04:00
2026-04-14 13:29:35 +04:00
2026-04-14 13:27:26 +04:00
2026-02-04 04:05:30 +04:00
2026-04-14 16:01:11 +04:00
2026-04-14 17:22:41 +04:00
2026-04-14 13:28:47 +04:00

OpenWrt Backup Manager (OPKG Version)

Автономный набор скриптов для бэкапа и восстановления конфигурации и пакетов на OpenWrt.

Возможности

Бэкап

  • системных конфигов
  • пользовательских файлов
  • списка установленных пакетов (opkg)

Восстановление

  • конфигурации через sysupgrade
  • пакетов из сохранённого списка

Поддержка удалённого хранилища

  • NFS
  • SBM

Очистка старых бэкапов (локально и удалённо)

Структура

.
├── .env                # конфиг-файл
├── backup-manager.sh   # основной скрипт
├── backup-configs.sh   # сбор конфигураций
├── backup-opkg.sh      # работа с пакетами
├── README.md

Настройка

Скопируйте пример настроек:

cp ./.env-example ./.env

Отредактируйте переменные в .env:

Хранилище

STORAGE_TYPE="nfs"   # nfs или smb
S_HOST="nfs.lan"
S_PATH="/mnt/media1/backup"

Для SMB

SMB_USER="guest"
SMB_PASS="guest"

Политика хранения

LOCAL_KEEP=10   # сколько хранить локально
HOST_KEEP=30    # сколько дней хранить удалённо

Что бэкапить

C_LIST="
/etc/config
/etc/xray
/root/.ssh
...
"

Что исключить

C_EXCLUDE="
/opt/.backup-manager/local_backups
/etc/xray/ipset
"

Конфликтующие пакеты

Удаляются перед восстановлением:

H_REPLACE="wpad dnsmasq"

Использование

Создать бэкап

./backup-manager.sh backup

Что происходит:

  • создаётся архив .tar.gz
  • сохраняется список пакетов .lst
  • копируется на удалённое хранилище (если доступно)

Восстановление

./backup-manager.sh restore

Далее интерактивно:

  1. Выбор источника (локальный / удалённый)
  2. Выбор типа:
    • конфигурация
    • пакеты

Как работает бэкап пакетов

Скрипт:

  • определяет пакеты, установленные пользователем
  • исключает зависимости

Зависимости

Для NFS

opkg install nfs-utils kmod-fs-nfs kmod-fs-nfs-v3 kmod-fs-nfs-v4

Для SMB

opkg install cifsmount kmod-fs-cifs

Особенности

  • Используется временная директория: /tmp
  • При восстановлении пакетов:
    • временно правится DNS (Cloudflare)
  • Для восстановления конфигурации используется:
sysupgrade -r backup.tar.gz

Очистка

Автоматически:

  • старые локальные бэкапы
  • удалённые файлы старше HOST_KEEP дней

Пример cron

0 3 * * * /opt/.backup-manager/backup-manager.sh backup
S
Description
No description provided
Readme
86 KiB
Languages
Shell 100%