我有一个非 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 restart [sudo] dba01 的密码: 关闭 mysqld:[确定] 启动 mysqld:[确定]
如果你尝试运行任何其他服务
[dba01@APP01 root]$ sudo /sbin/service ip6tables restart 抱歉,用户 dba01 不允许在 APP01 上以 root 身份执行“/sbin/service ip6tables restart”。
答案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