LINUX.ORG.RU

автозапуск самописного сервиса

 


0

2

Привет всем! Учусь кодить на расте под линуксом. Написал небольшую утилитку, которая работает (без GUI) как локальный веб-сервер. Из терминала запускается, по ярлыку с Рабочего стола - прекрасно стартует. Вроде бы нет проблем, но захотелось мне «странного» - чтобы она стартовала при начале сессии. Сделал в папку «.config/autostart/» линк на ярлык запуска с «Рабочего стола» … а оно не работает.

Я все «стопицот раз» проверил. Меняешь (ради теста) в ярлыке команду на вывод GUI сообщения (например: zenity –info –text=«Тут тест.») - при запуске сессии вижу сообщение. Меняю на запуск сервиса - глухо. Кликаю ярлык «вручную» - сервис запускается штатно.

Что не так с автостартом, что надо допилить? AI рекомендует fork() использвать, а без него никак?


А бинарь в пути есть? Флажок выполняемый на бинаре есть?

Положи в автостарт скрипт в скрипте дергай старт, сможешь отладить

ya-betmen ★★★★★
()
Последнее исправление: ya-betmen (всего исправлений: 3)

.config/autostart/

Ты туда ложил .desktop файл? Потому что оттуда запускаются только .desktop файлы.

Вообще в DE есть граф утилиты, где можно добавлять в автостарт что угодно.

goingUp ★★★★★
()
Последнее исправление: goingUp (всего исправлений: 1)
Ответ на: комментарий от goingUp

да, конечно. Прямо в нем и менял строку на запуск GUI софтины. С гуем работает (все что угодно), а фоновую прогу упорно не стартует.

bigov
() автор топика
Последнее исправление: bigov (всего исправлений: 1)
Ответ на: комментарий от bigov

а фоновую прогу упорно не стартует.

Может она стартует, просто не работает? Можно попробовать писать в лог сообщения. Или ты ее неправильно прописываешь, типа не проставлен executable bit у скрипта?

goingUp ★★★★★
()
Ответ на: комментарий от bigov

С гуем работает

Предлагаю использовать что то вроде

xterm -e /path/to/my/prog
imatveev13
()
Ответ на: комментарий от goingUp

А, не понял вначале фразу. В XFCE это «Сеансы и автозапуск».

И млин, чудеса! Тот же ярлык, добавленный через DM работает, хотя оно делает точно то-же, что я делал перед этим сам. Пошел курить маны, куда оно еще настройки делает, просто любопытно…

bigov
() автор топика
Последнее исправление: bigov (всего исправлений: 2)
Ответ на: комментарий от bigov

В общем, оснастка «Сеансы и запуск» создала в моей папке автозапуска ярлык .desktop, в котором в команде «Exec=» тупо прописала имя ярлыка с Рабочего стола. И все запустилось:

$ cat .config/autostart/mdn-srv.desktop 
[Desktop Entry]
Encoding=UTF-8
Version=0.9.4
Type=Application
Name=mdn-srv
Comment=Start srv for mdn gui
Exec=/home/bigov/Desktop/mdn-srv.desktop
OnlyShowIn=XFCE;
RunHook=0
StartupNotify=false
Terminal=false
Hidden=false

Повторил то-же самое без участия DM - тоже работает. Вероятно, причина была в том, что в автозапуске не отрабатывается указание рабочего каталога для запуска бинарника, а в моем случае это важно. Такой вот получился способ решения, немного «через З.П.»

bigov
() автор топика
Ответ на: комментарий от MoldAndLimeHoney

«экзешник» - это в мастдае. Тут как бы «бинарник».

А вобще, я тоже так думал, но заработало как есть.

bigov
() автор топика
Последнее исправление: bigov (всего исправлений: 1)
Ответ на: комментарий от bigov

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

pfg ★★★★★
()
Ответ на: комментарий от madcore

При каждом открытии терминала) . Но при запуске сессии тоже запустится. можно сделать проверку типа ps|grep

jura12 ★★
()
Последнее исправление: jura12 (всего исправлений: 1)
Для того чтобы оставить комментарий войдите или зарегистрируйтесь.