centos中配置普通用户使用sudo命令的方法

发布时间:2019-10-12编辑:脚本学堂
本文介绍下,在centos中编辑sudoers文件,以配置普通用户使用sudo执行相关系统命令的方法,有需要的朋友参考学习下。

今天学习下在centos中配置sudo命令的方法。

一、su和sudo命令对比:
在普通用户下输入su命令后,会提示输入root账户的密码,然后就进入特权模式(跟用root登录系统完全一样),输入exit或者su - user 退出:
 

复制代码 代码示例:
$su
Password:
#ls /root
anaconda-ks.cfg  install.log  install.log.syslog
#exit
$ls /root
ls: cannot open directory /root: Permission denied #提示没有权限

采用sudo命令,只需输入当前用户的密码(也可以配置为不输入密码)即可执行需要root权限执行的命令:
 

复制代码 代码示例:
$ls /root
ls: cannot open directory /root: Permission denied #提示没有权限
$sudo ls /root
We trust you have received the usual lecture from the local System
Administrator. It usually boils down to these three things:
    #1) Respect the privacy of others.
    #2) Think before you type.
    #3) With great power comes great responsibility.
[sudo] password for oracle:    #输入普通用户oracle的密码
anaconda-ks.cfg  install.log  install.log.syslog

sudo比su有很多优点:
1、普通用户不需要知道root的密码即可执行需要root权限的命令;
2、不会因忘记退出而采用root执行了会引起破坏性的命令(初学linux经常犯这个错);

二、配置普通用户有使用sudo命令的权限:
在linux系统中,新建用户并没有执行sudo权限,如新建一个AAA的用户,输入sudo命令会有如下提示: 
aaa is not in the sudoers file.  This incident will be reported.
在sudoers文件中不存在aaa这个用户,这个时间会被报告给管理员。
 
来看下sudoers这个文件的内容:
 

复制代码 代码示例:
[root@jbxue aaa]# vi /etc/sudoers
## Sudoers allows particular users to run various commands as
## the root user, without needing the root password.
##
## Examples are provided at the bottom of the file for collections
## of related commands, which can then be delegated out to particular
## users or groups.
##
## This file must be edited with the 'visudo' command.
 
## Host Aliases
## Groups of machines. You may prefer to use hostnames (perhaps using
## wildcards for entire domains) or IP addresses instead.
# Host_Alias     FILESERVERS = fs1, fs2
# Host_Alias     MAILSERVERS = smtp, smtp2
 ## User Aliases
## These aren't often necessary, as you can use regular groups
## (ie, from files, LDAP, NIS, etc) in this file - just use %groupname
## rather than USERALIAS
# User_Alias ADMINS = jsmith, mikem
 

 输入i,对文件进行编辑,发现底部有只读提示:
-- INSERT -- W10: Warning: Changing a readonly file
显示无权限,退出编辑状态后查看权限:
 

复制代码 代码示例:
[root@jbxue aaa]# ll /etc/sudoers
-r--r-----. 1 root root 3825 Jul 22 01:05 /etc/sudoers
 

root也只有只读权限。
首先,修改权限以让root有完全控制权限:
[root@jbxue aaa]#chmod 740 /etc/sudoers
再次编辑,这次没有出现只读提示了,找到如下字段:
 

## Allow root to run any commands anywhere
root    ALL=(ALL)       ALL
oracle  ALL=(ALL)       ALL
aaa     ALL=(ALL)       ALL
 

添加aaa用户,添加后如aaa  ALL=(ALL)       ALL
修改完后输入:wq保存,保存后记得把权限修改回去:
 #chmod 440 /etc/sudoers  权限一定是440,否则就会有错误提示。

 至此,centos系统下的sudo功能就配置完成了。

您可能感兴趣的文章:
centos普通用户增加sudo权限的方法
用户无权限使用sudo的解决方法 centos sudoers用法
linux下sudo的日志功能
sudo在sudoers中配置无需输入密码的方法
linux下运行Sudo的方法
经典:su sudo sudoers的用法详解
linux下Sudo的配置方法谈
不输入密码执行sudo命令的配置方法
centos启用sudo的简单方法
sudo的配置方法 /etc/sudoers配置文件说明
centos为普通用户添加sudo权限的方法
centos5.5中sudo日志文件的创建与跟踪
有关Sudo的日志功能详解
centos sudo日志文件的创建与跟踪
sudo日志记录到本地或远程的配置方法
linux下sudo的配置方法分享
如何在centos中启用sudo