- Регистрация
- 19 Май 2017
- Сообщения
- 1
- Реакции
- 1
- Баллы
- 3
- Возраст
- 35
Во первых, начну с разговора об автоматизации, среди протестированных скриптов запуска, контроля упал ли сервер или нет, я нашел самый удобный и рабочий: Linux Game Server Managers - Quick, simple deployment and management of various dedicated game servers Linux Game Server Managers, на этой базе и будем рассматривать установку и настройку.
Обращаю ваше внимание на то, что для VDS/VPS в качестве операционной системы рекомендуется Debian, в данном руководстве я рассматриваю Debian 8 X64.
Нам понадобится следующее программное обеспечение:
Эта библиотека нужна расширению работы с mysql базами данных dbi.mysql.ext
Нужное для корректной работы скрипта:
Для запуска серверного Daemon HLstatsX:CE необходим модуль работы с базами данных:
Чтобы HLstatsX:CE корректно распознавала местоположение игроков устанавливаем модуль Geo :: IP :: PurePerl
Если у вас будет использоватся параметр -debug ставим дебагер, если его не будет сервер будет просить установить:
Установка:
Создаем нового пользователя с названием сервера, можно как хотите это просто для понятности, т.к. под root не безопасно и крайне не рекомендуется самой Valve, в процессе вас попросят указать пароль, если пароль одинаков с названием учетной записи то, он спрашиваться не будет.
Заходим под только созданным пользователем:
Скачиваем скрипт управления сервером:
Даем права на выполнение скрипта:
Теперь заходим в WinSCP заходим под учетной записью root админа и идем в каталог /home/<имя учетной записи созданной ранее> и переименовываем название скрипта l4d2server в желаемое название через файловый менеджер, допустим l4d2_test_coop, и после открываем этот файл двойным кликом мыши прямо в файловом менеджере.
В открывшемся окне, в разделе # Start Variables настраиваем:
После ниже находим и заменяем:
На:
т.к. из-за strictportbind сервер не видно в списках игровых серверов Steam в меню игры.
Сохраняем и переходим к следующему шагу.
Запускаем установку, и следуем указаниям:
В процессе установки скрипт сам настроит SteamCMD и положит все в папку созданного нами пользователя, файлы сервера будут располагаться в папке serverfiles, steamcmd в папке steamcmd ну в общем все достаточно понятно.
Автоматический мониторинг сервера:
Теперь наш сервер каждые 5 минут проверяется, и если он зависнет или упадет то запустится вновь.
Разберем команды управления сервером:
Официальная документация тут
Запуск:
Остановка:
Перезапуск:
Обновление:
проверка файлов:
Мониторинг:
Консоль сервера:
Для выхода из консоли сервера нажмите “CTRL+b d”.
Заметка: нажатие “CTRL+c” выключает сервер.
Настройка
Для того чтобы сервер корректно отображался и к нему можно было подключится нужно добавить конфиг сервера, он называется server.cfg и содержит:
Кладем server.cfg в папку /l4d2_test_coop/serverfiles/left4dead2/cfg и пробуем запустить, на этом все, удачных экспериментов!
Обращаю ваше внимание на то, что для VDS/VPS в качестве операционной системы рекомендуется Debian, в данном руководстве я рассматриваю Debian 8 X64.
Нам понадобится следующее программное обеспечение:
- ExtraPuTTY - для входа на сервер через протокол SSH
- WinSCP - это файловый менеджер, через который мы будем работать с файлами.
Эта библиотека нужна расширению работы с mysql базами данных dbi.mysql.ext
Код:
apt-get install lib32z1
Код:
dpkg --add-architecture i386; apt-get update; apt-get install tmux mailutils postfix ca-certificates curl file lib32gcc1 libstdc++6 libstdc++6:i386
Код:
apt-get install libdbd-mysql-perl
Код:
wget http://search.cpan.org/CPAN/authors/id/B/BO/BORISZ/Geo-IP-PurePerl-1.25.tar.gz
tar -zxf Geo-IP-PurePerl-1.25.tar.gz
cd Geo-IP-PurePerl-1.25
perl Makefile.PL
make
make test
make install
Код:
apt-get install libgeo-ip-perl
Код:
apt-get install gdb
Установка:
Создаем нового пользователя с названием сервера, можно как хотите это просто для понятности, т.к. под root не безопасно и крайне не рекомендуется самой Valve, в процессе вас попросят указать пароль, если пароль одинаков с названием учетной записи то, он спрашиваться не будет.
Код:
adduser l4d2_test_coop
Код:
su - l4d2_test_coop
Скачиваем скрипт управления сервером:
Код:
wget http://gameservermanagers.com/dl/l4d2server
Код:
chmod +x l4d2server
В открывшемся окне, в разделе # Start Variables настраиваем:
- defaultmap - это начальная карта с которой стартует сервер
- maxplayers - максимальное кол-во игроков
- port - желаемый порт сервера.
- ip - ип текущего сервера.
После ниже находим и заменяем:
Код:
parms="-game left4dead2 -strictportbind -ip ${ip} -port ${port} +clientport ${clientport} +map ${defaultmap} +servercfgfile ${servercfg} -maxplayers ${maxplayers}"
Код:
parms="-game left4dead2 -ip ${ip} -port ${port} +map ${defaultmap} -maxplayers ${maxplayers} +servercfgfile ${servercfg}"
Сохраняем и переходим к следующему шагу.
Запускаем установку, и следуем указаниям:
Код:
./l4d2_test_coop install
Автоматический мониторинг сервера:
Код:
crontab -e
Код:
0 5 * * * /home/l4d2_test_coop/l4d2_test_coop monitor > /dev/null 2>&1
Разберем команды управления сервером:
Официальная документация тут
Запуск:
Код:
./l4d2_test_coop start
Код:
./l4d2_test_coop stop
Код:
./l4d2_test_coop restart
Код:
./l4d2_test_coop update
Код:
./l4d2_test_coop validate
Код:
./l4d2_test_coop monitor
Для выхода из консоли сервера нажмите “CTRL+b d”.
Заметка: нажатие “CTRL+c” выключает сервер.
Код:
./l4d2_test_coop console
Для того чтобы сервер корректно отображался и к нему можно было подключится нужно добавить конфиг сервера, он называется server.cfg и содержит:
Код:
// *Server settings* //
// Название сервера
hostname "l4d2_coop_server"
sv_lan 0
sv_region 255
// Ваш ркон пароль
rcon_password "l4d2_coop_server"
// Кол-во неудачных попыток перед баном IP адреса того кто пытается зайти
sv_rcon_maxfailures 5
sv_search_key "l4d2_coop_server"
sv_tags "теги"
sv_contact "сайт или почта"
// *Additional settings* //
// Разрешенные режимы игры,если их несколько то через запятую без пробелов
sm_cvar sv_gametypes "coop,realism"
sm_cvar sv_alltalk 1
sm_cvar sv_cheats 0
// *Slot and players settings* //
// Allow or disallow the wait command on clients connected to this server
sm_cvar sv_allow_wait_command 0
sm_cvar sv_allow_lobby_connect_only 0
sm_cvar sv_maxplayers 4
sm_cvar sv_visiblemaxplayers 4
sm_cvar sv_force_unreserved 1
Последнее редактирование: