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


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

Автор Тема: Как заставить перезапускаться демон?  (Прочитано 700 раз)

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

Оффлайн makssun

  • Автор темы
  • Любитель
  • *
  • Сообщений: 50
    • Просмотр профиля
Собсно вопрос, как заставить перезапускаться демон, который постоянно падает?
Строка запуска демона выглядит так:
./forknoted --config-file configs/bipcoin.conf
Каким самым простым способом можно это сделать?

ТС не появлялся на Форуме более полугода по состоянию на 22/07/2019 (последняя явка: 19/11/2018). Модератором раздела принято решение закрыть тему.
--zg_nico
« Последнее редактирование: 22 Июль 2019, 15:29:31 от zg_nico »

Оффлайн ALiEN175

  • Модератор форума
  • Старожил
  • *
  • Сообщений: 4261
  • Capture the truth
    • Просмотр профиля
Re: Как заставить перезапускаться демон?
« Ответ #1 : 15 Сентябрь 2018, 16:51:27 »
while : ; do ./forknoted --config-file configs/bipcoin.conf ; done
ASUS P5K-C :: Intel Xeon E5450 :: 8 GB RAM :: Nvidia 8500GT :: XFCE
SAMSUNG N150 :: Intel Atom N450 :: 2 GB RAM :: Intel GMA3150 :: XFCE

Оффлайн makssun

  • Автор темы
  • Любитель
  • *
  • Сообщений: 50
    • Просмотр профиля
Re: Как заставить перезапускаться демон?
« Ответ #2 : 15 Сентябрь 2018, 17:04:43 »
while : ; do ./forknoted --config-file configs/bipcoin.conf ; done
И где это прописать?

Оффлайн Vitsliputsli

  • Старожил
  • *
  • Сообщений: 1293
    • Просмотр профиля
Re: Как заставить перезапускаться демон?
« Ответ #3 : 15 Сентябрь 2018, 21:56:38 »
Самый правильный вариант это создать systemd unit для этой задачи

Оффлайн makssun

  • Автор темы
  • Любитель
  • *
  • Сообщений: 50
    • Просмотр профиля
Re: Как заставить перезапускаться демон?
« Ответ #4 : 15 Сентябрь 2018, 22:02:34 »
Как-то все сложно и непонятно.
Что, нет простого способа или программы заставить рестартить упавший демон?

Оффлайн Vitsliputsli

  • Старожил
  • *
  • Сообщений: 1293
    • Просмотр профиля
Re: Как заставить перезапускаться демон?
« Ответ #5 : 15 Сентябрь 2018, 23:34:58 »
Ну если совсем просто, то как написал makssun, или так:
e=1; while [ $e -eq 1 ]; do ./forknoted --config-file configs/bipcoin.conf; e=$?; done

чтобы при корректном завершении работы демона, он снова не запускался.

Оффлайн ALiEN175

  • Модератор форума
  • Старожил
  • *
  • Сообщений: 4261
  • Capture the truth
    • Просмотр профиля
Re: Как заставить перезапускаться демон?
« Ответ #6 : 16 Сентябрь 2018, 01:14:00 »
чтобы при корректном завершении работы демона, он снова не запускался.
уж так тогда
while ! ./forknoted --config-file configs/bipcoin.conf ; do sleep 1 ; done
ASUS P5K-C :: Intel Xeon E5450 :: 8 GB RAM :: Nvidia 8500GT :: XFCE
SAMSUNG N150 :: Intel Atom N450 :: 2 GB RAM :: Intel GMA3150 :: XFCE

Оффлайн Vitsliputsli

  • Старожил
  • *
  • Сообщений: 1293
    • Просмотр профиля
Re: Как заставить перезапускаться демон?
« Ответ #7 : 16 Сентябрь 2018, 01:27:44 »
Цитировать
уж так тогда
while ! ./forknoted --config-file configs/bipcoin.conf ; do sleep 1 ; done

Почти хорошо, если бы не sleep. Лучше так:
while ! ./forknoted --config-file configs/bipcoin.conf; do true; done

Оффлайн ALiEN175

  • Модератор форума
  • Старожил
  • *
  • Сообщений: 4261
  • Capture the truth
    • Просмотр профиля
Re: Как заставить перезапускаться демон?
« Ответ #8 : 16 Сентябрь 2018, 01:58:03 »
Как-то все сложно и непонятно.
проще простого

~/.config/systemd/user/forknoted.service
Код: Text
  1. [Unit]
  2. Description=Forknoted
  3. After=network.target
  4.  
  5. [Service]
  6. ExecStart=/full/path_to/forknoted --config-file /full/path_to/configs/bipcoin.conf
  7. Restart=always
  8.  
  9. [Install]
  10. WantedBy=default.target
  11.  

systemctl --user daemon-reload
systemctl --user enable forknoted
systemctl --user start forknoted

ASUS P5K-C :: Intel Xeon E5450 :: 8 GB RAM :: Nvidia 8500GT :: XFCE
SAMSUNG N150 :: Intel Atom N450 :: 2 GB RAM :: Intel GMA3150 :: XFCE

Оффлайн makssun

  • Автор темы
  • Любитель
  • *
  • Сообщений: 50
    • Просмотр профиля
Re: Как заставить перезапускаться демон?
« Ответ #9 : 16 Сентябрь 2018, 07:34:24 »
systemctl --user daemon-reload
systemctl --user enable forknoted
systemctl --user start forknoted
Немного прояснилось.
Так, а куда вставлять этот текст?

Оффлайн ALiEN175

  • Модератор форума
  • Старожил
  • *
  • Сообщений: 4261
  • Capture the truth
    • Просмотр профиля
Re: Как заставить перезапускаться демон?
« Ответ #10 : 16 Сентябрь 2018, 15:13:43 »
в терминал, куда ж еще?
ASUS P5K-C :: Intel Xeon E5450 :: 8 GB RAM :: Nvidia 8500GT :: XFCE
SAMSUNG N150 :: Intel Atom N450 :: 2 GB RAM :: Intel GMA3150 :: XFCE

Оффлайн makssun

  • Автор темы
  • Любитель
  • *
  • Сообщений: 50
    • Просмотр профиля
Re: Как заставить перезапускаться демон?
« Ответ #11 : 16 Сентябрь 2018, 15:18:29 »
Давайте по пунктам.
Я создаю файл, как выше указано.

~/.config/systemd/user/forknoted.service
А начальная папка какая?

После создания файла в терминале набираю команды выше.
Правильно?
В случае остановки демона, эта служба выполнит запуск демона?
Верно?
И через какой интервал времени это произойдет?
« Последнее редактирование: 16 Сентябрь 2018, 15:31:26 от makssun »

Оффлайн ALiEN175

  • Модератор форума
  • Старожил
  • *
  • Сообщений: 4261
  • Capture the truth
    • Просмотр профиля
Re: Как заставить перезапускаться демон?
« Ответ #12 : 16 Сентябрь 2018, 15:41:17 »
~ это обозначение вашей домашней папки.
Перезапустит сразу после остановки.
ASUS P5K-C :: Intel Xeon E5450 :: 8 GB RAM :: Nvidia 8500GT :: XFCE
SAMSUNG N150 :: Intel Atom N450 :: 2 GB RAM :: Intel GMA3150 :: XFCE

Оффлайн makssun

  • Автор темы
  • Любитель
  • *
  • Сообщений: 50
    • Просмотр профиля
Re: Как заставить перезапускаться демон?
« Ответ #13 : 16 Сентябрь 2018, 15:46:52 »
~ это обозначение вашей домашней папки.
Перезапустит сразу после остановки.
У меня в домашней папки нет такого пути и таких файлов.
Вернее, нет systemd.

Оффлайн ALiEN175

  • Модератор форума
  • Старожил
  • *
  • Сообщений: 4261
  • Capture the truth
    • Просмотр профиля
Re: Как заставить перезапускаться демон?
« Ответ #14 : 16 Сентябрь 2018, 16:17:37 »
ну создайте.

И я главное забыл - этот способ рабочий для версий, начиная с 15.04
ASUS P5K-C :: Intel Xeon E5450 :: 8 GB RAM :: Nvidia 8500GT :: XFCE
SAMSUNG N150 :: Intel Atom N450 :: 2 GB RAM :: Intel GMA3150 :: XFCE

 

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