Автозапуск сервера csgo centos

Aleksandros

Участник
Сообщения
202
Реакции
6
Здравствуйте, как сделать что бы сервер csgo автоматически запускался после падения?
На centos.
 

MFS

Участник
Сообщения
1,533
Реакции
787
на дебиан
требуется screen, lsof



run1.sh

#!/bin/sh
cd /home/***/steam_pipe/csg2
screen -A -m -d -S csg2 ./run2.sh



run2.sh

#!/bin/sh
cd /home/***/steam_pipe/csg2

echo Starting...
while true
do
kill -9 $( lsof -i:27033 -t )
sleep 2

./srcds_run -game csgo -norestart -console -debug -port 27033 +net_public_adr my_ip +ip my_ip +hostport 27033 -usercon +game_type 0 +game_mode 0 +mapgroup mgall +map de_dust2 -maxplayers_override 42

echo Restarting in 3 Seconds...
sleep 3
done
 

Aleksandros

Участник
Сообщения
202
Реакции
6
на дебиан
требуется screen, lsof



run1.sh

#!/bin/sh
cd /home/***/steam_pipe/csg2
screen -A -m -d -S csg2 ./run2.sh



run2.sh

#!/bin/sh
cd /home/***/steam_pipe/csg2

echo Starting...
while true
do
kill -9 $( lsof -i:27033 -t )
sleep 2

./srcds_run -game csgo -norestart -console -debug -port 27033 +net_public_adr my_ip +ip my_ip +hostport 27033 -usercon +game_type 0 +game_mode 0 +mapgroup mgall +map de_dust2 -maxplayers_override 42

echo Restarting in 3 Seconds...
sleep 3
done

Спасибо а можно подробнее? Под центос пойдет?
Это мне нужно создать два файла, как правильно подставить свои значения? А потом что?

screen, lsof установлены.
 
Последнее редактирование:

Aleksandros

Участник
Сообщения
202
Реакции
6
Если ты "плаваешь" в линуксе, тогда лучше такая инструкция

csgoserver: Counter-Strike: Global Offensive |

Пытаюсь поставить по инструкции.
На этапе:
4. Run the installer and follow the instructions.
./csgoserver install

Пишет что нехватает места на диске ( диск на 30гб), оно что пытается мне новый сервер в другую директорию поставить? Без этого никак? На уже установленный сервер нельзя это поставить?

 

rokfestr

Участник
Сообщения
340
Реакции
63
Пытаюсь поставить по инструкции.
На этапе:
4. Run the installer and follow the instructions.
./csgoserver install

Пишет что нехватает места на диске ( диск на 30гб), оно что пытается мне новый сервер в другую директорию поставить? Без этого никак? На уже установленный сервер нельзя это поставить?
Отредактируй файл csgoserver
Попробуй изменить:
C-подобный:
filesdir="${rootdir}/serverfiles"
serverfiles на свою папку
 

Саша Шеин

Кому костылей?
Сообщения
1,697
Реакции
621
Как вариант:
1) Если серверу уже есть, то рядом с csgoserver создай папку - serverfiles.
2) Все файлы сервера (старого), скопируй в папку serverfiles (А именноОффтоп)
3) Попробовать запустить сервер ./csgoserver st
 

Aleksandros

Участник
Сообщения
202
Реакции
6
Отредактируй файл csgoserver
Попробуй изменить:
C-подобный:
filesdir="${rootdir}/serverfiles"
serverfiles на свою папку

И оно мне обнулит текущий сервер на чистый, собьет все настройки?

Как вариант:
1) Если серверу уже есть, то рядом с csgoserver создай папку - serverfiles.
2) Все файлы сервера (старого), скопируй в папку serverfiles (А именноОффтоп)
3) Попробовать запустить сервер ./csgoserver st

Как вариант можно попробовать.

А нету что то попроще, вроде скрипта? что бы не рисковать... сервер не тягать туда-сюда.
 

rokfestr

Участник
Сообщения
340
Реакции
63
И оно мне обнулит текущий сервер на чистый, собьет все настройки?



Как вариант попробую сейчас.

А нету что то попроще, вроде скрипта? что бы не рисковать... сервер не тягать туда-сюда.
Скопируй себе папку cfg и запускай, настройки не должно менять. Этот скрипт удобный в использовании, есть много нужных функций.
 

Aleksandros

Участник
Сообщения
202
Реакции
6
Как вариант:
1) Если серверу уже есть, то рядом с csgoserver создай папку - serverfiles.
2) Все файлы сервера (старого), скопируй в папку serverfiles (А именноОффтоп)
3) Попробовать запустить сервер ./csgoserver st

Не получилось, сервер не стартует(

Скопируй себе папку cfg и запускай, настройки не должно менять. Этот скрипт удобный в использовании, есть много нужных функций.

Твой вариант тоже не пашет, всеравно качает файлы в папку serverfiles(
 

rokfestr

Участник
Сообщения
340
Реакции
63
Не получилось, сервер не стартует(



Твой вариант тоже не пашет, всеравно качает файлы в папку serverfiles(
Скинь тот файл который ты редактировал, я посмотрю что ты там сделал. И полный путь к папке csgo напиши
 

Aleksandros

Участник
Сообщения
202
Реакции
6
Скинь тот файл который ты редактировал, я посмотрю что ты там сделал. И полный путь к папке csgo напиши
/root/Servercsgo/servercsgo/csgo

Если после редактирования файла, поробовать запустить сервер ./csgoserver st то пишет:
Screenshot

Если попробовать установить ./csgoserver install то пишет:
Screenshot
 

Вложения

  • csgoserver.rar
    2.1 КБ · Просмотры: 8
Последнее редактирование:

rokfestr

Участник
Сообщения
340
Реакции
63
/root/Servercsgo/servercsgo/csgo

Если после редактирования файла, поробовать запустить сервер ./csgoserver st то пишет:
Screenshot

Если попробовать установить ./csgoserver install то пишет:
Screenshot
Проблема в том что сервер ты не сможешь запустить под рутом, для этого тебе нужно создать пользователя. В консоле пишешь:
C-подобный:
adduser csgoserver
Дальше вводишь пароль (при вводе у тебя будет показывать что ты ничего не пишешь, так должно быть)
После создания пользователя, логинешься под ним, кладешь этот скрипт, редактируешь его под себя. Нужно сменить ИР сервера, порт и количество слотов.
Потом создаешь папку serverfiles и туда кладешь свой сервер. Не забудь выставить права на запуск скрипта. Запускаешь сервер: ./csgoserver start
(P.S Скрипт должен находиться в корне пользователя)
 

Вложения

  • csgoserver.zip
    2 КБ · Просмотры: 8

Aleksandros

Участник
Сообщения
202
Реакции
6
Проблема в том что сервер ты не сможешь запустить под рутом, для этого тебе нужно создать пользователя. В консоле пишешь:
C-подобный:
adduser csgoserver
Дальше вводишь пароль (при вводе у тебя будет показывать что ты ничего не пишешь, так должно быть)
После создания пользователя, логинешься под ним, кладешь этот скрипт, редактируешь его под себя. Нужно сменить ИР сервера, порт и количество слотов.
Потом создаешь папку serverfiles и туда кладешь свой сервер. Не забудь выставить права на запуск скрипта. Запускаешь сервер: ./csgoserver start
(P.S Скрипт должен находиться в корне пользователя)

На первом скрине видно что я из под пользователя запускал.

Сделал все по твоей инфе, пишет отказано в доступе: Screenshot
После этого Поставил права 777 на все каталоги и файлы в них, и создал csgo-server-script.log в соответствующей директории. И всеравно выбивает что нет прав для запуска.

В логах ошибка:
Авг 12 19:09:20 csgo-server: CHECK: FATAL: check_permissions.sh exiting with code: 1

П.С. у тя есть скайп чувак?
 
Последнее редактирование:

l.st

Участник
Сообщения
198
Реакции
68
То, что вы предлагаете, не спасёт от "полупадения", то есть зависания.

Можно добавить вот такое в crontab с интервалом в 5 минут:
*/5 * * * * sh /путьдоскрипта/check.sh

А сам файл check.sh:
C-подобный:
#!/bin/bash

otp=`php -r '$addr="ВАШАДРЕС";
$port=ВАШПОРТ;
$qw=chr(32);
$fp = fsockopen ("udp://".$addr,$port);
fwrite($fp,"\xFF\xFF\xFF\xFF\x54\x53\x6F\x75\x72\x63\x65\x20\x45\x6E\x67\x69\x6E\x65\x20\x51\x75\x65\x72\x79\x00".chr(10));
$start=time(); socket_set_timeout($fp,1); $st=fread($fp,1); $r=socket_get_status($fp); $r=$r["unread_bytes"]; $st.=@fread($fp,$r); fclose($fp);
$otp=1;
if ($st=="")
$otp=0;
echo $otp;
'
`
if [ "$otp" = "0" ];
then
#  echo "Not working!"   
sh /путьдосервера/run.sh
#  echo "Working fine!"
fi

Из плюсов - сервер всегда поднимется, даже после перезагрузки системы.
Из минусов - за 5 минут простоя можно потерять весь онлайн. Поэтому лучше это использовать вместе со стандартными алгоритмами, встроенными в лаунчер сервера srcds_run.
 

Aleksandros

Участник
Сообщения
202
Реакции
6
Матерная речь
То, что вы предлагаете, не спасёт от "полупадения", то есть зависания.

Можно добавить вот такое в crontab с интервалом в 5 минут:
*/5 * * * * sh /путьдоскрипта/check.sh

А сам файл check.sh:
C-подобный:
#!/bin/bash

otp=`php -r '$addr="ВАШАДРЕС";
$port=ВАШПОРТ;
$qw=chr(32);
$fp = fsockopen ("udp://".$addr,$port);
fwrite($fp,"\xFF\xFF\xFF\xFF\x54\x53\x6F\x75\x72\x63\x65\x20\x45\x6E\x67\x69\x6E\x65\x20\x51\x75\x65\x72\x79\x00".chr(10));
$start=time(); socket_set_timeout($fp,1); $st=fread($fp,1); $r=socket_get_status($fp); $r=$r["unread_bytes"]; $st.=@fread($fp,$r); fclose($fp);
$otp=1;
if ($st=="")
$otp=0;
echo $otp;
'
`
if [ "$otp" = "0" ];
then
#  echo "Not working!"
sh /путьдосервера/run.sh
#  echo "Working fine!"
fi

Из плюсов - сервер всегда поднимется, даже после перезагрузки системы.
Из минусов - за 5 минут простоя можно потерять весь онлайн. Поэтому лучше это использовать вместе со стандартными алгоритмами, встроенными в лаунчер сервера srcds_run.

Что значит не спасет, а на какой х.. я еб... уже вторые сутки с этой х....й.
 
Последнее редактирование:

rokfestr

Участник
Сообщения
340
Реакции
63
То, что вы предлагаете, не спасёт от "полупадения", то есть зависания.

Можно добавить вот такое в crontab с интервалом в 5 минут:
*/5 * * * * sh /путьдоскрипта/check.sh

А сам файл check.sh:
C-подобный:
#!/bin/bash

otp=`php -r '$addr="ВАШАДРЕС";
$port=ВАШПОРТ;
$qw=chr(32);
$fp = fsockopen ("udp://".$addr,$port);
fwrite($fp,"\xFF\xFF\xFF\xFF\x54\x53\x6F\x75\x72\x63\x65\x20\x45\x6E\x67\x69\x6E\x65\x20\x51\x75\x65\x72\x79\x00".chr(10));
$start=time(); socket_set_timeout($fp,1); $st=fread($fp,1); $r=socket_get_status($fp); $r=$r["unread_bytes"]; $st.=@fread($fp,$r); fclose($fp);
$otp=1;
if ($st=="")
$otp=0;
echo $otp;
'
`
if [ "$otp" = "0" ];
then
#  echo "Not working!"  
sh /путьдосервера/run.sh
#  echo "Working fine!"
fi

Из плюсов - сервер всегда поднимется, даже после перезагрузки системы.
Из минусов - за 5 минут простоя можно потерять весь онлайн. Поэтому лучше это использовать вместе со стандартными алгоритмами, встроенными в лаунчер сервера srcds_run.
Всё спасает, там есть скрипт на проверку состояния сервера, если что то его автоматом поднимет или перезапустит, так же при краше сервер сам перезапускается
--- Добавлено позже ---
На первом скрине видно что я из под пользователя запускал.

Сделал все по твоей инфе, пишет отказано в доступе: Screenshot
После этого Поставил права 777 на все каталоги и файлы в них, и создал csgo-server-script.log в соответствующей директории. И всеравно выбивает что нет прав для запуска.

В логах ошибка:
Авг 12 19:09:20 csgo-server: CHECK: FATAL: check_permissions.sh exiting with code: 1

П.С. у тя есть скайп чувак?
Скайп: rokfestr
Наберешь в течении 30 мин то успею помочь, а так завтра с обеда
 

Aleksandros

Участник
Сообщения
202
Реакции
6
После установки менеджера, перестала работать скачка файлов с фтп. Настройки кфг в тех же файлах остаются?
 

ykpon

Владыка
Сообщения
675
Реакции
399
То, что вы предлагаете, не спасёт от "полупадения", то есть зависания.

Можно добавить вот такое в crontab с интервалом в 5 минут:
*/5 * * * * sh /путьдоскрипта/check.sh

А сам файл check.sh:
C-подобный:
#!/bin/bash

otp=`php -r '$addr="ВАШАДРЕС";
$port=ВАШПОРТ;
$qw=chr(32);
$fp = fsockopen ("udp://".$addr,$port);
fwrite($fp,"\xFF\xFF\xFF\xFF\x54\x53\x6F\x75\x72\x63\x65\x20\x45\x6E\x67\x69\x6E\x65\x20\x51\x75\x65\x72\x79\x00".chr(10));
$start=time(); socket_set_timeout($fp,1); $st=fread($fp,1); $r=socket_get_status($fp); $r=$r["unread_bytes"]; $st.=@fread($fp,$r); fclose($fp);
$otp=1;
if ($st=="")
$otp=0;
echo $otp;
'
`
if [ "$otp" = "0" ];
then
#  echo "Not working!"  
sh /путьдосервера/run.sh
#  echo "Working fine!"
fi

Из плюсов - сервер всегда поднимется, даже после перезагрузки системы.
Из минусов - за 5 минут простоя можно потерять весь онлайн. Поэтому лучше это использовать вместе со стандартными алгоритмами, встроенными в лаунчер сервера srcds_run.
Из-за атаки методом VSE сервер будет с таким скриптом постоянно перезапускаться.
 
Сверху Снизу