Удобный скрипт запуска сервера кс :) |
Здравствуйте, гость Вход | Регистрация
Наши новости:
|
|
|
![]() |
Удобный скрипт запуска сервера кс :) |
![]() |
![]()
Сообщение
|
![]() ![]() |
otec_cs,
deb незапускаються через консоль ,а устанавливаються с помошью apt-get install имя_пакета в случий дебиано подобных систем Код ./блин.sh для того чтобы запустить файл из текушей папки с именем блин.sh :biggrin: |
|
|
![]() |
![]()
Сообщение
|
![]() |
./ вообще кроме это го запуски существуют какие нить ?
или ./ Это слеш точка всегда используется для запусков ? |
|
|
![]() |
![]()
Сообщение
|
![]() ![]() |
otec_cs,
я же написал обясню ешё раз 1. бинарники(проги) которые сидят в папках из PATH достаточно запустить просто написав их имя ,тоесть к примеру Код top 2. если надо запустить программу из папки /root/myfolder ,с именем proga пишеш так: Код cd /root/myfolder ./proga команда cd меняет текушую папку |
|
|
![]() |
![]()
Сообщение
|
![]() |
а tar что такое ?
Можно ли запустить на ubunty teamviewer ? |
|
|
![]() |
![]()
Сообщение
|
![]() ![]() |
otec_cs,
tar - архиватор если моя память мне не обманывает teamviewer - анал на линуксе ,ssh рулет ,и с мойм мнением многие согласяться :) |
|
|
![]() |
![]()
Сообщение
|
![]() ![]() |
Когда запускаю серв пишет
look root@hitman-desktop:/home/hitman/hlds/hlds# server_pub /usr/bin/server_pub: line 1: #!/bin/bash: No such file or directory cat: /home/hitman/hlds/hlds/hlds_pub/test.pid: No such file or directory [178.74.232.221:27015] Check run privileges of hlds_run Сорри второй день на линуксе ((((многое не знаю
Отредактировал: Hitmaaaaan, - 24.2.2011, 13:33
|
|
|
![]() |
![]()
Сообщение
|
![]() ![]() |
Hitmaaaaan, я на линухе не работал, но думаю "No such file or directory" означает, что путь неверный :)
А насчет "Check run privileges of hlds_run" попробуй поставить права 777
Отредактировал: ValikDRV, - 24.2.2011, 13:43
|
|
|
![]() |
![]()
Сообщение
|
![]() ![]() |
|
|
|
![]() |
![]()
Сообщение
|
![]() ![]() |
Цитата path="/media/Servers/hlds_pub" #Путь до ROOT-директории сервера (без /в конце) нэ? |
|
|
![]() |
![]()
Сообщение
|
![]() |
root@server1:~# start_27013
cat: /home/empy/csserv/27013/hlds27013.pid: Нет такого файла или каталога How to use: /usr/bin/start_27013 {start|stop|restart|status|console|checker} [x.x.x.x:27013] Log Cleared [x.x.x.x:27013] Starting servername pid 4727's current affinity list: 0-3 pid 4727's new affinity list: 0-3 4727: old priority 0, new priority -10 root@server1:~# start_27013 checker [HLDS-Checker] servername *[NO RESPONSE]* [x.x.x.x:27013] Stopping of servername [x.x.x.x:27013] Log Cleared [x.x.x.x:27013] Starting servername pid 4816's current affinity list: 0-3 pid 4816's new affinity list: 0-3 4816: old priority 0, new priority -10 cat: /home/empy/csserv/27013/hlds27013.pid: Нет такого файла или каталога создаю вручную, он удаляется после отключения сервера и когда делаю start_27013 checker на рабочем сервере сервер пишет [HLDS-Checker] servername *[NO RESPONSE]* [x.x.x.x:27013] Stopping of servername [x.x.x.x:27013] Log Cleared [x.x.x.x:27013] Starting servername pid 4816's current affinity list: 0-3 pid 4816's new affinity list: 0-3 4816: old priority 0, new priority -10 сервер перезапускается, хотя он не упал
Отредактировал: empy, - 24.2.2011, 17:25
|
|
|
![]() |
![]()
Сообщение
|
![]() ![]() |
'ValikDRV'
а как установить права 777 ???? осталось две ошибки cat: /home/hitman/hlds/hlds/hlds_pub/test.pid: No such file or directory Check run privileges of hlds_run
Отредактировал: Hitmaaaaan, - 24.2.2011, 18:27
|
|
|
![]() |
![]()
Сообщение
|
![]() |
'ValikDRV' а как установить права 777 ???? осталось две ошибки cat: /home/hitman/hlds/hlds/hlds_pub/test.pid: No such file or directory Check run privileges of hlds_run делай так: 1. cd /home/hitman/hlds/hlds/hlds_pub/ 2. chmod +x *.so & chmod +x hlds_* потом пробуй запустить
Отредактировал: empy, - 24.2.2011, 19:15
|
|
|
![]() |
![]()
Сообщение
|
![]() ![]() |
Hitmaaaaan,
Код chmod -R 777 /путь к hlds_run empy, проблема с параметрами файла ,или изменение важных строк кода =/ для теста сделаю вывод из своего сервака но не шас |
|
|
![]() |
![]()
Сообщение
|
![]() |
Hitmaaaaan, Код chmod -R 777 /путь к hlds_run empy, проблема с параметрами файла ,или изменение важных строк кода =/ для теста сделаю вывод из своего сервака но не шас в том то и дело я код не трога почти ставил запускалку от чела который выкладывал ссылку в этой теме 0.94 версия или както так, все тоже самое чекер делает рестарт сервера, за место того чтобы пройти мимо если сервер работает |
|
|
![]() |
![]()
Сообщение
|
![]() ![]() |
empy,
я как понял из написанного мой скрипт чекер а его запуск (лексикона) ,используйте один и тотже скрипт тогда небудет проблем |
|
|
![]() |
![]()
Сообщение
|
![]() |
|
|
|
![]() |
![]()
Сообщение
|
![]() ![]() |
|
|
|
![]() |
![]()
Сообщение
|
![]() ![]() |
Hitmaaaaan,
покажы тут свой скрипт и напиши параметры ,где твой сервак ,ипшник итд ... empy, можно дать содержимое скрипта тут ? + ипшник и порт сервака ? |
|
|
![]() |
![]()
Сообщение
|
![]() ![]() |
|
|
|
![]() |
![]()
Сообщение
|
![]() |
скрипт #!/bin/bash # # authors: LeXiKoN & Puma http://eqline.ru & https://c-s.net.ua # version: 1.09 # Source function library. #. /lib/lsb/init-functions VERSION="1.09" ##################################################### # Configuration ##################################################### server_name="CSDM ::only HS::" screen_name="serv27" #Название screen-сессии use_user="root" #Р?РјСЏ юзера РѕС‚ которого запускается сервер path="/home/empy/csserv/27027" #Путь РґРѕ ROOT-директории сервера (без /РІ конце) hlds_ip="95.31.x.x" #IP сервера ,РЅРµ ставить 0.0.0.0 hlds_port="27027" #РџРѕСЂС‚ сервера hlds_players="18" #Максимальное количество РёРіСЂРѕРєРѕРІ РЅР° сервере hlds_map="de_dust2" #Р?РјСЏ первоначальной карты РїСЂРё запуске hlds_options1="-pingboost 3 -debug" #Дополнительные параметры запуска condebug="1" #Включить логи РІ файле qconsole.log РёР· папки cstrike priority="-10" #Приоритет для сервера (-20 - Высокий ;20 - РќРёР·РєРёР№) usecore="0,1,2,3" #РџСЂРёРІСЏР·РєР° Рє процессору (0, 1, 2, 3) allcore="0,1,2,3" #РџСЂРѕРїРёС?ите числа СЏРґСЂРѕРІ ,начиная СЃ 0 (0,1 - двухядерный) hlds_pid="hlds27027.pid" #Р?РјСЏ pid файла сервера screen_pid="$screen_name-screen.pid" #Р?РјСЏ pid файла screen-a clear_logs="1" # очиС?ать лог файлы РїСЂРё запуске сервера через СЃРєСЂРёРїС‚? clear_cache="1" # очиС?ать РєСЌС?Рё системы перед запуском сервера? # работает только РїРѕРґ рутом start_cmd="/usr/bin/screen -AmdS $screen_name" checker_cmd="$path/quakestat" #Команда пакета qStat отвечающего Р·Р° проверку сервера hlds_pid_num=`cat $path/$hlds_pid` #Определяет число pid РѕС‚ сервака ##################################################### # End of configuration ##################################################### succes="[ РћРљ ]" failed="[ FAIL ]" status_on="[ Online ]" status_off="[ Offline ]" title="[$hlds_ip:$hlds_port]" if [ $condebug = 1 ]; then hlds_options2="-condebug" fi if [ ! -x $path/hlds_27027 ]; then printf "$title Check run privileges of hlds_27027 " exit 1 fi clear_logs() { if [ $use_user == root ]; then rm -f $path/debug.log rm -f $path/cstrike/qconsole.log rm -f $path/cstrike/logs/*.log rm -fr $path/cstrike/addons/amxmodx/logs/*.log else sudo -u $use_user rm -f $path/debug.log sudo -u $use_user rm -f $path/cstrike/qconsole.log sudo -u $use_user rm -f $path/cstrike/logs/*.log sudo -u $use_user rm -fr $path/cstrike/addons/amxmodx/logs/*.log fi printf "$title Log Cleared\n" } prestart_check() { if [ -f $path/$hlds_pid ] && [ -f $path/$screen_pid ]; then ch=`ps -ef | grep SCREEN | grep $hlds_port` if [ -n "$ch" ]; then printf "$title $server_name already its working (!!)\n" exit 1 else cd $path rm -rf $path/$screen_pid rm -rf $path/$hlds_pid fi fi } start() { prestart_check cd $path if [ $clear_logs == 1 ]; then clear_logs fi if [ $use_user == root ]; then if [ $clear_cache == 1 ]; then echo 3 > /proc/sys/vm/drop_caches fi $start_cmd ./hlds_27027 -game cstrike +maxplayers $hlds_players +map $hlds_map +ip $hlds_ip +port $hlds_port $hlds_options1 $hlds_options2 -pidfile $hlds_pid ps -ef | grep SCREEN | grep "$hlds_port" | grep -v grep | awk '{ print $2}' > $path/$screen_pid printf "$title Starting $server_name\n" sleep 1 hlds_pid_num=`cat $path/$hlds_pid` taskset -pc $usecore $hlds_pid_num renice -n $priority -p $hlds_pid_num else $start_cmd sudo -u $use_user ./hlds_27027 -game cstrike +maxplayers $hlds_players +map $hlds_map +ip $hlds_ip +port $hlds_port $hlds_options1 $hlds_options2 -pidfile $hlds_pid ps -ef | grep SCREEN | grep "$hlds_port" | grep -v grep | awk '{ print $2}' > $path/$screen_pid printf "$title Starting $server_name\n" sleep 1 hlds_pid_num=`cat $path/$hlds_pid` sudo taskset -pc $usecore $hlds_pid_num sudo renice -n $priority -p $hlds_pid_num fi } stop() { if [ $use_user == root ]; then if [ -f $path/$hlds_pid ] && [ -f $path/$screen_pid ]; then kill `cat $path/$screen_pid` sleep 1 rm -rf $path/$screen_pid rm -rf $path/$hlds_pid printf "$title Stopping of $server_name\n" else printf "$title Cannot stop $server_name, server not started\n" fi else if [ -f $path/$hlds_pid ] && [ -f $path/$screen_pid ]; then sudo -u $use_user kill `cat $path/$screen_pid` sleep 1 sudo -u $use_user rm -rf $path/$screen_pid sudo -u $use_user rm -rf $path/$hlds_pid printf "$title Stopping of $server_name\n" else printf "$title Cannot stop $server_name, server not started\n" fi fi } status() { printf "$title Status of $server_name\n\n" if [ $use_user == root ]; then $checker_cmd -retry 10 -interval 2 -a2s $hlds_ip:$hlds_port else sudo -u $use_user $checker_cmd -retry 10 -interval 2 -a2s $hlds_ip:$hlds_port fi } console() { if [ -f $path/$screen_pid ]; then printf "$title Connecting to $server_name\n" printf " For exit from console press Ctrl+A,D\n" printf " Dont press Ctrl+C\n" printf " Please wait...\n" sleep 1 if [ $use_user == root ]; then /usr/bin/screen -wipe /usr/bin/screen -d `cat $path/$screen_pid` /usr/bin/screen -R `cat $path/$screen_pid` else sudo -u $use_user /usr/bin/screen -wipe sudo -u $use_user /usr/bin/screen -d `cat $path/$screen_pid` sudo -u $use_user /usr/bin/screen -R `cat $path/$screen_pid` fi else printf "$title Cannot connect to $server_name, server not running" fi } checker() { checktag="[HLDS-Checker]" checkdown=`$checker_cmd -retry 10 -interval 2 -a2s $hlds_ip:$hlds_port | grep DOWN` checknoresp=`$checker_cmd -retry 10 -interval 2 -a2s $hlds_ip:$hlds_port | grep response` checkup=`$checker_cmd -retry 10 -interval 2 -a2s $hlds_ip:$hlds_port | grep cstrike` hlds_pid_num=`cat $path/$hlds_pid` check_allcore=`sudo taskset -pc "$hlds_pid_num" | grep $allcore` check_usecore=`sudo taskset -pc $hlds_pid_num | grep $usecore` time=`date +%X` date=`date +%D` if [ -n "$checkdown" ]; then printf "$checktag $server_name *[DOWN]*\n" printf "[$time - $date] *[DOWN]* $checkdown\n" >> $path/checker.log stop sleep 1 start sleep 1 echo ----------------ATTENTION---------------- >> $path/checker.log printf "StartUP $server_name:" >> checker.log ch=`ps -ef | grep SCREEN | grep $screen_name` if [ -n "$ch" ]; then printf " *[OK]* \n" >> checker.log else printf " *[FAILED]* \n" >> checker.log fi echo ----------------------------------------- >> $path/checker.log exit 1 fi if [ -n "$checknoresp" ]; then printf "$checktag $server_name *[NO RESPONSE]*\n" printf "[$time - $date] *[NO RESPONSE]* $checknoresp\n" >> $path/checker.log stop sleep 1 start sleep 1 echo ----------------ATTENTION---------------- >> $path/checker.log printf "StartUP $server_name:" >> checker.log ch=`ps -ef | grep SCREEN | grep $screen_name` if [ -n "$ch" ]; then printf " *[OK]* \n" >> checker.log else printf " *[FAILED]* \n" >> checker.log fi echo ----------------------------------------- >> $path/checker.log exit 1 fi if [ -n "$checkup" ]; then printf "$checktag $server_name *[OK]*\n" printf "[$time - $date] *[OK]* $checkup\n" >> $path/checker.log fi if [ $usecore == $allcore ]; then if [ $use_user == root ]; then renice -n $priority -p $hlds_pid_num else sudo renice -n $priority -p $hlds_pid_num fi exit 1 else if [ -n "$check_allcore" ]; then printf "$checktag *[BAD PRIORITY]*\n" if [ $use_user == root ]; then taskset -pc $usecore $hlds_pid_num renice -n $priority -p $hlds_pid_num else sudo taskset -pc $usecore $hlds_pid_num sudo renice -n $priority -p $hlds_pid_num fi printf "[$time - $date] *[PRIORITY & AFFINITY RESETED]*\n" >> $path/checker.log exit 1 fi if [ -n "$check_usecore" ]; then printf "$checktag *[GOOD PRIORITY]*\n" exit 1 fi fi } case "$1" in start) start ;; stop) stop ;; restart) stop sleep 2 start ;; status) status ;; console) console ;; checker) checker ;; *) echo "How to use: $0 {start|stop|restart|status|console|checker}" start exit 1 esac ОС Debian 6
Отредактировал: empy, - 24.2.2011, 22:26
|
|
|
![]() ![]() |