Правила форума Гаранты форума
Размещение рекламы AMX-X компилятор

Здравствуйте, гость Вход | Регистрация

Наши новости:

14-дек
24-апр
10-апр
11-апр

> Информационная доска

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

1. Во время создания новой темы аккуратно оформляйте её, не допускайте грамматических ошибок.
2. Описывая проблему старайтесь, как можно больше рассказать о ней, а так же о действиях с сервером после которых она возникла, по возможности подкрепите информацию логами.
3. Если вопрос касается проблемы в работе сервера, то обязательно прикрепляйте список плагинов (введите в консоли сервера: meta list и amxx plugins), настройки server.cfg, логи. Так же указывайте операционную систему, версию HLDS (введите к консоли сервера: version) и где хостится сервер.

Длинную информацию скрывайте под спойлер.

Сервер linux. libsteam.so

Статус пользователя AssadaKiev
сообщение 16.7.2020, 20:40
Сообщение #1
Стаж: 12 лет

Сообщений: 240
Благодарностей: 143
Полезность: 845

Всем привет. Пытаюсь собрать сервер на debian\ubuntu.

Беру steamcmd

выполняю в нем:
Cкрытый текст

Код
login anonymous
force_install_dir ./hlds
app_set_config 90 mod cstrike
app_update 90
app_update 90 validate
quit



Потом выполняю
Код
echo 10 > steam_appid.txt


Все проходит отлично. Идем дальше.... А дальше по сути запуск.

Код
./hlds_run -game cstrike -timeout 3 -pingboost 1 -nobreakpad -debug


Получаю лог:

Cкрытый текст

Код
Enabling debug mode
./hlds_run: 1: ./hlds_run: gdb: not found
Please install gdb first.
goto http://www.gnu.org/software/gdb/
Auto-restarting the server on crash

Console initialized.
Setting breakpad minidump AppID = 10
Protocol version 48
Exe version 1.1.2.7/Stdio (cstrike)
Exe build: 15:16:04 Jul 24 2019 (8308)
STEAM Auth Server
Server logging data to file logs/L0716000.log
L 07/16/2020 - 18:29:00: Log file started (file "logs/L0716000.log") (game "cstrike") (version "48/1.1.2.7/Stdio/8308")
Server IP address 172.17.0.2:27015
L 07/16/2020 - 18:29:00: Log file closed
Server logging data to file logs/L0716001.log
L 07/16/2020 - 18:29:00: Log file started (file "logs/L0716001.log") (game "cstrike") (version "48/1.1.2.7/Stdio/8308")
L 07/16/2020 - 18:29:00: Loading map "de_dust2"
L 07/16/2020 - 18:29:00: Server cvars start
L 07/16/2020 - 18:29:00: Server cvar "_tutor_bomb_viewable_check_interval" = "0.5"
L 07/16/2020 - 18:29:00: Server cvar "_tutor_debug_level" = "0"
L 07/16/2020 - 18:29:00: Server cvar "_tutor_examine_time" = "0.5"
L 07/16/2020 - 18:29:00: Server cvar "_tutor_hint_interval_time" = "10.0"
L 07/16/2020 - 18:29:00: Server cvar "_tutor_look_angle" = "10"
L 07/16/2020 - 18:29:00: Server cvar "_tutor_look_distance" = "200"
L 07/16/2020 - 18:29:00: Server cvar "_tutor_message_character_display_time_coefficient" = "0.07"
L 07/16/2020 - 18:29:00: Server cvar "_tutor_message_minimum_display_time" = "1"
L 07/16/2020 - 18:29:00: Server cvar "_tutor_message_repeats" = "5"
L 07/16/2020 - 18:29:00: Server cvar "_tutor_view_distance" = "1000"
L 07/16/2020 - 18:29:00: Server cvar "allow_spectators" = "1.0"
L 07/16/2020 - 18:29:00: Server cvar "coop" = "0"
L 07/16/2020 - 18:29:00: Server cvar "deathmatch" = "1"
L 07/16/2020 - 18:29:00: Server cvar "decalfrequency" = "30"
L 07/16/2020 - 18:29:00: Server cvar "edgefriction" = "2"
L 07/16/2020 - 18:29:00: Server cvar "hostage_debug" = "0"
L 07/16/2020 - 18:29:00: Server cvar "hostage_stop" = "0"
L 07/16/2020 - 18:29:00: Server cvar "humans_join_team" = "any"
L 07/16/2020 - 18:29:00: Server cvar "max_queries_sec" = "3.0"
L 07/16/2020 - 18:29:00: Server cvar "max_queries_sec_global" = "30"
L 07/16/2020 - 18:29:00: Server cvar "max_queries_window" = "60"
L 07/16/2020 - 18:29:00: Server cvar "mp_allowmonsters" = "0"
L 07/16/2020 - 18:29:00: Server cvar "mp_autokick" = "1"
L 07/16/2020 - 18:29:00: Server cvar "mp_autokick_timeout" = "-1"
L 07/16/2020 - 18:29:00: Server cvar "mp_autoteambalance" = "1"
L 07/16/2020 - 18:29:00: Server cvar "mp_buytime" = "1.5"
L 07/16/2020 - 18:29:00: Server cvar "mp_c4timer" = "45"
L 07/16/2020 - 18:29:00: Server cvar "mp_chattime" = "10"
L 07/16/2020 - 18:29:00: Server cvar "mp_consistency" = "1"
L 07/16/2020 - 18:29:00: Server cvar "mp_fadetoblack" = "0"
L 07/16/2020 - 18:29:00: Server cvar "mp_flashlight" = "0"
L 07/16/2020 - 18:29:00: Server cvar "mp_footsteps" = "1"
L 07/16/2020 - 18:29:00: Server cvar "mp_forcecamera" = "0"
L 07/16/2020 - 18:29:00: Server cvar "mp_forcechasecam" = "0"
L 07/16/2020 - 18:29:00: Server cvar "mp_fragsleft" = "0"
L 07/16/2020 - 18:29:00: Server cvar "mp_freezetime" = "6"
L 07/16/2020 - 18:29:00: Server cvar "mp_friendlyfire" = "0"
L 07/16/2020 - 18:29:00: Server cvar "mp_ghostfrequency" = "0.1"
L 07/16/2020 - 18:29:00: Server cvar "mp_hostagepenalty" = "13"
L 07/16/2020 - 18:29:00: Server cvar "mp_infinite_ammo" = "0"
L 07/16/2020 - 18:29:00: Server cvar "mp_kickpercent" = "0.66"
L 07/16/2020 - 18:29:00: Server cvar "mp_limitteams" = "2"
L 07/16/2020 - 18:29:00: Server cvar "mp_logdetail" = "0"
L 07/16/2020 - 18:29:00: Server cvar "mp_logfile" = "1"
L 07/16/2020 - 18:29:00: Server cvar "mp_logmessages" = "1"
L 07/16/2020 - 18:29:00: Server cvar "mp_mapvoteratio" = "0.66"
L 07/16/2020 - 18:29:00: Server cvar "mp_maxrounds" = "0"
L 07/16/2020 - 18:29:00: Server cvar "mp_mirrordamage" = "0"
L 07/16/2020 - 18:29:00: Server cvar "mp_playerid" = "0"
L 07/16/2020 - 18:29:00: Server cvar "mp_roundtime" = "5"
L 07/16/2020 - 18:29:00: Server cvar "mp_scoreboard_showhealth" = "3"
L 07/16/2020 - 18:29:00: Server cvar "mp_scoreboard_showmoney" = "3"
L 07/16/2020 - 18:29:00: Server cvar "mp_startmoney" = "800"
L 07/16/2020 - 18:29:00: Server cvar "mp_timeleft" = "0"
L 07/16/2020 - 18:29:00: Server cvar "mp_timelimit" = "0"
L 07/16/2020 - 18:29:00: Server cvar "mp_tkpunish" = "0"
L 07/16/2020 - 18:29:00: Server cvar "mp_windifference" = "1"
L 07/16/2020 - 18:29:00: Server cvar "mp_winlimit" = "0"
L 07/16/2020 - 18:29:00: Server cvar "pausable" = "1"
L 07/16/2020 - 18:29:00: Server cvar "sv_accelerate" = "10"
L 07/16/2020 - 18:29:00: Server cvar "sv_aim" = "1"
L 07/16/2020 - 18:29:00: Server cvar "sv_airaccelerate" = "10"
L 07/16/2020 - 18:29:00: Server cvar "sv_allowupload" = "1"
L 07/16/2020 - 18:29:00: Server cvar "sv_bounce" = "1"
L 07/16/2020 - 18:29:00: Server cvar "sv_cheats" = "0"
L 07/16/2020 - 18:29:00: Server cvar "sv_clienttrace" = "1"
L 07/16/2020 - 18:29:00: Server cvar "sv_contact" = ""
L 07/16/2020 - 18:29:00: Server cvar "sv_friction" = "4"
L 07/16/2020 - 18:29:00: Server cvar "sv_gravity" = "800"
L 07/16/2020 - 18:29:00: Server cvar "sv_logblocks" = "0"
L 07/16/2020 - 18:29:00: Server cvar "sv_maxrate" = "0"
L 07/16/2020 - 18:29:00: Server cvar "sv_maxspeed" = "320"
L 07/16/2020 - 18:29:00: Server cvar "sv_minrate" = "0"
L 07/16/2020 - 18:29:00: Server cvar "sv_password" = ""
L 07/16/2020 - 18:29:00: Server cvar "sv_proxies" = "1"
L 07/16/2020 - 18:29:00: Server cvar "sv_restart" = "0"
L 07/16/2020 - 18:29:00: Server cvar "sv_restartround" = "0"
L 07/16/2020 - 18:29:00: Server cvar "sv_stepsize" = "18"
L 07/16/2020 - 18:29:00: Server cvar "sv_stopspeed" = "100"
L 07/16/2020 - 18:29:00: Server cvar "sv_uploadmax" = "0.5"
L 07/16/2020 - 18:29:00: Server cvar "sv_voiceenable" = "1"
L 07/16/2020 - 18:29:00: Server cvar "sv_wateraccelerate" = "10"
L 07/16/2020 - 18:29:00: Server cvar "sv_waterfriction" = "1"
L 07/16/2020 - 18:29:00: Server cvars end
L 07/16/2020 - 18:29:00: Server cvar "sv_maxspeed" = "900"
L 07/16/2020 - 18:29:00: Server cvar "pausable" = "0"
[S_API FAIL] SteamAPI_Init() failed; SteamAPI_IsSteamRunning() failed.
CAppInfoCacheReadFromDiskThread took 5 milliseconds to initialize
CApplicationManagerPopulateThread took 3 milliseconds to initialize (will have waited on CAppInfoCacheReadFromDiskThread)
Warning: failed to init SDL thread priority manager: SDL not found
RecordSteamInterfaceCreation (PID 11): SteamGameServer011 / GameServer
RecordSteamInterfaceCreation (PID 11): SteamUtils005 / Utils
RecordSteamInterfaceCreation (PID 11): STEAMAPPS_INTERFACE_VERSION005 / Apps
RecordSteamInterfaceCreation (PID 11): STEAMHTTP_INTERFACE_VERSION002 / HTTP
RecordSteamInterfaceCreation (PID 11): SteamNetworking005 / Networking
RecordSteamInterfaceCreation (PID 11): SteamGameServerStats001 / GameServerStats
dlopen failed trying to load:
/opt/steam/.steam/sdk32/libsteam.so
with error:
/opt/steam/.steam/sdk32/libsteam.so: cannot open shared object file: No such file or directory
L 07/16/2020 - 18:29:01: Server cvar "sv_accelerate" = "5"
L 07/16/2020 - 18:29:01: Server cvar "sv_stopspeed" = "75"
L 07/16/2020 - 18:29:02: Started map "de_dust2" (CRC "1159425449")



И все. Лога дальше нет. Подключится нельзя. А я даже не начал подключать rehlds и далее по списку!

Основная смущающая меня фигня
Код
dlopen failed trying to load:
/opt/steam/.steam/sdk32/libsteam.so
with error:
/opt/steam/.steam/sdk32/libsteam.so: cannot open shared object file: No such file or directory


Гуглил. Это просто невозможно.
Копировал все (создавал симлинк)
Код
ln -s /opt/steam/linux32 /opt/steam/.steam/sdk32


Сама по себе либа libsteam.so есть только в папке cstrike. Но ее копирование по требуему пути не решает вопроса.


Может я что то сделал не так? Возможно либы не хватает какой то...

з.ы: если это важно то я запускаю все в контейнере докера. Но не думаю что это важно.
Листинг Dockerfile:
Cкрытый текст

Код
FROM ubuntu:18.04

ARG rehlds_version=3.7.0.696
ARG metamod_version=1.3.0.128
ARG jk_botti_version=1.43
ARG steamcmd_url=https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz
ARG rehlds_url="https://github.com/dreamstalker/rehlds/releases/download/$rehlds_version/rehlds-dist-$rehlds_version-dev.zip"
ARG metamod_url="https://github.com/theAsmodai/metamod-r/releases/download/1.3.128/metamod_$metamod_version.zip"
ARG amxmod_url="https://www.amxmodx.org/amxxdrop/1.9/amxmodx-1.9.0-git5271-base-linux.tar.gz"
ARG revoice_url="https://teamcity.rehlds.org/guestAuth/downloadArtifacts.html?buildTypeId=Revoice_Publish&buildId=lastSuccessful"

RUN apt-get update && apt-get install -y --no-install-recommends \
    locales \
&& rm -rf /var/lib/apt/lists/* \
&& localedef -i en_US -c -f UTF-8 -A /usr/share/locale/locale.alias en_US.UTF-8
ENV LANG en_US.utf8
ENV LC_ALL en_US.UTF-8

ENV CPU_MHZ=2300

RUN groupadd -r steam && useradd -r -g steam -m -d /opt/steam steam

RUN apt-get -y update && apt-get install -y --no-install-recommends \
    ca-certificates \
    curl \
    lib32gcc1 \
    unzip \
    xz-utils \
    zip \
    tree \
&& apt-get -y autoremove \
&& rm -rf /var/lib/apt/lists/*

USER steam
WORKDIR /opt/steam
SHELL ["/bin/bash", "-o", "pipefail", "-c"]
COPY ./lib/hlds.install /opt/steam

RUN curl -sL "$steamcmd_url" | tar xzvf - \
    && ./steamcmd.sh +runscript hlds.install

RUN mkdir -p "$HOME/.steam" \
    && ln -s /opt/steam/linux32 "$HOME/.steam/sdk32"

RUN touch /opt/steam/hlds/cstrike/listip.cfg
RUN touch /opt/steam/hlds/cstrike/banned.cfg


WORKDIR /opt/steam/hlds

COPY cstrike cstrike

RUN chmod +x hlds_run hlds_linux

RUN echo 10 > steam_appid.txt

EXPOSE 27015
EXPOSE 27015/udp

ENTRYPOINT ["./hlds_run", "-game cstrike", "-timeout 3", "-pingboost 1", "-nobreakpad", "-debug"]

CMD ["+map de_dust2", "+rcon_password 12345678", "+log on"]

Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
Статус пользователя dimamelnic
сообщение 16.7.2020, 21:52
Сообщение #2
Стаж: 11 лет

Сообщений: 1862
Благодарностей: 229
Полезность: 9

./hlds_run -game cstrike +ip 0.0.0.0 +sv_lan 0 +maxplayers 32 +map de_dust2 +port 27015
Так же установить пакеты

dpkg --add-architecture i386
apt-get update
apt-get install ia32-libs
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя vavarik
сообщение 17.7.2020, 4:48
Сообщение #3


Стаж: 15 лет
Город: Саратов

Сообщений: 942
Благодарностей: 318
Полезность: 143

SarHosting.ru
dimamelnic, если сервер запускается, то 32 библиотеки стоят. Нужно как вы написали, запустить на прямую.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя AssadaKiev
сообщение 17.7.2020, 12:56
Сообщение #4
Стаж: 12 лет

Сообщений: 240
Благодарностей: 143
Полезность: 845

Похоже что что то с правами на библиотеки. В итоге отказался от докера. Запустил нативно на хосте. Но попытки запуска в контейнере не оставлю.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя esterio
сообщение 17.7.2020, 21:42
Сообщение #5
Стаж: 13 лет
Город: Украина

Сообщений: 266
Благодарностей: 215
Полезность: 627

Попробуйте от рута запускать (у вас и так контейнер и доп юзер не даст вам ничего). Тогда библиотека должна быть по пути /root/.sdk32/...
Также если не ошибаюсь, там нужно експозить еще какие то порты
Запуск хлдс в докере имеет ряд проблем.
1. ХЛДС не умеет в ошибку завершения и всегда возвращает статус 0.
2. SIGTERM также не умеет грамотно обрабатывать, стоит посылать команду quit в stdin
3. Ну и последнее это логи в файлики, которые нужно как то выводить наружу либо монтированием, либо правкой плагинов (деф логы есть возможность отключить)

П.С. под винду также куча гемора, ибо стандартные потокы stdin/stdout/stderr консоль под винду не умеет. Вместо этого она перехватывает нажатие клавиш. Увы но ХЛДС много лет, и тогда врят ли кто думал об подобном.


Ми будемо вбивати росіян у будь-якій точці світу до повної перемоги України
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя AssadaKiev
сообщение 21.7.2020, 15:34
Сообщение #6
Стаж: 12 лет

Сообщений: 240
Благодарностей: 143
Полезность: 845

Запустить так и не вышло. Запускал рутом и ошибка та же. Пробовал копировать в рут - не помогло. Пока поднял нативно. Буду еще пробовать в докер завернуть.
С кодами ошибок - решаемо. А вот про SIGTERM сложнее. Как вариант делать обвязку и посылать стоп по rcon`у чтоли. Можно сделать удобный hlds менеджер на гошечке. Который будет хендлить процесс hlds, собирать метрики и логи, обрабатывать и отправлять сигналы. А логи можно файлбитом собрать и сложить в эластик. Ну и запускаю я все это не на винде но спасибо за ремарку =)
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
  Ответить в данную темуНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: