Скрипт запуска серверов hlds и srcds в Linux

MFS

Участник
Сообщения
1,533
Реакции
787
Скрипт запуска серверов hlds и srcds в Linux

Автор LeXiKoN
Версия 0.98 от 02.05.2011

Оригинал (там же и поддержка автора)

Особенности:

Цветовая индикация, что позволит вам легко понять информацию
Распределения серверов по ядрам ( подробнее ниже )
Подключение по команде к консоли сервера
Определение статуса работы сервера
Возможность компиляции плагинов в каталоге scripting AmxModX
Проверка версии скрипта
Предстартовая проверка на запущенный процесс hlds
Проверка работоспособности сервера ( необходимо добавить фунцию в crontab - читаем раздел "Установка" )
Ведение лога консоли сервера в файл cstrike/qconsole.log
Ведение лога проверки работоспособности сервера в файл checker.log
Очистка логов checker.log и qconsole.log при превышении размера в 10Мб. ( необходимо добавить фунцию в crontab - читаем раздел "Установка" )

Конфигурирование:

Конфигурация происходит напрямую в самом файле с помощью блокнота

SERVER_NAME="My Server" #Название сервера
screen_name=server #Название screen-сессии
path="/home/hlds/server/" #Путь до ROOT-директории сервера
hlds_ip=0.0.0.0 #IP сервера
hlds_port=27015 #Порт сервера
hlds_gametype=cstrike #Тип игры
hlds_players=20 #Максимальное количество игроков на сервере
hlds_map=de_inferno #Имя первоначальной карты при запуске
hlds_pid=server.pid
screen_pid=$screen_name-screen.pid
hlds_options="-pingboost 3 +exec server.cfg +log on" #Дополнительные параметры запуска
use_user=hlds #Имя юзера от которого запускается сервер
condebug=1
check_version=0
checker_command="quakestat" #Команда пакета qStat отвечающего за проверку сервера
restarttime=10 #Время после которого сервер будет перезагружен ( выводится в чат на сервере )

#----------------------------------------------------
# Номер ядра/процессора в линуксе
# 2х-ядерные: 0 - первое ядро, 1 - второе ядро
# 4x-ядерные: 0 - первое ядро ... 3 - четвертое ядро
# По аналогии с другими многоядерными процессорами
use_core=0
#----------------------------------------------------


Требования:


Установленные пакеты: qstat, tail, screen, wget, crontab

Установка:

Скачиваем txt файл для нужной системы
server_deb.txt - Для систем на дистрибутиве Debian
server_rh.txt - Для систем на дистрибутиве RedHat

Переименовываем в нужное вам имя без расширения
Копируем в /etc/init.d/

Устанавливаем пакет qstat, а также другие необходимые для работы пакеты, описанные в разделе "Требования"

Debian подобные дистрибы:
aptitude install qstat

Fedora/Mandriva/CentOS подобные дистрибы:
yum install qstat

Если данный пакет отсутствует в ваших дистрибутивах то скачиваем исходники и собираем!

Устанавливаем права
chmod +x /etc/init.d/hlds_runscript

Добавляем в автозагрузку:

Системы RedHat:
chkconfig --add [имя скрипта]

Системы Debian:
update-rc.d [имя скрипта] defaults

Добавляем проверку работы сервера по расписанию в Crontab (!!!!!!! Проверка будет
происходить каждые 30 минут !!!!!!!)

crontab -e

и вносим туда строку
0,30 * * * * /etc/init.d/[имя скрипта] checker

Добавляем проверку размеров логов по расписанию в Crontab (!!!!!!! Проверка будет происходить каждую неделю !!!!!!!)

crontab -e

и вносим туда строку
0 0 * * 0 /etc/init.d/[имя скрипта] logsize

Конфигурируем скрипт!!

Не забудьте
checker_command="quakestat" #Команда пакета qStat отвечающего за проверку сервера

В Вашем дистрибутиве она может быть иной! Иначе не будет работать проверка сервера по расписанию

Пользуемся

Для Debian Squeeze ВАЖНО! Если вы используете несколько скриптов для каждого сервера в отдельности то НЕОБХОДИМО поменять в заголовке файла параметр
# Provides:

для каждого сервера он должен быть разный, к примеру:
# Provides: server1


Скрипт

Debian/Ubuntu и прочие

HLDS:
wget http://eqline.ru/project/hlds_init_script/server_deb.txt

SOURCE:
wget http://eqline.ru/project/hlds_init_script/server_deb_source.txt

RedHat/Fedora и прочие

HLDS:
wget http://eqline.ru/project/hlds_init_script/server_rh.txt

SOURCE:
wget http://eqline.ru/project/hlds_init_script/server_rh_source.txt


Файлы во вложении от 27-11-11, более свежие версии смотрите на сайте автора
 

Вложения

  • server_deb.txt
    13.2 КБ · Просмотры: 218
  • server_deb_source.txt
    12.5 КБ · Просмотры: 250
  • server_rh.txt
    13 КБ · Просмотры: 64
  • server_rh_source.txt
    12.2 КБ · Просмотры: 95
Последнее редактирование:

Rt.

Участник
Сообщения
396
Реакции
119
оригиналом не пользовался. но извлек 3 момента для себя.
а то мои сервы выключались не правильно.
 

Besenok_Kid

Участник
Сообщения
220
Реакции
63
Простите лаймера за глупый вопрос, но очень хочется чему то научиться.
Скрипт server_deb_source.txt
Не могу понять как решить проблему "Файл qconsole.log отсутствует"

[>>] Проверка размера .log файлов
Размер checker.log: 475 байт
Файл qconsole.log отсутствует
[>>] Запуск сервера My Server
Порт севрера: 27015
Привязка к ядру: 1
Запуск от юзера: root
Статус: root@artem:

Сам отвечаю на свой вопрос.
sudo touch /путь/к/файлу/файл (создать файл, если его нет)
 
Последнее редактирование:

FoLk

Участник
Сообщения
102
Реакции
57
Как заставить работать сразу на 6 ядрах?
Или бред?


Прописал 0,1,2,3,4,5

Се равно грузит 1 проц:

Tasks: 116 total, 2 running, 111 sleeping, 3 stopped, 0 zombie
Cpu0 : 0.0%us, 0.0%sy, 0.0%ni, 99.0%id, 0.0%wa, 0.0%hi, 1.0%si, 0.0%st
Cpu1 : 0.3%us, 0.0%sy, 0.0%ni, 93.4%id, 6.3%wa, 0.0%hi, 0.0%si, 0.0%st
Cpu2 : 73.1%us, 6.4%sy, 0.0%ni, 19.9%id, 0.7%wa, 0.0%hi, 0.0%si, 0.0%st
Cpu3 : 0.0%us, 0.0%sy, 0.0%ni,100.0%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Cpu4 : 0.0%us, 0.0%sy, 0.0%ni,100.0%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Cpu5 : 0.0%us, 0.0%sy, 0.0%ni,100.0%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
 

criminalist

Участник
Сообщения
194
Реакции
18
Простите лаймера за глупый вопрос, но очень хочется чему то научиться.
Скрипт server_deb_source.txt
Не могу понять как решить проблему "Файл qconsole.log отсутствует"

[>>] Проверка размера .log файлов
Размер checker.log: 475 байт
Файл qconsole.log отсутствует
[>>] Запуск сервера My Server
Порт севрера: 27015
Привязка к ядру: 1
Запуск от юзера: root
Статус: root@artem:

Сам отвечаю на свой вопрос.
sudo touch /путь/к/файлу/файл (создать файл, если его нет)
Зачем sudo понять не могу ?) и кстати забудьте про запуск сервера от рута плохой тон
 

Rt.

Участник
Сообщения
396
Реакции
119
FoLk,прописывать нужно только 1 ядро, а не все подряд, через запятую.
 

zzipper

Участник
Сообщения
1
Реакции
0
Сайт недоступен. Зазеркальте, пожалуйста.
 

FoLk

Участник
Сообщения
102
Реакции
57
Восстановите ссылки плиз(((
 

lexikon

Участник
Сообщения
1
Реакции
1
че вы ржоте насчет рута :DDD тролли
везде писал что скрипт писал под себя...какая разница от кого вы пускаете...сервера все равно от пользователя запускаются, которого укажете...
 
  • Мне нравится
Реакции: FoLk

FoLk

Участник
Сообщения
102
Реакции
57
lexikon, скрипт тема) спасибо, ссылки вновь работают)
 

ZloyMonah

Dark Guardian
Сообщения
479
Реакции
71
Я как раз с ними и работаю, только чуток подправил.... хорошая штуковина! Думаю сам ваять когда только столкнулся с ними!...

qconsole.log - если его нет, то он должен создать, там в самом скрипте есть ошибка
то есть в папке cstrike создается console.log, а скрипт пытается работать с qconsole.log
нужно просмотреть скрипт и поправить!..
А так правильная идея! )))

Добавлено через 3 минуты
FoLk, так работать не будет! Там сделана привязка к дру если нужно принудительно менять, а так программа или серв что там у вас по версии хз само цепляеться на ядра! Причем начина с 0
criminalist, истина....
Sergius, не понял ваш сарказм, если это был он или это смех от незнания???

Добавлено через 3 часа 53 минуты
Если кто будет работать или захочет с ним работать, пишите тут, постараюсь тут отвечать, по его работе!...
 
Последнее редактирование:

yagoo

Участник
Сообщения
111
Реакции
16
У кого есть скачанные скриптики? Поделитесь за "Спасибо", пожалуйста. ;)
 

yagoo

Участник
Сообщения
111
Реакции
16
Вот файлики:
 

Вложения

  • server_deb.txt
    13.3 КБ · Просмотры: 50
  • server_deb_source.txt
    12.5 КБ · Просмотры: 57
  • server_rh.txt
    13 КБ · Просмотры: 19
  • server_rh_source.txt
    12.3 КБ · Просмотры: 28
Сообщения
25
Реакции
0
А из-за этого скрипта не может быть такого, что сервер CSS V34 на VDS при смене карты ложится? Это бывает не всегда, раза 3-5 в день
 

panikajo

Участник
Сообщения
866
Реакции
231
[>>] Запуск сервера [Gaming-Servera.Ru] Public Ukraine
Порт севрера: 27015
Привязка к ядру: 0
Запуск от юзера: root
Статус: [root@linco143 init.d]#
что делать?
 
Сверху Снизу