06:37
ОбновитьСмайлыУправление мини-чатом
МИНИ-ЧАТ
Главная страница!

 



 
          





Рекомендуем:





Последние Файлы GTA 4 Последние Файлы GTA-MP Реклама
Скрипт GTA 4 элементы Watch... 07.09.2014
Ferrari 360 Spider [EPM con... 13.12.2013
Porsche Cayenne Turbo 2012 ... 13.12.2013
Shelby Terlingua Mustang v1... 13.12.2013
Hamann Lamborghini Gallardo... 27.10.2013
[GM] The Big PEN1:LS v2.00 ... 04.12.2017
Dgun (AvnanceRP,SampRP,Dimo... 19.03.2016
SAMP скрипт SX Events (MySQ... 03.03.2016
Карта ASL мэрия для SAMP се... 03.03.2016
AIM для SA-MP 0.3.7 22.02.2016
  • Страница 1 из 1
  • 1
Модератор форума: Alcoholik  
[HELP] PHP+SSH2+CENTOS_5
FiLEДата: Вторник, 13.03.2012, 00:35 | Сообщение # 1
Группа: Разработчики
Сообщений: 681
Награды: 70
Город: Одесса
Замечания: 0%
Статус:
Привет всем.
Незнаю, тему вроде правильно влепил.
Вобщем помогите решить такую задачку, немогу справиться.
Есть VDS (centos os), на ней серверочки сампа + простенькая панелька запуска серверов, написанная на php.
Панелька работает с использованием SSH2, я это делал для того, чтобы можно было к панельке подключать несколько VDS.

Сервера запускаются, все отлично, но есть проблема с выключением сервера.
Я путем недолгих манипуляций, сделал, чтобы сервер выключался через ркон (exit), по нажатию кнопки в панеле. Но это не вариант, как оказывается, есть свои минусы.

Вобщем, кто сталкивался или знает, как определить PID процесса (при запуске\последний процесс и т.п.) запущеного сервера, чтобы в дальнейшем процесс можно было оффнуть командой kill.
Если не трудно, выложить код.

В гугле искал и впрочем ничего дельного не нашел.




AirKiteДата: Вторник, 13.03.2012, 01:09 | Сообщение # 2
Долгожитель
Группа: I'm V.I.P.
Сообщений: 1671
Награды: 21
Город: Новосибирск
Репутация: 2070
Замечания: 0%
Статус:
./samp03svr & должен вернуть PID.


[1337GAMES] Easy RP
(SAMP SERVER, DEVELOPMENT, NOT SAMP-RP, SMART LIFE)


Jabber: airkite@qip.ru
[Addon] QuickBinder
[FS] Online Players Record
FiLEДата: Вторник, 13.03.2012, 01:16 | Сообщение # 3
Группа: Разработчики
Сообщений: 681
Награды: 70
Город: Одесса
Замечания: 0%
Статус:
AirKite, каким образом мне записать PID в переменную php-скрипта, чтобы далее этот PID внести в mysql?

Если быть точнее, вот код:

Code

$connection = ssh2_connect($computer[adress], 22);
ssh2_auth_password($connection, $computer[login], $computer[password]);

$cmd = "cd ".$server['link']." ; nohup ./samp03svr & > /dev/null & echo $!";
$PID = ssh2_exec($connection, $cmd);


По сути нужно продолжить код, чтобы узнать PID.
echo $PID; выводит какую-то ерунду.






Сообщение отредактировал FiLE - Вторник, 13.03.2012, 01:21
AirKiteДата: Вторник, 13.03.2012, 01:48 | Сообщение # 4
Долгожитель
Группа: I'm V.I.P.
Сообщений: 1671
Награды: 21
Город: Новосибирск
Репутация: 2070
Замечания: 0%
Статус:
Пробуй:
Code

$stream = ssh2_exec($connection, $cmd);
stream_set_blocking($stream, true);
$pid = intval(stream_get_line($stream, 100, "\n"));



[1337GAMES] Easy RP
(SAMP SERVER, DEVELOPMENT, NOT SAMP-RP, SMART LIFE)


Jabber: airkite@qip.ru
[Addon] QuickBinder
[FS] Online Players Record
FiLEДата: Вторник, 13.03.2012, 02:17 | Сообщение # 5
Группа: Разработчики
Сообщений: 681
Награды: 70
Город: Одесса
Замечания: 0%
Статус:
AirKite, Спасибо, этот вариант сработал, оказывается все так просто, а я мучался. Показывает pid почти правильно, почти это значит показывает pid на +1 больше, да это мелочь. Как смог отблагодарил ;) Тему можно оффать.





Сообщение отредактировал FiLE - Вторник, 13.03.2012, 02:18
AirKiteДата: Вторник, 13.03.2012, 02:31 | Сообщение # 6
Долгожитель
Группа: I'm V.I.P.
Сообщений: 1671
Награды: 21
Город: Новосибирск
Репутация: 2070
Замечания: 0%
Статус:
FiLE, смотри, а то не во всех случаях будет показывать pid на 1 больше. Я рассчитывал на команду "./samp03svr & echo $!".


[1337GAMES] Easy RP
(SAMP SERVER, DEVELOPMENT, NOT SAMP-RP, SMART LIFE)


Jabber: airkite@qip.ru
[Addon] QuickBinder
[FS] Online Players Record
  • Страница 1 из 1
  • 1
Поиск:





 


 


 
Хостинг от uCoz samp.at.ua