
У меня есть пользователь без прав root abc
, и я хочу предоставить sudo
права только пользователю restart
, start
или stop
- mysqld service
. т.е. sudo service mysqld restart
Как мне это сделать?
Я бы хотел сделать то же самое и с группой пользователей!!
решение1
Вам необходимо добавить следующие строки в /etc/sudoers
dba01 ALL=/sbin/service mysqld запуск dba01 ALL=/sbin/service mysqld остановить dba01 ALL=/sbin/service mysqld перезапустить
эта конфигурация позволит пользователю dba01 выполнять все три команды.
А вот и результат
[dba01@APP01 root]$ sudo /sbin/service mysqld перезапустить [sudo] пароль для dba01: Завершение работы mysqld: [ OK ] Запуск mysqld: [ ОК ]
Если вы попытаетесь запустить любую другую службу
[dba01@APP01 root]$ sudo /sbin/service ip6tables перезапуск Извините, пользователю dba01 не разрешено выполнять «/sbin/service ip6tables restart» как root на APP01.
решение2
предоставление разрешений на запуск группы sudo service
, дало бы им разрешение перезапустить любую службу. Я бы просто предоставил им доступ к скрипту init.
Это можно сделать, добавив следующую строку в файл sudoers
%groupName ALL=(ALL) NOPASSWD: /etc/init.d/mysql
Тогда члены группы должны иметь возможность бежать
sudo /etc/init.d/mysql restart
sudo /etc/init.d/mysql stop
sudo /etc/init.d/mysql restart