
- MODX 2
- MODX 3
- PHP 7.4
- PHP 8.1


Ниже — путь от установленного пакета до ежедневной копии по расписанию. Все команды выполняются из корня сайта; путь к сайту в примерах — /path/to/site.
php core/components/mxbackup/cli/mxbackup.php validate-configКоманда проверяет то, из-за чего копия обычно падает уже в процессе: наличие нужного расширения PHP для выбранного формата, существование и доступность каталога хранения, доступность базы данных и корректность профиля. Ответ Конфигурация корректна. означает, что можно запускать копию.
Та же проверка доступна кнопкой «Проверить конфигурацию» в менеджере. Запустите её после установки пакета и после каждого изменения каталога хранения или формата архива.
Каталог архивов по умолчанию
Если настройка mxbackup.storage_path пуста, архивы складываются в каталог backups рядом с корнем сайта — то есть на уровень выше webroot. Путь внутри webroot, в core/cache или в корне сайта отклоняется до начала работы. В форме профиля можно задать отдельный каталог; пустое поле наследует общую настройку. См. Права и безопасность.
php core/components/mxbackup/cli/mxbackup.php dry-run --profile=devdry-run не читает содержимое файлов и не пишет архив. Он собирает список файлов и таблиц, а для профиля dev дополнительно строит план обезличивания: какие колонки каких таблиц будут подменены и какие таблицы будут очищены целиком. Результат печатается в JSON и попадает в историю запусков.
В менеджере это кнопка «Проверить состав» над вкладками; результат показывается сводкой и сохраняется в «Историю».
Обязательный шаг после правки правил
Проверку состава стоит запускать каждый раз, когда вы добавили в базу свои таблицы с персональными данными или изменили правила обезличивания. Это единственный способ убедиться, что новое правило действительно попало на нужные колонки. См. Обезличивание.
Перед запуском из manager пакет показывает количество и общий размер файлов и свободное место. Для той же оценки из консоли без создания архива:
php core/components/mxbackup/cli/mxbackup.php estimate --profile=prodphp core/components/mxbackup/cli/mxbackup.php backup --profile=prodЧто происходит:
.mxbackup.lock — параллельный запуск получит ошибку Другой backup уже выполняется;.<имя>.part.<расширение> и только после успешного завершения переименовывается в итоговый;tar.gz пишется сразу в gzip-поток: отдельный несжатый TAR на диске не создаётся. Выполняющийся backup можно безопасно остановить в manager либо из второго терминала:
php core/components/mxbackup/cli/mxbackup.php cancelПакет проверяет отмену между порциями дампа, файлами и блоками упаковки, удаляет временные данные и завершает запись истории статусом «Остановлен».
Имя файла: mxbackup-<профиль>-<YYYYMMDD-HHMMSS>.tar.gz (или .zip), где время записано в UTC.
Внутри архива:
| Элемент | Содержимое |
|---|---|
site/ | файлы сайта, пути относительно корня |
database.sql | дамп выбранных таблиц |
mxbackup-manifest.json | версия mxBackup, версия MODX и PHP, профиль и режим, время создания, корень сайта, контрольная сумма database.sql, признак обезличивания, предупреждения и статистика запуска |
15 3 * * * /usr/bin/php /path/to/site/core/components/mxbackup/cli/mxbackup.php backup --profile=prod --no-mailОтдельная задача для очистки старых архивов не нужна: ротация применяется в конце каждого успешного запуска. Команда cleanup пригодится, если правила хранения изменились и нужно применить их прямо сейчас.
От какого пользователя запускать
Запускайте задачу от того же пользователя, от которого работает сайт. Копия, снятая под root, оставит в каталоге архивов файлы, которые веб-пользователь не сможет ни прочитать, ни удалить при ротации.
Готовые профили годятся как отправная точка, но обычно требуется уточнить два момента:
prod уже исключены core/cache/, core/packages/ и assets/cache/; сюда же добавляют каталоги с чужими копиями, логами и крупными выгрузками;Всё это правится во вкладках «Профили» и «Таблицы БД» — см. Профили.
MODX 2: правая кнопка мыши открывает половину функций
В линии для MODX 2 гриды менеджера не показывают кнопок для правки строк: профиль редактируется, правило обезличивания добавляется, а отчёт о запуске и восстановление открываются через контекстное меню строки. В линии для MODX 3 эти действия вынесены кнопками в строку. Полная карта — в разделе Профили.