Установщик по умолчанию раскладывает всё в /opt/pzmanager вместо домашнего
каталога пользователя: серверные файлы, миры, бэкапы и конфиг лежат рядом
одной понятной структурой, а системному пользователю больше не нужен
домашний каталог и shell.
Адрес панели задаётся при установке (PZ_LISTEN), каталог и пользователь —
через PZ_HOME и PZ_USER. Конфиг создаётся только при первой установке,
поэтому повторный запуск установщика обновляет бинарник, не трогая
настройки, миры и учётки.
Адрес теперь занимается до автозапуска игрового сервера: если IP ещё не
поднят или порт занят, менеджер падает сразу с внятной ошибкой, а не
оставляет работающий сервер PZ без панели управления.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Менеджер запускает сервер PZ как дочерний процесс и держит его stdin/stdout:
отсюда живая консоль без RCON, стриминг логов через SSE и корректная
остановка по цепочке quit -> SIGTERM -> SIGKILL для всей группы процессов.
Сам менеджер работает под systemd.
Что входит:
- управление жизненным циклом сервера, автозапуск и автоподъём после падения;
- метрики процесса из /proc и состояние хоста, список игроков онлайн;
- редакторы servertest.ini и SandboxVars.lua, сохраняющие исходное
форматирование файлов;
- моды: списки Workshop ID и Mod ID с порядком загрузки, названия из Steam;
- бэкапы мира по расписанию и вручную, с ротацией и восстановлением;
- установка и обновление сервера через SteamCMD;
- вход по логину и паролю, первичная настройка по одноразовому коду.
Веб-интерфейс без сборщика, вшит в бинарник через embed.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>