Файл sudoers довольно гибкий, и вместе с этим возникает сложность. То, что вы хотите здесь, - это разрешить доступ к команде /bin/systemctl
, с конкретными параметрами:
%LimitedAdmins ALL=NOPASSWD: /bin/systemctl restart unicorn_my_app.service
По сути, вы просто берете точную командную строку, которую вы бы ввели, жестко кодируете имя пути в целях безопасности и помещаете его в свой файл sudoers (или /etc/sudoers.d
). И обратите внимание, что "запуск" и "перезапуск" совершенно разные в том, что касается sudo; разрешение одного не предоставит доступ к другому.