Проверенный
Пользователь
- Сообщения
- 1,032
- Реакции
- 828
- Помог
- 10 раз(а)
Доброго времени суток, друзья! Подумав, решил написать руководство для поднятия собственного сервера HLTV под управлением OS:LinuxДля подготовки статьи специально был куплен виртуальный сервер (OpenVZ: debian-7.0-x86)
- Первым делом, что нам необходимо сделать это выкачать с помощью SteamCMD актуальный, на сегодняшний день сервер, build 6153. Конечно, можно и более ранних версий, но я предпочитаю свеженькие файлы https://goldsrc.ru/uploads/emoticons/wink.gif Предположим, что у нас сервер раcположен по следующему пути: /home/hlds
- Вторым делом мы создадим нового пользователя (для запуска HLTV) и нужные нам директории для дальнейшей работы. По умолчанию при создание нового пользователя директория имеет следующий путь: /home/hltv. При добавлении нового пользователя нам запросят ввести пароль, повторить пароль, ввести дополнительные данные (необязательно) и подтвердить корректность информации.
root@vds142:~# adduser hltv
Adding user `hltv' ...
Adding new group `hltv' (1000) ...
Adding new user `hltv' (1000) with group `hltv' ...
Creating home directory `/home/hltv' ...
Copying files from `/etc/skel' ...
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully
Changing the user information for hltv
Enter the new value, or press ENTER for the default
Full Name []:
Room Number []:
Work Phone []:
Home Phone []:
Other []:
Is the information correct? [Y/n] y
- Для удобство создадим еще две директории внутри нашего нового пользователя. Это папка cstrike (куда будут записываться будущие demo-записи) и папка valve (куда будут вестись логи, если вам это необходимо)
root@vds142:~# mkdir /home/hltv/cstrike
root@vds142:~# mkdir /home/hltv/valve
- Третьим делом мы скопируем все необходимые файлы из корня сервера hlds в нашу папку hltv. Нам понадобятся следующие файлы: hltv; core.so; proxy.so; filesystem_stdio.so; hltv.cfg(создаем сами).
root@vds142:~# cp /home/hlds/hltv /home/hltv
root@vds142:~# cp /home/hlds/core.so /home/hltv
root@vds142:~# cp /home/hlds/proxy.so /home/hltv
root@vds142:~# cp /home/hlds/filesystem_stdio.so /home/hltv
root@vds142:~# cd /home/hltv
- Четвертым делом мы рекурсивно изменим права доступа файлов/директорий на нового пользователя hltv, так-как мы изначально работали из под root, соответственно файлы "принадлежали" ему.
root@vds142:/home/hltv# chown -R hltv:hltv /home/hltv/
- Пятым делом попробуем запустить наш hltv сервер от имени нового пользователя HLTV.
root@vds142:/home/hltv# sudo -u hltv ./hltv +connect 37.230.210.77:27015 -port 27030
Console initialized.
FileSystem initialized.
Error:libsteam_api.so: cannot open shared object file: No such file or directory
WARNING! System::DispatchCommand: command "connect 37.230.210.77:27015" not registered.
Type 'help' for a list of commands.
WARNING! System::RunFrame: system time difference <= 0.
WARNING! System::RunFrame: system time difference <= 0.
- К сожалению нам выдало ошибку о том, что отсутствует файл: libsteam_api.so Исправим эту ситуацию.
root@vds142:/home/hltv# cp /home/hlds/libsteam_api.so /usr/lib/
- Не будем отчаиваться и снова попробуем запустить сервер.
root@vds142:/home/hltv# sudo -u hltv ./hltv +connect 37.230.210.77:27015 -port 27030
Console initialized.
FileSystem initialized.
Network initialized.
Master module initialized.
Server module initialized.
World module initialized.
Demo client initialized.
Couldn't open config file hltv.cfg.
Proxy module initialized.
Type 'help' for a list of commands.
Challenging 37.230.210.77:27015 (1/3).
Get challenge (HASHEDCDKEY)
Connecting to 37.230.210.77:27015 (1/3).
>
BUILD 6153 SERVER (0 CRC)
Server # 1
Added 781 resources.
Received baseline with 68 entities.
qError:/home/hlds/cstrike/dlls/director.so: cannot open shared object file: No such file or directory
Couldn't open config file director.cfg.
Director module initialized.
[S_API FAIL] SteamAPI_Init() failed; SteamAPI_IsSteamRunning() failed.
dlopen failed trying to load: steamclient.so with error:steamclient.so: cannot open shared object file: No such file or directory
- Но и тут нас ожидает неудача. Отсутствие двух путей/файлов: director.so и steamclient.so Исправим и это, а так же снова изменим права доступа.
root@vds142:/home/hltv# cp /home/hlds/steamclient.so /usr/lib/
root@vds142:/home/hltv# mkdir /home/hltv/cstrike/dlls
root@vds142:/home/hltv# cp /home/hlds/valve/dlls/director.so /home/hltv/cstrike/dlls
root@vds142:/home/hltv# chown -R hltv:hltv /home/hltv
- Пробуем еще раз запустить наш HLTV сервер с надеждой.
root@vds142:/home/hltv# sudo -u hltv ./hltv +connect 37.230.210.77:27015 -port 27030
Console initialized.
FileSystem initialized.
Network initialized.
Master module initialized.
Server module initialized.
World module initialized.
Demo client initialized.
Executing file hltv.cfg.
Recording initialized.
Proxy module initialized.
Type 'help' for a list of commands.
Challenging 37.230.210.77:27015 (1/3).
Get challenge (HASHEDCDKEY)
Connecting to 37.230.210.77:27015 (1/3).
>
BUILD 6153 SERVER (0 CRC)
Server # 1
Added 781 resources.
Received baseline with 68 entities.
[S_API FAIL] SteamAPI_Init() failed; SteamAPI_IsSteamRunning() failed.
Setting breakpad minidump AppID = 10
dlopen failed trying to load: /home/hltv/.steam/sdk32/libsteam.so with error: /home/hltv/.steam/sdk32/libsteam.so: cannot open shared object file: No such file or directory
- Немного злимся, но исправляем ошибку с отсутствием пути/файла: libsteam.so
root@vds142:/home/hltv# mkdir /home/hltv/.steam/
root@vds142:/home/hltv# mkdir /home/hltv/.steam/sdk32
root@vds142:/home/hltv# cp /home/hlds/libsteam.so /home/hltv/.steam/sdk32
root@vds142:/home/hltv# chown -R hltv:hltv /home/hltv
- Если не запустится убиваем виртуальный сервер к чертям...
О, чудо =DD Сервер успешно запустился и demo-запись началась. ) Всем спасибо за внимание.root@vds142:/home/hltv# sudo -u hltv ./hltv +connect 37.230.210.77:27015 -port 27030
Console initialized.
FileSystem initialized.
Network initialized.
Master module initialized.
Server module initialized.
World module initialized.
Demo client initialized.
Executing file hltv.cfg.
Recording initialized.
Proxy module initialized.
Type 'help' for a list of commands.
Challenging 37.230.210.77:27015 (1/3).
Get challenge (HASHEDCDKEY)
Connecting to 37.230.210.77:27015 (1/3).
>
BUILD 6153 SERVER (0 CRC)
Server # 1
Added 781 resources.
Received baseline with 68 entities.
[S_API FAIL] SteamAPI_Init() failed; SteamAPI_IsSteamRunning() failed.
Setting breakpad minidump AppID = 10
Start recording to clc-1605032107-de_dust2.dem.