Что нового?

Гайд V Rising - Как установить и настроить CentOS Linux Dedicated Server

В настоящее время доступна только версия V Rising Server для Windows. Однако есть возможность запустить сервер на системе Linux с помощью wine.

Введение и предварительные условия​


Сразу после того, как я купил эту игру и немного поиграл в одиночную игру, мне захотелось поиграть вместе с друзьями.

И поскольку в моем распоряжении уже был VPS (с установленной CentOS), я подумал, почему бы не использовать его.

Я прочитал официальное руководство и обнаружил, что существует только серверный exe-шник для windows.
Я вспомнил другие руководства, в которых рассказывалось, как использовать wine для запуска исполняемых файлов windows, и решил попробовать провернуть с v-rising, и все получилось.

Итак, вот мое руководство о том, как это сделать. Как уже было сказано в заголовке, я делал это на системе CentOS, но, думаю, в принципе это решение будет работать и на других дистрибутивах Linux.

Если вы не хотите себя мучить, у нас есть подробное руководство по запуску сервера на windows/windows server Подробный гайд: Как установить сервер v-rising и все доступные консольные команды администратора

Про редактор vi​


Я постарался сделать это руководство понятным для всех.

Единственное, что вам нужно знать, это как пользоваться терминалом и как редактировать файлы. CentOS комплектуется текстовым редактором vi, который можно использовать для работы с этим руководством, но объяснение того, как использовать vi, не является частью этого руководства.

Команды​


В этом руководстве команды начинаются с $, # или >. Команды, начинающиеся с #, должны выполняться при входе в систему от имени root или с помощью sudo. Команды с $ могут быть выполнены обычным пользователем, а команды с > - это команды для steamcmd.

$, #, > не являются частью фактических команд.

Требования - предварительная установка​


Для запуска сервера нам понадобятся wine и xvfb.

  • Wine используется для выполнения исполняемых файлов Windows в LInux,
  • Xvfb мы будем использовать для создания виртуального монитора, чтобы не иметь реального монитора, подключенного к серверу.
Нам также понадобится steamcmd для загрузки и обновления файлов сервера. Установите необходимое steamcmd с помощью:

Код:
# yum install glibc.i686 libstdc++.i686 -y

Самый простой способ установить wine - использовать репозиторий EPEL, поэтому мы добавим его следующим образом:

Код:
# yum install epel-release -y

Затем установите wine и xvfb:

Код:
# yum install wine -y
# yum install xorg-x11-server-Xvfb -y

Установка steamcmd​


Прежде чем устанавливать steamcmd или сервер, необходимо создать пользователя, который будет использоваться для запуска steamcmd, а затем и самого игрового сервера.

Использование пользователя root для steamcmd или игрового сервера - это риск для безопасности.
Я назову этого пользователя steam, но вы можете выбрать любое имя по своему усмотрению.

Создайте пользователя и войдите в систему под этим именем:

Код:
# useradd steam
# su steam

Затем мы переходим в домашний каталог нового пользователя и создаем директорию, в которую будем устанавливать steamcmd, и еще одну директорию для игрового сервера:

Код:
$ cd
$ mkdir steamcmd
$ cd steamcmd
$ mkdir VRising

Теперь мы загрузим и извлечем steamcmd:

Код:
$ curl -sqL "https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz" | tar zxvf -

Установка игрового сервера​


Запустим steamcmd с помощью скрипта, который был извлечен на предыдущем шаге:

Код:
$ ./steamcmd.sh

При первом запуске steamcmd потребуется некоторое время для загрузки обновлений.
После обновления мы можем использовать steamcmd и в качестве первого шага указать ранее созданный каталог в качестве каталога установки игры:

Код:
> force_install_dir VRising

Перед загрузкой файлов сервера нам нужно войти в steam, но мы можем использовать анонимный вход:

Код:
> login anonymous

Идентификатор приложения для сервера V Rising - 1829350, поэтому мы можем установить сервер следующим образом:

Код:
> app_update 1829350

После установки сервера введите:

Код:
> quit

Чтобы выйти из steamcmd.

Запуск и настройка игрового сервера​


Перейдите в каталог, в который мы установили сервер:

Код:
$ cd VRising

А затем запустите сервер следующим образом:

Код:
$ export WINEARCH=win64
$ xvfb-run --auto-servernum --server-args='-screen 0 640x480x24:32' wine VRisingServer.exe -persistentDataPath ./save-data -logFile server.log

Это запустит сервер и создаст сохранение игры в директории, которую мы указали в предыдущей команде в качестве пути к постоянным данным, в данном случае в папке save-data.

Подождите не много, а затем снова закройте сервер, нажав Ctrl-C.

Конфигурация (Настройки сервера)​


Создайте папку Settings внутри каталога save-data:

Код:
$ mkdir save-data/Settings

Теперь мы скопируем настройки по умолчанию в эту новую директорию:

Код:
$ cp VRisingServer_Data/StreamingAssets/Settings/*.json save-data/Settings

Папка Settings теперь содержит два конфигурационных файла:
  • ServerHostSettings.json для настроек хоста, таких как имя сервера, пароль, порты и т. д.,
  • ServerGametSettings.json для настроек игры, таких как скорость крафтинга, множители урона и т. д.
Более подробно за настройки рассказано тут Подробный гайд: Как установить сервер v-rising и все доступные консольные команды администратора

Для редактирования настроек в этих файлах вы можете использовать удобный для вас текстовый редактор.

Использование systemd для управления сервером​


Теперь мы можем использовать команду, которую мы использовали раньше для запуска сервера, но это потребует от нас постоянно держать терминал, который мы используем, открытым для поддержания сервера в рабочем состоянии.

Вместо этого мы воспользуемся systemd, чтобы настроить сервер как службу, работающую в фоновом режиме.

Чтобы упростить задачу, сначала создадим shell-скрипт для запуска сервера.

Создайте новый файл с помощью выбранного вами текстового редактора со следующим содержанием:

Код:
#!/bin/bash export WINEARCH=win64 /usr/bin/xvfb-run --auto-servernum --server-args='-screen 0 640x480x24:32' /usr/bin/wine VRisingServer.exe -persistentDataPath server1_saves/ -logFile server.log

Сохраните файл под именем run_server.sh в директории игрового сервера.

С помощью этой команды превратите файл в excutable:

Код:
$ chmod ug+x run_server.sh

Это все, что нам нужно сделать под пользователем steam. Теперь мы можем переключиться обратно на пользователя с привилегиями root, используя:

Код:
$ exit

Создайте новый файл для службы systemd со следующим содержимым:

Код:
[Unit]
After=network.target

[Service]
User=steam
Group=steam
WorkingDirectory=/home/steam/steamcmd/VRising
ExecStart=/home/steam/steamcmd/VRising/run_server.sh

[Install]
WantedBy=multi-user.target

И сохраните файл под именем:

Код:
/etc/systemd/system/VRising.service

Теперь мы можем использовать systemctl для запуска и остановки сервера. Чтобы запустить сервер, используйте:

Код:
# systemctl start VRising

Если мы хотим остановить сервер, мы можем использовать:

Код:
# systemctl stop VRising

Мы также можем проверить, запущен ли процесс:

Код:
# systemctl status VRising

Обратите внимание, что если сервер падает, то процесс все равно будет активным, потому что падает только серверный процесс, а wine все еще работает.

Настройка брандмауэра​

Теперь, когда мы запустили сервер с помощью systemd, осталось настроить брандмауэр.

Если вы не изменили это в ServerHostSettings.json, игра использует udp-порты 9876 и 9877.

Добавьте правила для этих двух портов в брандмауэр:

Код:
# firewall-cmd --add-port=9876/udp
# firewall-cmd --add-port=9877/udp

Затем мы сохраняем новые правила, чтобы порт оставался открытым даже после перезагрузки, и перезагружаем брандмауэр:

Код:
# firewall-cmd --runtime-to-permanent
# firewall-cmd --reload

Обновление игры​


Обновить игру очень просто. Сначала выключите сервер и, как и при установке игры, войдите под пользователем, которого мы создали для steamcmd, и запустите steamcmd:

Код:
# systemctl stop VRising
# su steam
$ cd ~/steamcmd
$. ./steamcmd

Войдите в анонимный профиль steam, обновите игру, дождитесь окончания обновления и закройте steamcmd:

Код:
> login anonymous
> app_update 1829350
> quit

Игра обновлена, и мы можем снова запустить сервер:

Код:
# systemctl start VRising

Собственно это все.

Данный обзор создан для Стим Куратора, подпишись!
А также зарегистрируйся у нас на сайте, участвуй в обсуждениях, пиши свои обзоры и не пропускай новые материалы.
 
Василий

Василий

Админ сайта
Вернуться к: Гайды
Сверху