Запуск локального приложения.

  • Автор темы Masters
  • Дата начала
M

Masters

Гость
#1
Здравствуйте!
Есть задача, целью которой является запуска/выполнение локальной программы.
Подробности:
На сайте имеется ссылка, и нужно, чтобы по ее нажатию, запускалась программа на компьютере, например gmplayer.
Нужно это для того, чтобы все желающие смогли запускать бота, eggdrop тогда когда им захочется, и если администратор временно отсутсвует.
Пробовал exec(myscript), в myscript вписал команду cd dir && ./eggdrop , но выдается только версия еггдроп, и ничего больше.
Как можно это осуществить?
 
S

_serg_

Гость
#2
...но выдается только версия еггдроп
наверное, "/путь/к/eggdrop &" ?
а если эту команду ручками в консоли набить бот должен запуститься :)
и как потом давить этих eggdrop ?
или он больше одного раза не запускается?
(мне просто стало интересно)
 
M

Masters

Гость
#3
в консоле cd dir && ./eggdrop и бот тоже запускается.
Заметил что при выполнении скрипта, процесс появляется а потом исчезает, база вопросов считывается.
убить можно kill -TERM eggdrop , либо из ирки .die
 
S

_serg_

Гость
#4
обрати внимание как я написал команду запуска
там & после команды запуска бота
знаеш что означает этот знак?
 
M

Masters

Гость
#5
Что означает знак не знаю, но с ним тоже не работает, запускается процесс, владелец процесса стоит apache, а потом процесс пропадает.
Итак:
есть 22.php внутри которого:

<?php
exec('./otd');
?>


есть выполняемый otd, внутри которого:

cd /var/www/localhost/htdocs/vic3 && ./eggdrop &

Результата нет.
Тоже самое с остальными командами /usr/bin/mplayer , процесс появляется и исчезает.
 
S

_serg_

Гость
#6
хм.. ты знаеш, я ща только что провел тест:
Код:
<? `ping e-port.ru -c 1 > /tmp/test.txt &`?>
у меня-то все норм запускается, но вот результат работы всего появляется только спустя некоторое время - несколько секунд...
а так - смотрю top -U nobody - вижу, что создался отдельный процесс, со своим пидом.... - все по взрослому...
и еще посмотри под кем у тебя запускается этот eggdrop - попробуй в консоли его из-под этого юзера запустить... может, там права нужны на чтение-запись для каких-то файлов?
 
M

Masters

Гость
#7
Этот тест у меня тоже работает.
Процесс запускается под юзером apache, на время давал все привелегии, результата нет.
Под юзером apache войти не удается:
This account is currently not available.
 
M

Masters

Гость
#8
Выяснил что от новосозданного пользователя Bot, eggdrop тоже не запускается, просит сосдать новый конфиг файл, осталось придумать как запустить eggdrop от другого пользователя, т.к su Bot просит вручную ввести пароль.
 
S

_serg_

Гость
#9
а.. ну так он не может прочитать либо какой-то конфиг, либо получить права на запись какого-нить лога?
вот и ответ
надо создать ему условия для запуска из-под нужного юзера (в данном случае это apache)
тут уж я, извини, не могу тебе помоч - т.к. разбираться что такое этот эггдроп нет желания
могу разве что посоветовать почитать его конфиг (что за файлы ему нужны на чтение-запись) и убедиться что у юзера апач есть соответствующие права на эти файлы (и на чтение самого конфига тоже)