Разрешить пользователю изменять nice без предоставления прав доступа root
Есть ли способ, позволяющий пользователю изменять процесс, не давая корневых разрешений?
ОС: Ubuntu 14.04.1 LTS
2 ответа
Так как позволяя sudo nice
это почти то же самое, что и предоставление корневых прав, я бы не стал этого делать.
Я вижу два возможных решения:
1 / Разрешить полную команду через sudo и закрепить ее параметры, например:
%nicegroup ALL=/bin/nice --20 /bin/whatever
Но это работает, только если это всегда одна и та же программа, которая нуждается в приятном просмотре.
2 / Разрешить только renice
через sudo вот так:
%nicegroup ALL=/bin/renice
Затем пользователи должны запустить свою программу, как всегда, а затем вручную перезапустить ее через sudo /bin/renice 20 -p $PID
,
Это ручное усилие, но оно может быть написано по сценарию для автоматизации.
Нет, нет. nice
является одной из тех команд, которые будут запускать процесс, заданный в его собственном контексте, то есть, если вы разрешите sudo nice
любые команды переданы nice
будет выполнен как root. Может быть возможно использовать /etc/limits.conf
и используйте хорошие ограничения таким образом и запустите скрипт, который вы хотите иметь более высокий / низкий приоритет, но это не поможет renice
,