Patch вышел ночью, клиенты обновились сами, а сервер остался на старой сборке — и утром вся компания видит ошибку несовпадения версий. Обновить сервер Palworld технически просто, одна команда SteamCMD, но именно на этой простоте люди теряют мир: обновление затирает конфиг, а иногда и задевает сохранения. Разберём порядок, при котором ни PalWorldSettings.ini, ни Level.sav не пострадают.
Когда пора обновить сервер Palworld
Признаки однозначные:
- Игроки получают ошибку о несовместимой версии при подключении.
- Сервер пропал из списка сообщества.
- В консоли при старте видно версию ниже актуальной.
Текущую версию сервера покажет команда /Info в игре или Info по RCON — про них написано в статье про админ-команды Palworld.
Обратной совместимости у Palworld нет: клиент с новой версией не зайдёт на старый сервер, и наоборот. Откладывать обновление бессмысленно — сервер просто стоит пустой.
Шаг 1: предупредить и сохранить
Не выдёргивайте процесс на ходу. Мир пишется в Level.sav, и остановка в момент записи — прямой путь к повреждённому сохранению.
Через RCON или чат:
Broadcast Server_update_in_5_minutes
Save
Shutdown 60 UpdateДождитесь, пока процесс действительно завершится. В панели это видно по статусу и по последней строке в консоли.
Шаг 2: бэкап — не опционально
Это тот шаг, который пропускают ровно один раз.
Сохраняйте целиком:
Pal/Saved/Внутри и мир (SaveGames), и конфиг (Config). Архив можно собрать в файловом менеджере панели или скачать по SFTP. Как поставить это на автомат, описано в статье про настройку бэкапов сохранений.
Отдельно скопируйте PalWorldSettings.ini куда-нибудь ещё — обновление регулярно возвращает его к дефолтам, и восстанавливать пятьдесят параметров по памяти удовольствие ниже среднего.
Шаг 3: обновление через SteamCMD
App ID выделенного сервера Palworld — 2394010. Варианты установки через Steam и SteamCMD описаны в официальном руководстве Pocketpair.
./steamcmd.sh +login anonymous +force_install_dir /home/palworld/server +app_update 2394010 validate +quitЧто здесь важно:
+login anonymous— сервер качается анонимно, аккаунт Steam не нужен.+force_install_dirуказывается до параметра обновления. Если поставить после, SteamCMD скачает сервер в собственную директорию, и вы будете искать его по всему диску.validateсверяет контрольные суммы. Нужен, если сервер падает или после неудачного обновления; в штатной ситуации без него быстрее.
Осторожно с validate: он приводит файлы к состоянию манифеста Steam. Пользовательские файлы, которых в манифесте нет, могут быть удалены — это ещё одна причина держать копию Pal/Saved в стороне.
На хостинге с панелью отдельный SteamCMD не нужен: кнопка обновления делает то же самое, обычно с сохранением пользовательских данных.
Шаг 4: вернуть конфиг
Сразу после обновления проверьте:
Pal/Saved/Config/LinuxServer/PalWorldSettings.iniЕсли файл вернулся к дефолтному виду — восстановите свой из копии. Проверьте, что все параметры на месте, особенно ServerPassword, AdminPassword, RCONEnabled и рейты. Про структуру файла и обязательные параметры — в статьях про настройку PalWorldSettings и пароль на сервер.
Отдельная ловушка: после патча в игре могут появиться новые параметры конфига. Если вы просто вернули старый файл, новых значений в нём нет, и сервер подставит дефолты — обычно это безопасно, но иногда меняет поведение. Сверяйтесь со свежим DefaultPalWorldSettings.ini, который обновление приносит с собой.
Шаг 5: запуск и проверка
Стартуйте сервер и смотрите консоль от первой строки. Что проверить:
- Версия в логе соответствует актуальной.
- Мир загрузился — в логе видно имя мира, а не создание нового.
- Сервер появился в списке сообщества (с задержкой до нескольких минут).
- Вы сами заходите с паролем.
Если мир не загрузился и вас встречает свежий стартовый остров — не играйте. Немедленно останавливайте сервер и восстанавливайте SaveGames из бэкапа, пока новое сохранение не перезаписало старое. Порядок восстановления — в статье про перенос сохранений.
Автообновление по расписанию
Скрипт для планировщика задач:
#!/bin/bash
RCON="/usr/local/bin/rcon -a 127.0.0.1:25575 -p ВАШ_ПАРОЛЬ"
BACKUP=/home/palworld/backups/$(date +%F-%H%M).tar.gz
$RCON "Broadcast Update_in_60_seconds"
sleep 60
$RCON "Save"
sleep 5
$RCON "Shutdown 10 Update"
sleep 30
tar -czf $BACKUP -C /home/palworld/server/Pal Saved
cp /home/palworld/server/Pal/Saved/Config/LinuxServer/PalWorldSettings.ini /home/palworld/settings.bak
/home/palworld/steamcmd/steamcmd.sh +login anonymous \
+force_install_dir /home/palworld/server \
+app_update 2394010 +quit
cp /home/palworld/settings.bak /home/palworld/server/Pal/Saved/Config/LinuxServer/PalWorldSettings.ini
systemctl start palworldЛогика простая: предупредить, сохранить, остановить, забэкапить, обновить, вернуть конфиг, запустить. Ночное окно в 4–5 утра — компромисс, который устраивает почти всех.
Что чаще всего ломается
- Сервер скачался заново в другое место. Неверный порядок аргументов SteamCMD.
- Кончилось место. Сборка сервера занимает несколько гигабайт, во время обновления нужно больше. Проверьте
df -hзаранее. - Мир не грузится. Чаще всего повреждён
Level.savиз-за жёсткой остановки. Лечится только бэкапом. - Слетели рейты и пароль. Конфиг перезаписан, возвращайте копию.
- Права на файлы. SteamCMD запускали от root, сервер работает от другого пользователя — процесс не может писать сохранения. Проверьте владельца
Pal/Saved. - Моды перестали работать. Это норма после каждого патча, см. установку модов.
Частые вопросы
Сохранится ли мир при обновлении?
Да, app_update не трогает Pal/Saved/SaveGames. Риск создаёт validate и жёсткая остановка сервера, а не само обновление.
Нужно ли обновлять клиент отдельно?
Клиент Steam обновляется автоматически. Именно поэтому сервер и оказывается «позади» — обновляют его вручную.
Сколько времени занимает обновление?
Обычно несколько минут: качается разница, а не весь сервер. С validate на медленном диске — до получаса.
Можно ли откатиться на предыдущую версию?
Практически нет: Steam отдаёт актуальную сборку, а клиенты всё равно обновятся. Если новая версия работает плохо, единственный вариант — ждать хотфикс.
Коротко
Предупредить, Save, Shutdown, забэкапить Pal/Saved, отдельно сохранить PalWorldSettings.ini, выполнить app_update 2394010 с правильным force_install_dir, вернуть конфиг, запустить и убедиться, что загрузился именно ваш мир. Двадцать минут дисциплины против недели потерянного прогресса.
Если ловить каждый патч руками надоело — на хостинге обновление и бэкапы делаются из панели, тарифы Palworld тут.