Если база вернулась, а игрокам предлагают создать новых выживших, восстановление ещё не закончено. Для Project Zomboid сохраняйте целиком каталог постоянных данных остановленного сервера, а затем проверяйте, что мир, учётные записи и персонажи загружаются вместе.
Инструкция рассчитана на владельца выделенного сервера с доступом к файлам. На 26 октября 2026 года разработчик указывает 42.21 как Stable. Старые архивы сначала запускайте на записанной для них сборке: сохранения Build 41 несовместимы с Build 42, а переход 42.19 → 42.20 также нарушал совместимость. Восстановление и обновление версии лучше проводить отдельно.
Найдите каталог действующего сервера#
Сначала сверьте команду запуска, пользователя службы и начальные строки журнала. В обычной Linux-установке данные часто лежат в Zomboid домашнего каталога пользователя сервера. Параметр -cachedir или подключённый том контейнера могут изменить расположение. Похожая папка в домашнем каталоге администратора может вообще не использоваться.
Пример ниже предполагает уже проверенную структуру:
| Компонент | Пример |
|---|---|
| Пользователь службы | pzserver |
| Корень постоянных данных | /srv/pzserver/Zomboid |
| Внутреннее имя профиля | coop |
| Мир и персонажи | Saves/Multiplayer/coop/ внутри этого корня |
| База учётных записей | db/coop.db внутри этого корня |
| Конфигурация и песочница | Server/coop.ini, Server/coop_SandboxVars.lua и остальные файлы профиля |
Сохраняйте весь корень, включая players.db в папке мира и отдельную базу учётных записей. Если присутствуют журналы или WAL-файлы баз данных, включайте их тоже. Набор выбранных чанков или единственная база персонажей не обеспечивают согласованный откат.
Рядом с архивом запишите точную сборку и ветку, параметры запуска, пользователя службы, Mod ID, Workshop ID, порядок карт и настройки оболочки, расположенные снаружи. Сохраните установленные версии модов или другой воспроизводимый комплект: содержимое Workshop после создания копии может обновиться. Если каталоги данных вынесены в отдельные тома или представлены символическими ссылками, сохраните их содержимое отдельно: архив ссылки сам по себе не содержит её цель.
Оставьте соответствующую установку dedicated server либо заранее убедитесь, что точную сборку ещё можно получить: одно имя ветки не сохраняет снятый с распространения патч.
Сначала сохранение и остановка, затем архив#
Объявите технический перерыв и запретите панели, планировщику или супервизору автоматически поднимать процесс. В серверной консоли выполните save, дождитесь сообщения о завершении сохранения, затем отправьте quit и дождитесь выхода процесса. В игровом чате администратора этим командам соответствуют /save и /quit.
Проверьте, что второй экземпляр сервера не держит тот же каталог открытым. Копирование работающего сервера может захватить SQLite-транзакцию посередине и собрать мир из разных моментов времени. После аварии сначала сохраните полностью остановленный каталог, включая оставшиеся журналы баз; не удаляйте их ради «чистой» структуры.
Следующий пример выполняйте только после проверки путей и остановки всех процессов записи. Пользователю нужны права чтения всего корня и создания каталога копии. Папки с указанной датой ещё не должно существовать:
set -eu
umask 077
PZ_DATA='/srv/pzserver/Zomboid'
PZ_BACKUP='/srv/pz-backups/2026-10-26-coop'
test -d "$PZ_DATA/Saves/Multiplayer/coop"
test -f "$PZ_DATA/db/coop.db"
mkdir -m 700 "$PZ_BACKUP"
tar -czf "$PZ_BACKUP/Zomboid.tar.gz" -C "$PZ_DATA" .
cd "$PZ_BACKUP"
sha256sum Zomboid.tar.gz > Zomboid.tar.gz.sha256
sha256sum -c Zomboid.tar.gz.sha256
tar -tzf Zomboid.tar.gz > archive-files.txt
Заранее создайте /srv/pz-backups с подходящим владельцем. Каталог находится снаружи исходных данных, поэтому архив не захватит сам себя. Проверьте свободное место: внутри полного корня могут находиться предыдущие автоматические копии. Положите рядом запись версий, ограничьте доступ к архиву с учётными данными и перенесите комплект на другой диск или компьютер. Контрольная сумма подтверждает целостность файла, но ещё не способность игры загрузить его.
Восстановите в пустой изолированный каталог#
Текущий или повреждённый корень оставьте нетронутым. Для проверки используйте отдельную машину либо изолированный экземпляр со своим записываемым каталогом и доступом только для участников проверки. Основной и восстановленный серверы не должны одновременно работать с одним томом.
Если оба экземпляра находятся на одном физическом хосте, тестовому нужны отдельный супервизор и непересекающиеся сетевые порты. Пример запуска ниже предполагает отдельную изолированную машину.
После переноса проверьте контрольную сумму. Создайте новый пустой каталог /srv/pz-recovery/Zomboid и распакуйте в него этот доверенный архив:
tar -xzf /srv/pz-backups/2026-10-26-coop/Zomboid.tar.gz -C /srv/pz-recovery/Zomboid
Назначьте владельцем файлов пользователя тестовой службы и обеспечьте ему запись. Установите соответствующую сборку сервера и версии модов. Внутреннее имя оставьте coop: публичное название в списке серверов и имя профиля, папки мира или базы данных выполняют разные задачи.
На изолированной Linux-машине, из каталога подходящей установки выделенного сервера, запустите профиль с абсолютным путём данных:
./start-server.sh -servername coop -cachedir=/srv/pz-recovery/Zomboid
В журнале сверьте выбранный корень, профиль и версию. Если появился пустой мир, остановитесь: проверьте путь, регистр имён, владельца и подключённый том. Если игра предлагает нового персонажа, откажитесь от создания и проверьте прежнее имя профиля, учётную запись и наличие данных персонажей в архиве. Не удаляйте записи пользователей и не переписывайте идентификаторы игроков в единственной сохранившейся базе.
Проверьте запись после повторного запуска#
Подключитесь прежней учётной записью игрока с исходной Steam-идентичностью. Сверьте выжившего, инвентарь и положение, осмотрите знакомую базу, контейнер и автомобиль. Сделайте безопасное узнаваемое изменение, выйдите из игры, выполните сохранение и корректную остановку. Запустите восстановленный экземпляр повторно и убедитесь, что персонаж и изменения мира сохранились, а ошибок базы данных нет.
После успешной проверки назначьте перенос на основной сервер, оставив его предыдущий остановленный корень для отката. Если администрируете собственные машины через Nexardo, включайте в процедуру восстановления именно фактические файлы этого сервера: панель управления инфраструктурой не заменяет проверенный архив мира.




