Я разрабатываю скрипт уведомления, который отправляет мне сообщения из json-файла. Я попытался запустить его как службу, так как это был самый простой способ запустить и остановить скрипт из командной строки.
У меня есть следующий простой сервис:
description "Notify me service"
author "jo"
start on runlevel [2345]
stop on runlevel [016]
script
exec /usr/bin/notify-send test >> /var/log/test.log 2>&1
end script
Кажется, что скрипт запускается, поскольку ошибок нет (я также тестировал его с другим скриптом, вызываемым службой), но нет сообщения появляется. Это почему?
Эти «сервисы» запускаются во время загрузки еще до того, как вы освоили экран входа в систему. Я не знаю, что вы пытаетесь сделать, но такие события должны произойти после входа в систему.
Если вы пытаетесь проверить, когда ваш скрипт выполняется, вы должны либо распечатать что-то в файл (notify-send
не генерирует вывод), либо запустить службу в обычном режиме.
Если вы запустите sudo services nameofscript start
, вы не сможете получить уведомление, так как вы будете работать от имени пользователя root.
Я верю, что вы не пытаетесь делать то, о чем просите, но это отвечает на сомнения, с которыми вы сталкиваетесь. В следующий раз вы должны спросить, что вы пытаетесь сделать, какой подход вы используете и каковы ожидаемые результаты.