Рейтинг:0

Как запустить процесс/двоичный файл при запуске/перезагрузке системы в Ubuntu 20.04 LTS?

флаг us

У меня есть Ubuntu Server 20.04 LTS и двоичный файл для запуска процесса внутри папки /home/dir1/dir2, который называется двоичным.

  1. Я полагаю, что для этого может быть несколько методов, но, если бы я мог знать, пожалуйста, где и как лучше всего настроить этот двоичный файл / процесс, чтобы он мог запускаться автоматически каждый раз, когда система перезагружается?

  2. Есть ли способ обеспечить постоянную работу этого процесса/двоичного файла? Это означает, что система продолжает проверять/отслеживать этот процесс, и если он будет убит или остановлен вручную, или из-за ошибки пользователя или системы и т. д., он автоматически перезапустится/повторно запустится?

Любые предложения с примерами конфигурации будут высоко оценены.

Ваше здоровье

Рейтинг:0
флаг vn

Systemd может сделать это за вас.

Вот пример типичного юнит-файла:

$ cat /etc/systemd/system/yourdaemon.service
[Ед. изм]
Описание=Ваш демон
After=network-online.target
Wants=network-online.target systemd-networkd-wait-online.service

[Оказание услуг]
ExecStart=/путь/к/демону

[Установить]
WantedBy=многопользовательская.цель

А вот файл модуля, в котором включен перезапуск при сбое:

$ cat /etc/systemd/system/yourdaemon.service
[Ед. изм]
Описание=Ваш демон
After=network-online.target
Wants=network-online.target systemd-networkd-wait-online.service

Стартлимитинтервалсек=500
StartLimitBurst=5

[Оказание услуг]
Перезапуск = при сбое
Рестартсек=5с

ExecStart=/путь/к/демону

[Установить]
WantedBy=многопользовательская.цель

Я думаю, что это выходит за рамки этого ответа, чтобы подробно рассмотреть все, но вкратце:

  1. Создайте юнит-файл для службы (двоичной/процессной), которую вы хотите запустить.
  2. Обязательно включите StartLimit и Рестарт варианты, как указано выше.

Справка.

billyhanks1 avatar
флаг us
Спасибо приятель, 2-й блок сделал и то, и другое для меня. Ты жемчужина. Ваше здоровье

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.