Phi*_*key 3 linux centos service groups
系统:CentOS 6.2 版(最终版)
我试图只允许某个组的用户称之为websupport访问以重新启动 2 个服务:mysqld和httpd
编辑:我不想给这些用户 sudo 访问权限
我已将这些行添加到 /etc/sudoers:
%websupport ALL=NOPASSWD:/etc/init.d/httpd
和
%websupport ALL=NOPASSWD:/etc/init.d/mysqld
当以用户身份登录并尝试运行时:
/etc/init.d/httpd 重启
我得到这个结果:
rm:无法删除“/var/run/httpd/httpd.pid”:权限被拒绝 [FAILED]
rm:无法删除“/var/lock/subsys/httpd”:权限被拒绝
rm:无法删除“/var/run/httpd” /httpd.pid': Permission Denied
启动 httpd: httpd: apr_sockaddr_info_get() failed for wssapache
httpd: 无法可靠地确定服务器的完全限定域名,使用 127.0.0.1 作为 ServerName
(13)Permission denied: make_sock: 无法绑定到address [::]:80
(13)Permission denied: make_sock: 无法绑定到地址 0.0.0.0:80
没有可用的侦听套接字,正在关闭
无法打开日志 [FAILED]
尝试运行时:
/etc/init.d/mysqld 重启
我得到这个结果:
cat: /var/run/mysqld/mysqld.pid: Permission denied 停止 mysqld: [FAILED]
启动 mysqld: [ OK ]
您的 sudoers 中的条目看起来不错。您需要做的是使用 sudo 来运行命令,例如
sudo etc/init.d/httpd restart
Run Code Online (Sandbox Code Playgroud)
和
sudo etc/init.d/mysqld restart
Run Code Online (Sandbox Code Playgroud)
您也可以组合 sudoers 中的条目
%websupport ALL=NOPASSWD:/etc/init.d/mysqld, /etc/init.d/httpd
Run Code Online (Sandbox Code Playgroud)