gt; Надо чтобы каждый авторан мог убивать ИМЕННО свои hlds_run и hlds_i686ну и отличать их по pid. я ж наверху все написал. или пояснить?gt; по разному ковычить их не получаетьсям. все пробовал? ./hlds_run -game39; ./hlds_run -game 39;params=-game ; sh ./hlds_run 036;{params}Вообще этот `нативный` hlds что из себя представляет, и откликается ли он на --help -help --usage man или подобное? какой у него синтаксис точно известно? О_оА то мне уже начинает казаться, что это какой-то китайский самопал, судя по Server Faile))
ну и отличать их по pid. я ж наверху все написал. или пояснить?Если не трудно пояснитем. все пробовал? Все возможные комбинации и варианты вроде перепробывалbin_opt=-game cstrike -nomaster +map cs_assault ,,,,,,,,start-stop-daemon --start --make-pidfile --pidfile 036;{PIDFILE} --chuid gamer --exec /home/gamer/hlds_classic/hlds_run -- 036;{bin_opt}/test startInvalid game type 39;cstrike39; sepecified.Втр Фев 16 16:38:09 MSK 2010: Server Failed-game cstrike -nomaster +map cs_assault +port 27015 -maxplayers 24 +mp_freezetime 3 +exec server.cfg -pingboost 1 +sys_ticrate 10000 +sv_maxupdaterate 100CS Server-1 starting
Никаких хелпов нет вото тоько server * counter-strike *net/server.php?cmd=howtoshow=linuxЧувствую себя ничтожеством целый день не могу решить простую вроде задучу я даже не понимаю ЧЯДН.
а что-то типа такого не подойдёт?PIDFILE= .comands= echo 036;comands gt; 036;{PIDFILE}.runchmod +x 036;{PIDFILE}.runstart-stop-daemon --start --background --make-pidfile --pidfile 036;{PIDFILE} --chuid gamer -a 036;{PIDFILE}.run .rm 036;{PIDFILE}.run
./test1 start-stop-daemon: Unable to start /home/gamer/hlds_classic/cs*pid*run: Exec format error (Exec format error)Ладно буду решать по другому задучу Все через screen стартуют и не паряться.Результаты выложу.
уточняю, тот 036;path из 1 удовленворяет условию `Make sure you are in the /hlds/hlds_l directory` ?Про pid39;ы: // я заглянул в ман start-stop-daemon39;a и мне интересно, с чего вы взяли, что он будет делать несколько пидфайлов и как-то их разделять?) --make-pidfile говорит ему сделать файл, куда сбросить свой _уже_имеющийся_при_рождении_ пид. а --pidfile просто говорит куда конкретно сбросить. ни о каком ветвлении id тут речи не идет-)Итак, положим, у нас есть 2 модификацииcs_1/server, cs_2/serverмоя идея заключалась в том, чтобы отлавливать pid процессов при инициализации сервера. /sbin/runscript /etc/init.d/cs_server1depend() {after *}start() {sh cs_1/server pidof -s server gt; cs_1/pidfile}Таким образом в корневой папке выбранного мода мы получаем файл, содержащий идентификатор процесса. // подразумевается, что не может быть одновременно запущено несколько экземпляров одной и той же модификации, т.е. все запущеные сервера - разныеstop() {kill cs_1/pidfile}
Спасибо граф. ))С пидом раобрался, вот простое решениеps |grep ./bin/sh/ | grep 036;DAEMON |grep 036;PORT |awk 39;{ print 036;1}39; gt;gt; cs.pidСервера можно отличать по портам, потому что они все на разных портах запущены.