Skip to content

freize/remnawave-backup-restore

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

62 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Backup & Restore

Caution

ЭТОТ СКРИПТ ПРЕДСТАВЛЕН ДЛЯ ВЫПОЛНЕНИЯ ЗНАЧИМЫХ ОПЕРАЦИЙ ПО ОБСЛУЖИВАНИЮ БАЗЫ ДАННЫХ REMNAWAVE. ХОТЯ ОН ТЩАТЕЛЬНО ПРОВЕРЕН, ЕГО ФУНКЦИИ ЗАТРАГИВАЮТ ПОЛНОСТЬЮ БАЗУ ДАННЫХ И ЕЕ КОМПОНЕНТЫ. РЕКОМЕНДУЕТСЯ ВНИМАТЕЛЬНО СЛЕДОВАТЬ ИНСТРУКЦИЯМ ПО ХОДУ ВЫПОЛНЕНИЯ СКРИПТА ПЕРЕД ВЫПОЛНЕНИЕМ ЛЮБЫХ КОМАНД.

Warning

В РАМКАХ ПРЕДОСТОРОЖНОСТИ ИСПОЛЬЗУЙТЕ ВОССТАНОВЛЕНИЕ НА ТОЙ ЖЕ ВЕРСИИ ПАНЕЛИ, НА КОТОРОЙ СОЗДАВАЛСЯ БЕКАП (ЛИБО ДЕЛАЙТЕ БЕКАП С КРАЙНЕЙ ВЕРСИИ ПАНЕЛИ)

screenshot

Скрипт автоматизирует резервное копирование и производит восстановление базы данных.

Функции:

  • интерактивное меню
  • уведомления напрямую в Telegram бота или в топик группы с прикрепленным бэкапом
  • отправка бекапа в Google Drive (опционально)
  • создание бэкапа вручную
  • настройка автоматического бекапа по расписанию
  • восстановление из бекапа
  • изменение конфигурации
  • обновление скрипта
  • удаление скрипта
  • реализована политика хранения бэкапов (7 дней)

Дополнительные инструкции для методов миграции:

📝 Только панель: переход на новый сервер
  • отредактировать в Cloudflare поддомен панели на новый IP-адрес. А также поддомены остальных сервисов, если они будут размещены на новом сервере
  • установить панель на сервер
  • произвести восстановление БД
  • ссылка доступа к панели будет той, которую вы получили при текущей установке. Логин и пароль будут от старой панели, с которой ранее делался бэкап
  • удалить старое правило для сервисного порта (по умолчанию 2222) на всех нодах и создать новое. Это нужно для того, чтобы панель с новым IP-адресом смогла общаться с ними. Выполните команду на каждой ноде, предварительно заменив OLD_IP и NEW_IP на свои:
ufw delete allow from OLD_IP to any port 2222 && ufw allow from NEW_IP to any port 2222
  • вы великолепны! Остается доустановить и настроить остальные нужные Вам сервисы (например shop, kuma, beszel и прочее)
📝 Панель+нода: переход на новый сервер
  • отредактировать в Cloudflare поддомены панели и "корневой" ноды (которая стоит вместе с панелью) на новый IP-адрес. А также поддомены остальных сервисов, если они будут размещены на новом сервере
  • установить панель+нода на сервер
  • произвести восстановление БД
  • включить доступ к панели через порт 8443 (скрипт от eGames, пункт «Управление доступом к панели»)
  • ссылка доступа к панели будет той, которую вы получили при текущей установке. Логин и пароль будут от старой панели, с которой ранее делался бэкап
  • в управлении нодами найдите корневую, которая стоит вместе с панелью. В ней указан адрес старого сервера. Измените его на новый - нода активируется автоматически
  • теперь закрываем доступ к панели через порт 8443 тем же образом, как открывали
  • удалить старое правило для сервисного порта (по умолчанию 2222) на всех внешних нодах и создать новое. Это нужно для того, чтобы панель с новым IP-адресом смогла общаться с ними. Выполните команду на каждой ноде, предварительно заменив OLD_IP и NEW_IP на свои:
ufw delete allow from OLD_IP to any port 2222 && ufw allow from NEW_IP to any port 2222
  • вы великолепны! Остается доустановить и настроить остальные нужные Вам сервисы (например shop, kuma, beszel и прочее)
📝 Панель+нода: переход на "Только панель", на текущем сервере
  • установить панель на сервер
  • произвести восстановление БД
  • ссылка доступа к панели будет той, которую вы получили при текущей установке. Логин и пароль будут от старой панели, с которой ранее делался бэкап
  • удалить старую "корневую" ноду из панели и связанные с ней инбаунд и хост
  • удалить файл .env-node с сервера панели командой:
rm /opt/remnawave/.env-node
  • вы великолепны! Остается доустановить и настроить остальные нужные Вам сервисы (например shop, kuma, beszel и прочее)
📝 Панель+нода: переход на "Только панель", на новый сервер
  • отредактировать в Cloudflare поддомены панели на новый IP-адрес. А также поддомены остальных сервисов, если они будут размещены на новом сервере
  • установить панель на сервер
  • произвести восстановление БД
  • ссылка доступа к панели будет той, которую вы получили при текущей установке. Логин и пароль будут от старой панели, с которой ранее делался бэкап
  • удалить старую "корневую" ноду из панели и связанные с ней инбаунд и хост
  • удалить файл .env-node с сервера панели командой:
rm /opt/remnawave/.env-node
  • удалить старое правило для сервисного порта (по умолчанию 2222) на всех нодах и создать новое. Это нужно для того, чтобы панель с новым IP-адресом смогла общаться с нодами. Выполните команду на каждой ноде, предварительно заменив OLD_IP и NEW_IP на свои:
ufw delete allow from OLD_IP to any port 2222 && ufw allow from NEW_IP to any port 2222
  • вы великолепны! Остается доустановить и настроить остальные нужные Вам сервисы (например shop, kuma, beszel и прочее)

Установка (требует root):

Important

Скрипт резервирует и восстанавливает исключительно базу данных целиком, а также файлы .env и .env-node (при наличии их в директории /opt/remnawave/ или /root/remnawave/). Бекап и восстановление всех остальных файлов и конфигураций полностью находятся под ответственностью пользователя

curl -o ~/backup-restore.sh https://raw.githubusercontent.com/distillium/remnawave-backup-restore/main/backup-restore.sh && chmod +x ~/backup-restore.sh && ~/backup-restore.sh

Команды:

  • rw-backup — быстрый доступ в меню

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Shell 100.0%