sudo 用户是 Linux 中的普通用户,具备执行治理工作的管理员或 root 权限。然而 Linux 零碎默认的普通用户都不是 sudo 用户,root 用户须要手动将该用户增加到 wheel 用户组中,赋予该用户 sudo 权限。
Red Hat Enterprise Linux、Rocky Linux 和 Alma Linux 等 RHEL 发行版中,在装置过程中会创立一个名为 wheel 的组,它曾经在零碎的 sudoers 文件中定义。
# grep -i "^[%wheel]" /etc/sudoers
%wheel ALL=(ALL) ALL
#
当任何普通用户被增加到这个 wheel 组时,该用户将取得 sudo 权限,并能够通过在命令前应用 sudo 运行所有治理命令。
(1) 以 root 身份登录到零碎
以 root 用户登录零碎,如果曾经以普通用户登录,请应用以下命令切换到 root 用户
$ su - root
(2) 应用 UserAdd 命令创立普通用户
在创立新的普通用户时,指定退出 wheel 用户组
# useradd -G wheel sysadm
应用 passwd 命令为新创建的用户指定明码
# echo "P@##DW0$Ds" | passwd sysadm --stdin
留神: 将明码字符串替换为你想要设置的明码
将现有普通用户增加到 wheel 用户组,应用以下命令
usermod -aG wheel <User_Name>
验证用户是否属于 wheel 用户组
# id sysadm
uid=1000(sysadm) gid=1000(sysadm) groups=1000(sysadm),10(wheel)
#
(3) 测试 sudo 用户
为了确认新创建的用户是否具备 sudo 权限,请运行几个 admin 命令,并且不要遗记在命令前输出 sudo
请先切换到普通用户或应用普通用户登录,而后执行如下命令
# su - sysadm
$ sudo whoami
[sudo] password for sysadm:
root
$
$ sudo dnf install -y net-tools
Above confirms that user has sudo rights and can run admin commands. If you have noticed carefully, we must specify password for executing admin commands via sudo. In case, you want to run sudo commands without password, then edit the sudoer files, comment out the line
下面输入证实用户具备 sudo 权限,能够运行治理命令。您兴许曾经留神到了,运行 sudo 治理命令的时候,咱们必须输出明码。如果您想在没有明码的状况下运行 sudo 命令,须要编辑 sudoer 文件
正文掉这一行:
%wheel ALL=(ALL) ALL
勾销正文这一行
%wheel ALL=(ALL) NOPASSWD: ALL
# vi /etc/sudoers
保留并退出文件
Alternate way to run sudo commands without password is that create a separate file with name like‘sysadm’under the directory‘/etc/sudoers.d’and add the following entry.
还有另外一种办法能够达到同样的目标,在 /etc/sudoers.d 目录下创立一个独立的配置文件,并增加以下内容:
User_Name ALL=(ALL) NOPASSWD: ALL
应用 echo 命令实现上述工作
$ su -
# echo -e "sysadm\tALL=(ALL)\tNOPASSWD: ALL" > /etc/sudoers.d/sysadm
# cat /etc/sudoers.d/sysadm
sysadm ALL=(ALL) NOPASSWD: ALL
#
当初咱们通过 sudo 运行治理命令,它将不会提醒输出明码。
我的开源我的项目
- course-tencent-cloud(酷瓜云课堂 – gitee 仓库)
- course-tencent-cloud(酷瓜云课堂 – github 仓库)