Я пытаюсь настроить задание Upstart для запуска при запуске системы, и это также может быть запущено / остановлено членами группы, кроме sudo
. В предыдущей версии я использовал update-rc.d
и скрипты, хранящиеся в нем, /etc/init.d/
чтобы заставить это работать, добавляя %Group ALL = NOPASSWD: /etc/init.d/scriptname
в мой файл sudoers, но я не могу получить эквивалентную работу для Upstart.
Я попытался добавить %Group ALL = NOPASSWD: /sbin/initctl start jobname
в файл sudoers, но попытка запустить команду start jobname
приводит к этой ошибке:
start: Rejected send message, 1 matched rules; type="method_call", sender=":1.21" (uid=1000 pid=5148 comm="start jobname " interface="com.ubuntu.Upstart0_6.Job" member="Start" error name="(unset)" requested_reply="0" destination="com.ubuntu.Upstart" (uid=0 pid=1 comm="/sbin/init")
Насколько я могу судить, это жалоба на то, что моей учетной записи не предоставлена возможность отправлять сообщения «Пуск» в конфигурационном файле D-Bus для Upstart. Я не смог найти никакой информации о том, как отредактировать этот файл, чтобы дать группе разрешение на доступ к определенному сервису - существует ли такая опция? Есть ли способ отредактировать файл Sudoers, чтобы я мог выполнить задание без редактирования файла конфигурации? Мне лучше просто придерживаться предыдущей версии?