> CentOS > CentOS入门 >

CentOS7给普通用户执行root相关权限

给普通用户执行root用户权限的功能(重启mysql服务)

----------------------------------------------------
方法一(不推荐):
以root用户身份登录(或su进去)
修改/etc/sudoers文件(不要直接修改文件,否则权限有问题),直接使用命令

# visudo
找到
root    ALL=(ALL)       ALL
这行,在之下加入一行
lifw    ALL=/usr/bin/systemctl restart mysql.service

保存退出
:wq

切换会普通用户(重新登录或exit)

查看有哪些权限
$sudo -l


普通用户执行
sudo /usr/bin/systemctl restart mysql.service
输入本帐号(普通用户)的密码即可。

如果给普通用户执行全部root权限时,只需要复制一份
root    ALL=(ALL)       ALL
并将root改成普通用户的名字即可。

需要重新登录。

------------------------------------------------------
方法二(推荐):

因为软件升级, /etc/sudoers 可能会被覆盖掉,所以好的习惯是在 /etc/sudoers.d 中添加

在 /etc/sudoers.d 目录中增加一个文件,添加相同的内容

# vim test
添加如下代码:
tom ALL=(ALL) ALL

保存退出,用这个帐号登录,sudo后具有root权限

另:其他配置方式与在sudoers文件中的一样。

注意(如果发现没有成功,看是否满足下面2个条件):
1. 新建的这个文件不能以 “~”结尾,或者文件名中不能包含 "." (The file in /etc/sudoers do not end in '~' or contain a '.' character)
2. 新建的文件的用户和组都必须是root,并且文件的权限是440.(Note that there must be at least one file in the sudoers.d directory (this one will do), and all files in this directory should be mode 0440.) 


(责任编辑:IT)