Linux 给非root用户开放 sudo 命令权限
本篇系统环境:CentOS 7.x
声明给非管理员,开放sudo
权限,很危险,所以需要给普通用户开放特定允许的命令。
/etc/sudoers
该文件是控制sudo
权限的文件,不要直接修改该文件。
在 /etc/sudoers.d
目录下,可以新建文件,添加权限。该目录配置,将会自动加载,即时生效。
命令格式:
授权用户/组 主机=[(切换到哪些用户或组)] [是否需要输入密码验证] 命令1, [(字段3)] [字段4] 命令2,...
注意:
NOPASSWD
只能影响第一个命令。
cd /etc/sudoers.d
# 新建任意名称 本文对应用户名
vim userName
# 指定用户 设置主机与权限的组 NOPASSWD 不需要密码 能执行 systemctl 命令
%userName ALL=(root) NOPASSWD: /usr/bin/systemctl
# 保存退出
:wq
请注意,设置命令一定要是绝对路径。
# 使用例子
su userName
#
sudo systemctl start xxxx
sudo systemctl stop xxxx
更多细节,请查阅 Linux 文档。