Автозапуск и авторестарт Qt Gui Application в Linux
Здравствуйте, дорогие форумчане! Сделал специальную тему для такого вопрос.
У меня Debian 9.5.
Моё приложение не получилось запустить с помощью утилиты systemd.
Писал, что
QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-root' qt.qpa.screen: QXcbConnection: Could not connect to display Could not connect to any X display
По мере изучения вопроса я понял, что systemd может стартовать и рестортовать в случае падения программы без GUI.
Посмотрел в сторону обычной автозагрузке - Desktop Entry Files. Статья есть на этом сайте.
Автозагрузка прошла успешно. Но мне нужен еще и рестарт программы при её закрытие, крушение.
Посмотрел в сторону
supervisor
. Думал, что она меня спасет. Но нет. После переделывания
тестового примера
и попытки запуска получил тоже:
QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-root' qt.qpa.screen: QXcbConnection: Could not connect to display Could not connect to any X display.
Вот мой скрипт:
Файл: /usr/local/bin/long.sh #!/bin/bash /opt/control_block/b/bin/control_block
Вот кофиг:
Файл: /etc/supervisor/conf.d/long_script.conf [program:long_script] command=/usr/local/bin/long.sh autostart=true autorestart=true stderr_logfile=/var/log/long.err.log stdout_logfile=/var/log/long.out.log
Не могли бы помочь, почему не хочет подключиться к X-Server?
Вручную запустить могу. Переменная DISPLAY установлена.
Здесь говорится о такой проблеме. Приводится код для устранения. Но и упоминается, что это:
QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-root'
qt.qpa.screen: QXcbConnection: Could not connect to display
всего-лишь warning.

We recommend hosting TIMEWEB
Stable hosting, on which the social network EVILEG is located. For projects on Django we recommend VDS hosting.Do you like it? Share on social networks!
- Unknown akadamn
- Jan. 24, 2025, 5:14 p.m.
Qt - Test 001. Signals and slots
- Result:84points,
- Rating points4
- Unknown akadamn
- Jan. 24, 2025, 4:22 p.m.
Qt - Test 001. Signals and slots
- Result:42points,
- Rating points-8


Добрый день!
Я перенёс ваш вопрос в раздел Linux, он здесь будет более к месту.
Что касается самого вопроса, то возможно, что нужно запускать от имени определённого пользователя.
Например так подправить
Либо с каким-то иным пользователем, но не от имени рута стартовать вашу программу
Не получается... Решил пробовать скрипт, выполняемый при загрузке. В скрипте вечный цикл по старту программы.