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


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

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

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 »

Оффлайн ALiEN

  • Администратор
  • Старожил
  • *
  • Сообщений: 6752
  • 20% Cooler
    • Просмотр профиля
Re: Как заставить перезапускаться демон?
« Ответ #1 : 15 Сентября 2018, 16:51:27 »
while : ; do ./forknoted --config-file configs/bipcoin.conf ; done
🖥 AsRock B550M Pro4 :: AMD Ryzen 5 3600 :: 16 GB DDR4 :: AMD Radeon RX 6600 :: XFCE
💻 ACER 5750G :: Intel Core i5-2450M :: 6 GB DDR3 :: GeForce GT 630M :: 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

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

Оффлайн ALiEN

  • Администратор
  • Старожил
  • *
  • Сообщений: 6752
  • 20% Cooler
    • Просмотр профиля
Re: Как заставить перезапускаться демон?
« Ответ #6 : 16 Сентября 2018, 01:14:00 »
чтобы при корректном завершении работы демона, он снова не запускался.
уж так тогда
while ! ./forknoted --config-file configs/bipcoin.conf ; do sleep 1 ; done
🖥 AsRock B550M Pro4 :: AMD Ryzen 5 3600 :: 16 GB DDR4 :: AMD Radeon RX 6600 :: XFCE
💻 ACER 5750G :: Intel Core i5-2450M :: 6 GB DDR3 :: GeForce GT 630M :: 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

Оффлайн ALiEN

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

~/.config/systemd/user/forknoted.service
Код: (text) [Выделить]
[Unit]
Description=Forknoted
After=network.target

[Service]
ExecStart=/full/path_to/forknoted --config-file /full/path_to/configs/bipcoin.conf
Restart=always

[Install]
WantedBy=default.target

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

🖥 AsRock B550M Pro4 :: AMD Ryzen 5 3600 :: 16 GB DDR4 :: AMD Radeon RX 6600 :: XFCE
💻 ACER 5750G :: Intel Core i5-2450M :: 6 GB DDR3 :: GeForce GT 630M :: XFCE

Оффлайн makssun

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

Оффлайн ALiEN

  • Администратор
  • Старожил
  • *
  • Сообщений: 6752
  • 20% Cooler
    • Просмотр профиля
Re: Как заставить перезапускаться демон?
« Ответ #10 : 16 Сентября 2018, 15:13:43 »
в терминал, куда ж еще?
🖥 AsRock B550M Pro4 :: AMD Ryzen 5 3600 :: 16 GB DDR4 :: AMD Radeon RX 6600 :: XFCE
💻 ACER 5750G :: Intel Core i5-2450M :: 6 GB DDR3 :: GeForce GT 630M :: XFCE

Оффлайн makssun

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

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

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

Оффлайн ALiEN

  • Администратор
  • Старожил
  • *
  • Сообщений: 6752
  • 20% Cooler
    • Просмотр профиля
Re: Как заставить перезапускаться демон?
« Ответ #12 : 16 Сентября 2018, 15:41:17 »
~ это обозначение вашей домашней папки.
Перезапустит сразу после остановки.
🖥 AsRock B550M Pro4 :: AMD Ryzen 5 3600 :: 16 GB DDR4 :: AMD Radeon RX 6600 :: XFCE
💻 ACER 5750G :: Intel Core i5-2450M :: 6 GB DDR3 :: GeForce GT 630M :: XFCE

Оффлайн makssun

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

Оффлайн ALiEN

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

И я главное забыл - этот способ рабочий для версий, начиная с 15.04
🖥 AsRock B550M Pro4 :: AMD Ryzen 5 3600 :: 16 GB DDR4 :: AMD Radeon RX 6600 :: XFCE
💻 ACER 5750G :: Intel Core i5-2450M :: 6 GB DDR3 :: GeForce GT 630M :: XFCE

 

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