3x-ui3x-ui
Эксплуатация

Резервное копирование и восстановление

Создавайте резервные копии базы данных и сертификатов 3x-ui и восстанавливайте их вручную или через Telegram-бота.

Вся ваша конфигурация — входящие подключения, клиенты, настройки — хранится в базе данных панели. Регулярно создавайте резервные копии, чтобы иметь возможность восстановления или переноса.

Что копировать

  • База данных — по умолчанию SQLite в /etc/x-ui/x-ui.db (или ваша база данных PostgreSQL, если вы используете этот бэкенд).
  • Сертификаты — всё, что находится в /root/cert/ (или там, где вы храните сертификаты TLS).

Ручное резервное копирование

Вы можете скачать резервную копию из обзорной страницы панели или скопировать файл базы данных напрямую с сервера:

copy the SQLite database
cp /etc/x-ui/x-ui.db /root/x-ui-backup-$(date +%F).db

Чтобы выполнить восстановление, остановите панель, верните базу данных на место и снова запустите панель.

По возможности восстанавливайте резервную копию на той же мажорной версии, с которой она была создана. При переходе между мажорными версиями дайте панели выполнить миграции, а не навязывайте старую схему.

Резервное копирование через Telegram

Если вы настроили Telegram-бота, включите tgBotBackup, чтобы прикреплять резервную копию к периодическому отчёту (по расписанию tgRunTime, по умолчанию ежедневно). Бот отправляет в чат администратора как базу данных, так и config.json Xray, поэтому у вас всегда будет копия за пределами сервера. Администраторы также могут запросить резервную копию по требованию через меню бота.

Дамп / восстановление SQLite

Команда x-ui migrate-db преобразует базу данных SQLite в обычный текстовый дамп SQL и обратно (удобно для просмотра или переноса между машинами):

x-ui migrate-db --dump /root/x-ui.sql       # SQLite -> SQL text
x-ui migrate-db --restore /root/x-ui.sql     # SQL text -> SQLite

Чтобы перейти на PostgreSQL, смотрите раздел База данных.

Каким бы методом вы ни пользовались, храните резервные копии за пределами сервера и периодически проверяйте восстановление — непроверенная резервная копия не является резервной копией.

On this page