当普通用户需要临时提权时用sudo命令,仅需要输入当前用户的密码,便可完成临时的权限提升。用户第一次执行sudo时会要求输入密码来验正用户身份,成功后用户会获得一个有固定存活时长的“令牌”;5分钟。但是sudo命令过程中可能会提示以下报错:
[leiakun@centos7 ~]$ sudo ls
[sudo] leiakun 的密码:
leiakun 不在 sudoers 文件中。此事将被报告。
or
[leiakun@centos8 ~]$ sudo ls
我们信任您已经从系统管理员那里了解了日常注意事项。
总结起来无外乎这三点:
#1) 尊重别人的隐私。
#2) 输入前要先考虑(后果和风险)。
#3) 权力越大,责任越大。
[sudo] leiakun 的密码:
leiakun 不在 sudoers 文件中。此事将被报告。
出现以上问题解决很简单,通过修改/etc/sudoers文件增加用户到配置文件,即可生效。
1、切换到root用户下:
2、查看/etc/sudoers文件的读写权限
[root@centos7 leiakun]# ll /etc/sudoers
-r--r-----. 1 root root 4328 11月 28 02:38 /etc/sudoers
查看为440权限无写权限,需要添加可写权限。
3、为/etc/sudoers文件添加可写权限,目前是root用户,只需要给root用户添加读写执行权限即可。
[root@centos7 leiakun]# chmod 740 /etc/sudoers
[root@centos7 leiakun]# ll /etc/sudoers
-rwxr-----. 1 root root 4328 11月 28 02:38 /etc/sudoers
4、用文本编辑器打开配置文件(这里我用的是vim),编辑/etc/sudoers文件,添加要提升权限的用户;在文件中找到root ALL=(ALL) ALL,在该行下添加提升权限的用户信息,如:
[root@centos7 leiakun]# vim /etc/sudoers
...
root ALL=(ALL) ALL
leiakun ALL=(ALL) ALL
...
说明:格式为(用户名 网络中的主机=(执行命令的目标用户) 执行的命令范围)
3、保存退出,并恢复/etc/sudoers的访问权限为440
[root@centos7 leiakun]# chmod 440 /etc/sudoers
[root@centos7 leiakun]# ll /etc/sudoers
-r--r-----. 1 root root 4328 11月 28 02:38 /etc/sudoers
4、切换到普通用户,测试用户权限提升功能
[root@centos7 leiakun]# exit
exit
[leiakun@centos7 ~]$ sudo ls
[sudo] leiakun 的密码:
公共 模板 视频 图片 文档 下载 音乐 桌面
[leiakun@centos7 ~]$