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


Получить помощь и пообщаться с другими пользователями Ubuntu можно
на irc канале #ubuntu-ru в сети Freenode
и в Jabber конференции ubuntu@conference.jabber.ru

Автор Тема: послушный демон  (Прочитано 504 раз)

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

Оффлайн macros2007

  • Автор темы
  • Новичок
  • *
  • Сообщений: 16
    • Просмотр профиля
послушный демон
« : 20 Ноября 2016, 10:44:25 »
Доброго времени суток, пытаюсь освоить демонизацию процессов, в частности через systemd. Сам демон уже запущен, крутиться без проблем(за исключением того, что после запуска стандартный ввод не предается терминалу). Пояаилась идея написать простенький web-интрефейс. Но возник вопрос, как передать какую-либо команду(строку) запущенному процессу, на подобие GNU Screen(screen -x qqq -X stuff "some command\015")? Заранее спасибо.

ТС не появлялся на Форуме более полугода по состоянию на 14/07/2019 (последняя явка: 06/06/2018). Модератором раздела принято решение закрыть тему.
--zg_nico
« Последнее редактирование: 14 Июля 2019, 03:16:45 от zg_nico »

Оффлайн Sly_tom_cat

  • Don't worry, be happy!
  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 12130
  • Xubuntu 22.04
    • Просмотр профиля
    • Github
Re: послушный демон
« Ответ #1 : 20 Ноября 2016, 11:10:26 »
macros2007, демон он на то и демон - у него не может быть вывода в запускающий терминал.

Идея с сервисом для общения - это в правильном направлении движение.
Индикатор для Yandex-Disk: https://forum.ubuntu.ru/index.php?topic=241992
UEFI-Boot - грузимся без загрузчика: https://help.ubuntu.ru/wiki/uefiboot

Оффлайн macros2007

  • Автор темы
  • Новичок
  • *
  • Сообщений: 16
    • Просмотр профиля
Re: послушный демон
« Ответ #2 : 20 Ноября 2016, 11:16:22 »
не вывод, а ввод :) То бишь после запуска создается впечатления "зависания", приходится давить Ctrl + C. Но вопрос в другом, как передать запущенному приложению какую-либо команду.

Оффлайн Peter_I

  • Старожил
  • *
  • Сообщений: 3031
    • Просмотр профиля
Re: послушный демон
« Ответ #3 : 20 Ноября 2016, 11:21:34 »
В книге Робачевского "Операционная система UNIX" подробно рассказано, как демонизировать процесс.
Не помню, говорится ли там, как взаимодействовать с демоном. М.б., заранее запустить процесс для
общения с демоном, а демону при запуске передать его id. Мне самому делать этого не приходилось.
Пётр.

Оффлайн Sly_tom_cat

  • Don't worry, be happy!
  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 12130
  • Xubuntu 22.04
    • Просмотр профиля
    • Github
Re: послушный демон
« Ответ #4 : 20 Ноября 2016, 12:21:26 »
macros2007, правильнее ввод/вывод. По сути роли не играет в каком направлении. Можно сказать так: у демона нет возможностей обмениваться данными через запустивший его терминал.

Для общения с ним используются сокеты. Сокет по сути и есть терминал - через него можно передавать и получать данные.

Модерновый путь общения сдемоном - DBus - но это все сложнее в реализации.
« Последнее редактирование: 20 Ноября 2016, 12:29:27 от Sly_tom_cat »
Индикатор для Yandex-Disk: https://forum.ubuntu.ru/index.php?topic=241992
UEFI-Boot - грузимся без загрузчика: https://help.ubuntu.ru/wiki/uefiboot

 

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