← Почта · Все разделы

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

Restore требует двух пустых целей: нового NAS-каталога и нового локального Docker volume. Рабочие данные не перезаписываются.


sudo bash mail.sh down

sudo bash mail.sh restore \

  /mnt/omv/work/SMTP/mail-data/backups/BACKUP.tar.gz \

  /mnt/omv/work/SMTP/mail-restored \

  --state-volume mail_restored

sudo bash mail.sh up

Используйте настоящее имя архива. UID/GID берутся из sudo; при входе root укажите --nas-uid 1000 --nas-gid 1000. На новом хосте учитывайте владельца нового NAS-каталога.

Команда проверяет архив на выход за каталог, ссылки и специальные файлы. Blob-файлы извлекаются на NAS от его владельца; конфигурация и секреты — в локальный volume. PostgreSQL создаёт новые базы, затем выполняется pg_restore. Сертификаты, учётные записи и настройки восстанавливаются из архива.

Только после успешного восстановления переключается /etc/mail-stack/location.json. Если доступен systemd, unit автоматически переписывается на новый локальный runtime и новый NAS-путь. --no-systemd отключает этот шаг.

При ошибке восстановления исходная установка сохраняется. Незавершённая цель помечена .restore-incomplete; setup не превращает её в пустую рабочую БД. Повторите восстановление в другие пустые цели после устранения причины.

Перенос старой установки «всё на NAS»

Сначала используйте её прежнюю версию mail.sh backup, затем остановите старый стек. Новая команда restore понимает прежний архив: метаданные и БД импортируются локально, blobs — в новый NAS-каталог. Автоматического перемещения файлов исходного NAS нет.

После восстановления проверьте вход, исходное письмо по IMAP, отправку и резервное копирование. Если сохранившийся исходный клон содержит .mail-stack.json, не удаляйте его для обхода проверки: используйте новый клон и явное восстановление.