Форум русскоязычного сообщества Ubuntu


Хотите сделать посильный вклад в развитие Ubuntu и русскоязычного сообщества?
Помогите нам с документацией!

Автор Тема: Перезапуск демона через http  (Прочитано 1690 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн neformatnoe

  • Автор темы
  • Новичок
  • *
  • Сообщений: 4
  • Неформатное радио
    • Просмотр профиля
    • Неформатное радио
Перезапуск демона через http
« : 28 Декабря 2011, 16:22:02 »
Здравствуйте, поиск не помог )))
Подскажите пожалуйста как сделать или где почитать информацию (на русском) по этому вопросу.
Хотелось бы иметь возможность управлять демонами через php. А именно останавливать и запускать, больше ничего не нужно.
Есть ли такая возможность? Или это за пределами понимания? )))

Сразу оговорюсь, админ панель не канает, нужно именно php

Оффлайн truegeek

  • FPGA Designer
  • Почётный модератор
  • Старожил
  • *
  • Сообщений: 4214
  • аЦкий схемотехник
    • Просмотр профиля
Re: Перезапуск демона через http
« Ответ #1 : 28 Декабря 2011, 16:23:56 »
Всмысле из php-скрипта демоны запускать/останавливать на локальной машине?

Оффлайн neformatnoe

  • Автор темы
  • Новичок
  • *
  • Сообщений: 4
  • Неформатное радио
    • Просмотр профиля
    • Неформатное радио
Re: Перезапуск демона через http
« Ответ #2 : 28 Декабря 2011, 16:28:28 »
сайт крутится на том же сервере на котором нужно управлять демоном(ами) - т.е. нужно дать возможность пользователю из своего аккаунта запустить или остановить процесс, но конечно же к самому серверу близко не подпускать

Оффлайн truegeek

  • FPGA Designer
  • Почётный модератор
  • Старожил
  • *
  • Сообщений: 4214
  • аЦкий схемотехник
    • Просмотр профиля
Re: Перезапуск демона через http
« Ответ #3 : 28 Декабря 2011, 21:42:10 »
Php в принципе умеет вызывать системные функции. Это вы и нагуглить можете.
Я так и не понял, нужно чтобы кто-то удаленно имел возможность демоны перезапустить через сайт? Тогда при чем здесь программирование?

Оффлайн neformatnoe

  • Автор темы
  • Новичок
  • *
  • Сообщений: 4
  • Неформатное радио
    • Просмотр профиля
    • Неформатное радио
Re: Перезапуск демона через http
« Ответ #4 : 28 Декабря 2011, 23:20:29 »
Да, именно так, чтобы пользователь мог рестартануть два демона через сайт.

Ну я же не представляю что для этого нужно ))) Может какую то прогу писать придётся ))) Если не сложно помогите сформулировать запрос для гугеля, я не смог своими попытками найти ничего умного.

Оффлайн truegeek

  • FPGA Designer
  • Почётный модератор
  • Старожил
  • *
  • Сообщений: 4214
  • аЦкий схемотехник
    • Просмотр профиля
Re: Перезапуск демона через http
« Ответ #5 : 28 Декабря 2011, 23:48:15 »
Самое простое, что приходит в голову:

Пользователь, средствами сайта(например нажатием на ссылку) дает команду на создание файла. Где угодно, но лучше где-нибудь в /var и тд.
В системе есть планировщик задач: cron. С помощью него каждые пять минут, допустим, дергается скрипт, который проверяет наличие этого файла. Если файл есть, то выполняем рестарт демона и удаляем файл, если нет - ничего не делаем.

Данный подход позволяет не давать апачу лишний раз всякие права и напрямую управлять системой. Но все-таки такой подход немного костыль )))

Как создать файл средствами php я думаю разберетесь, с кроном тоже несложно. Если хотите еще варианты, то создайте тему в разделе "Настройка системы", только опишите свою проблему подробно с нюансами и в красках))) Чтобы народ задавал как можно меньше вспомогательных вопросов. Не забудьте указать версию системы.

Оффлайн neformatnoe

  • Автор темы
  • Новичок
  • *
  • Сообщений: 4
  • Неформатное радио
    • Просмотр профиля
    • Неформатное радио
Re: Перезапуск демона через http
« Ответ #6 : 29 Декабря 2011, 09:35:54 »
Спасибо за участие ))) Попробую Ваш вариант

Оффлайн unimix

  • Активист
  • *
  • Сообщений: 537
    • Просмотр профиля
Re: Перезапуск демона через http
« Ответ #7 : 29 Декабря 2011, 09:42:41 »
1. Что за демоны, самописные?
2. Каждому пользователю предоставляется возможность запустить экземпляр демона со своими настройками?

Оффлайн terrible_user

  • Активист
  • *
  • Сообщений: 438
    • Просмотр профиля
Re: Перезапуск демона через http
« Ответ #8 : 29 Декабря 2011, 10:00:00 »
Пользователь, средствами сайта(например нажатием на ссылку) дает команду на создание файла. Где угодно, но лучше где-нибудь в /var и тд.
В системе есть планировщик задач: cron. С помощью него каждые пять минут, допустим, дергается скрипт, который проверяет наличие этого файла. Если файл есть, то выполняем рестарт демона и удаляем файл, если нет - ничего не делаем.


ОМФГ ЩМФП МФ
sudousers
www-data ALL=(ALL) NOPASSWD: /etc/init.d/myservise restart
PHP
shell_exec("sudo /etc/init.d/myservise restart");
Бери больше, кидай дальше

Оффлайн truegeek

  • FPGA Designer
  • Почётный модератор
  • Старожил
  • *
  • Сообщений: 4214
  • аЦкий схемотехник
    • Просмотр профиля
Re: Перезапуск демона через http
« Ответ #9 : 29 Декабря 2011, 10:34:14 »
terrible_user, можно и так, но лично я предпочел бы не давать апачу выполнять скрипты из под рута без ввода пароля ;)

Кстати, я уже об этом писал.
« Последнее редактирование: 29 Декабря 2011, 10:36:08 от truegeek »

Оффлайн terrible_user

  • Активист
  • *
  • Сообщений: 438
    • Просмотр профиля
Re: Перезапуск демона через http
« Ответ #10 : 29 Декабря 2011, 11:09:14 »
terrible_user, можно и так, но лично я предпочел бы не давать апачу выполнять скрипты из под рута без ввода пароля ;)

Кстати, я уже об этом писал.

обратим внимание еще раз на sudousers, почему скрипты ? тут только 1 скрипт и то, который можно запустить только в паре с параметром restart. Даже и то нельзя выполнить stop или start.
Бери больше, кидай дальше

Оффлайн truegeek

  • FPGA Designer
  • Почётный модератор
  • Старожил
  • *
  • Сообщений: 4214
  • аЦкий схемотехник
    • Просмотр профиля
Re: Перезапуск демона через http
« Ответ #11 : 29 Декабря 2011, 11:15:19 »
Я отлично это вижу, знаком с синтаксисом. Я выразил лишь личное мнение. Так что можете оставить свои (ОМФГ ЩМФП МФ) непонятные сокращения при себе.
Если бы это был не www-data, то я бы только согласился с вами)

 

Страница сгенерирована за 0.033 секунд. Запросов: 21.