Где volrix.pm хранит файлы: по умолчанию в PostgreSQL, по выбору в S3, SMB, WebDAV, каталоге или внешней PostgreSQL. Подключение, перенос и резервирование.
Обновлено 29.10.2026
Экран определяет, где физически лежит содержимое файлов: вложения, документы Диска, файлы писем и согласований, печатные формы, логотипы. По умолчанию все хранится в основной базе PostgreSQL и попадает в резервную копию вместе с данными - для большинства установок этого достаточно. Внешнее хранилище подключают, когда файлов много и база разрастается или организация держит файлы на отдельной системе хранения.
Где находится: «Администрирование» → «Настройки продукта» → «Хранилище файлов». Заголовок экрана - «Внешнее хранилище».
При любом варианте сведения о файле - имя, тип, размер, версии, права доступа и то, где он лежит, - остаются в основной базе. Во внешнее хранилище уходит только содержимое. Пароли и ключи хранятся в базе зашифрованными ключом SECRET_KEY из .env. При повторном сохранении поле пароля можно оставить пустым: подсказка «Задан, оставьте пустым чтобы не менять» означает, что прежнее значение сохранится.
«Базовый путь» - путь внутри контейнеров сервера, а не на вашем компьютере. Каталог должен быть смонтирован томом в контейнеры backend и scheduler (в docker-compose.release.yml). Если указать несмонтированный путь, проверка пройдет - система сама создаст каталог внутри контейнера, - но файлы окажутся в контейнере и пропадут при его пересоздании, например при обновлении.
При переносе файл удаляется из источника: из основной базы - содержимое (сведения остаются), из прежнего внешнего хранилища - сам объект. Размер базы на диске сам не уменьшается: освободившееся место PostgreSQL использует повторно, а вернуть его системе можно командой VACUUM FULL в окно обслуживания.
Из одного внешнего хранилища в другое переезжают так же: выберите новый вариант, сохраните, проверьте и нажмите «Подключить и перенести файлы».
«Отключить (вернуть в PostgreSQL)» и подтвердите. Активным сразу становится «Внутреннее (PostgreSQL)», файлы переносятся обратно в фоне и удаляются из внешнего хранилища. Перед этим убедитесь, что на диске сервера хватит места на все файлы и что внешнее хранилище доступно: файл, который не удалось прочитать, остановит перенос.
Появляется блок «Ошибка миграции» с текстом. Активным при этом уже считается новое хранилище: часть файлов лежит в старом месте, часть в новом, и каждый читается оттуда, где он фактически находится. Устраните причину по тексту - сеть, права на запись, место, пароль. Повторить перенос кнопкой «Подключить и перенести файлы» нельзя, этот вариант уже активен. Нажмите «Отключить (вернуть в PostgreSQL)», дождитесь окончания и подключите хранилище заново. Не удаляйте данные в старом месте, пока «Файлов по бэкендам» не покажет там 0.
Копии базы и хранилища должны совпадать по времени: восстановленная база ссылается на файлы, которых может не оказаться в более старой копии хранилища. Снимайте копию хранилища сразу после ночной копии базы (по умолчанию в 03:00) и храните столько же дней. Встроенное копирование внешнее хранилище не забирает, даже если на экране копий есть счетчик «MinIO-архивы», а самодиагностика проверяет только встроенное хранилище.
До переноса выберите 5-10 файлов разных типов и размеров, скачайте их и сохраните контрольные суммы, например командой sha256sum. После переноса скачайте те же версии и сравните суммы. Список имен ничего не доказывает: он читается из основной базы, даже если содержимое недоступно.
Просмотр - право storage.read («Просмотр настроек хранилища»), изменение и перенос - storage.manage («Изменение хранилища и перенос файлов»). Право manage нужно и для кнопок «Проверить подключение» и «Сохранить настройки». По умолчанию оба права только у администратора системы. Кнопки на экране показываются и тому, у кого есть только просмотр, но сервер без права manage ответит отказом. Каждое переключение хранилища записывается в журнал аудита с модулем storage.
Что входит в копию и как проверить восстановление.
Файлы, версии и доступ глазами пользователя.
Проверка хранилища и копий.