Рейтинг:0

Запустите графический интерфейс при запуске и запустите его снова, если произошел сбой (Systemd VS Cron)

флаг pk

У меня есть приложение Python, которое мне нужно запустить при запуске Ubuntu. Я также хотел бы, чтобы это приложение запускалось снова, если оно закрывается/вылетает. Это то, с чем может справиться Systemd, но проблема в том, что мое приложение открывает окно с потоковой передачей камеры. Из-за этого служба systemd выдает ошибки:

21 ноября 19:42:54 Xavier-AGX env[14289]: 2021-11-21 19:42:54,558 Подключен к серверу mysql: X.X.X.X
21 ноября 19:42:55 Xavier-AGX env[14289]: qt.qpa.xcb: не удалось подключиться к дисплею
21 ноября 19:42:55 Xavier-AGX env[14289]: qt.qpa.plugin: не удалось загрузить плагин платформы Qt «xcb» в «/home/atc/.local/lib/python3.6/site-packages». /cv2/qt/plugins", несмотря на то, что он был найден.
21 ноября, 19:42:55 Xavier-AGX env[14289]: не удалось запустить это приложение, так как не удалось инициализировать плагин платформы Qt. Переустановка приложения может решить проблему.
ноя 21 19:42:55 Xavier-AGX env[14289]: Доступные плагины платформы: xcb.
21 ноября 19:42:56 Xavier-AGX systemd[1]: app_cam0.service: основной процесс завершен, код = дамп, статус = 6/ABRT
21 ноя 19:42:56 Xavier-AGX systemd[1]: app_cam0.service: Ошибка с результатом 'core-dump'.
21 ноября, 19:42:57 Xavier-AGX systemd[1]: app_cam0.service: Время задержки обслуживания истекло, запланирован перезапуск.
21 ноября, 19:42:57 Xavier-AGX systemd[1]: app_cam0.service: запланированное задание перезапуска, счетчик перезапусков равен 3.
21 ноября 19:42:57 Xavier-AGX systemd[1]: служба остановлена ​​для запуска приложения (камера 0).
21 ноя 19:42:57 Xavier-AGX systemd[1]: запущена служба для запуска приложения (камера 0).

Альтернативой является использование CRON. Существует флаг (@reboot), который заставляет CRON запускать ваше приложение во время загрузки, но в случае сбоя приложения он не запустит его снова. :(

Так что я могу сделать ?

Есть ли решение для запуска приложения с графическим интерфейсом в качестве службы systemd?

Заранее спасибо.

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

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