前言
- 日常服务器开发中经常需要赋予普通用户root权限,即超级管理员权限
- 在此记录一下Linux中如何设置管理员权限给普通用户
ps:赋予管理员权限的方法有三种,这里只记录比较常用的两种
ps2:两种方法大致都是将用户次要组群添加到管理组中,不同的是第一种的wheel组群是默认存在的,第二种则需要我们自己添加,用哪种都一样,第一种方便快捷点
方法一
- 创建普通用户并将wheel群添加进次要组群
[root@centos83 mysql]# visudo // 如果%wheel前面有“#”则删除,然后保存后退出 ## Allows people in group wheel to run all commands %wheel ALL=(ALL) ALL [root@centos83 mysql]# useradd -G wheel suhai //添加新用户并设置次要组群为管理群wheel [root@centos83 mysql]# passwd suhai //此时用户suhai便拥有了管理员权限,使用sudo+命令即可
- 查看群组下有那些管理员
[root@centos83 mysql]# cat /etc/group |grep wheel wheel:x:10:suhai
- 删除某用户的管理员权限
[root@centos83 mysql]# gpasswd -d suhai wheel 正在将用户“suhai”从“wheel”组中删除 [root@centos83 mysql]# cat /etc/group |grep wheel wheel:x:10: //删除权限后,如果又想添加回来,使用 gpasswd -a suhai wheel 命令即可
方法二
- 创建普通用户suhai并赋予密码
[root@centos83 ~]# useradd suhai [root@centos83 ~]# passwd suhai 更改用户 test 的密码 。 新的 密码:*** 无效的密码: 密码少于 8 个字符 重新输入新的 密码:*** passwd:所有的身份验证令牌已经成功更新。
- 切换到suhai用户,分别使用和不使用sudo命令访问/etc/shadow(密码映射文件)【测试权限步骤,可跳过】
[root@centos83 ~]# su - suhai //切换到suhai账户环境 [suhai@centos83 ~]$ ll /etc/shadow //此时可以看到shadow文件权限为000,只有root账户才可以访问 ----------. 1 root root 940 1月 5 21:59 /etc/shadow //没有赋予root权限时普通账户无法访问 [suhai@centos83 ~]$ cat /etc/shadow cat: /etc/shadow: 权限不够 [suhai@centos83 ~]$ sudo cat /etc/shadow [sudo] suhai 的密码: suhai 不在 sudoers 文件中。此事将被报告。
- 切换到root账户下使用 visudo命令修改/etc/sudoers配置文件,赋予管理员权限
[suhai@centos83 ~]$ su - //切换到root账户环境 [root@centos83 ~]# visudo //找到如下内容位置,在root那行下添加相同内容,并修改用户名为suhai,修改后保存并退出 ## Allow root to run any commands anywhere root ALL=(ALL) ALL suhai ALL=(ALL) ALL
- 修改后切换到suhai用户下,查看/etc/shadow文件
[root@centos83 ~]# su - suhai 上一次登录:二 1月 5 22:03:56 CST 2021pts/1 上 [suhai@centos83 ~]$ cat /etc/shadow cat: /etc/shadow: 权限不够 [suhai@centos83 ~]$ sudo cat /etc/shadow //使用管理员权限务必在命令前加上sudo [sudo] suhai 的密码: root:$6$bOvtr3SEDmKnR1sP$eL98pSpNMPakWsk9QsjqnU/XSZZMeU5YwDr4U9l4eoC9u/Ard6N..UtT5pdcO5xroLKvOpe6OcUKWp2WdUDug/::0:99999:7::: bin:*:18397:0:99999:7::: 。。。。。。。。。。。。省略。。。。。。。。 suhai:$6$Vh9/o5kehkhaw8MT$q/5XSOa5zt45kP5e2zZcQGDgDa4uQgxwjcaG5blkJkOFy/64AF0MsKhpr415ck6VOhJRlXf5tcTH25wLjuGB61:18632:0:99999:7:::
- 虽然是管理员权限,但每次都需要输入用户密码,此时可以修改sudoers配置文件,免除密码验证
// 此时直接在suhai账户下使用sudo管理员权限修改即可,不需要切换root [suhai@centos83 ~]$ sudo visudo // 找到如下内容,在%where行下方添加相同内容,修改为suhai用户名,修改后保存并退出 ## Same thing without a password # %wheel ALL=(ALL) NOPASSWD: ALL suhai ALL=(ALL) NOPASSWD: ALL // 此时再在suhai账户下使用命令sudo cat /etc/shadow时即可免密直接查看内容
- 这种方法设置的,查看有哪些管理员只需要去visudo文件查看即可,删除的话就把原先添加的地方删除就行
















