Есть система, которая по событиям запускает скрипты. Она работает не от рута. Там свой пользователь для этого есть.
Написал скрипт. В нем передергиваю сервис:
service someservice restart
Но сервис этот просто так передергиваться не хочет. Проблема в том, что скрипт запускается от обычного пользователя, имею сообщение:
This program can only be used by the root user.
Как мне решить проблему c этим скриптом? Если я там пишу sudo su, скрипт встает и ждет ввода пароля.
Мне тут посоветовали такое решение: создать задачу в кроне рута, которая будет проверять каждые n минут, появился ли файл х, и если он появился передергивать сервис. И соответственно переписать мой скрипт так, чтобы он создавал файл х. Как-то так.
Мне это решение кажется костылем? Или так и нужно делать?
Есть ли более элегантные решения этой проблемы? Спасибо.