我不明白。在BSD中,如果我想运行su -
,我必须将自己添加到wheel
组中。 Linux 中不也是这样吗?
[test@centos ~]$ uname -a
Linux centos 4.18.0-193.19.1.el8_2.x86_64 ...
[test@centos ~]$ cat /etc/group | grep wheel
wheel:x:10:
[test@centos ~]$ cat /etc/group | grep test
test:x:1001:
[test@centos ~]$ su -
Password:
Last login: Wed Oct 14 ...
[root@centos ~]# whoami
root
答案1
su
这取决于Linux发行版,但在CentOS中,开箱即用和wheel
开箱即用之间没有特殊关系:
% docker run --rm -it centos:8
[root@58212abdad65 /]# grep wheel /etc/pam.d/ -r
/etc/pam.d/su:# Uncomment the following line to implicitly trust users in the "wheel" group.
/etc/pam.d/su:#auth sufficient pam_wheel.so trust use_uid
/etc/pam.d/su:# Uncomment the following line to require a user to be in the "wheel" group.
/etc/pam.d/su:#auth required pam_wheel.so use_uid
正如您所看到的,您可以将其配置为像您使用的 BSD 一样运行。
在其他一些发行版中,可能会启用第一个选项(允许wheel
用户su
无需密码),但我不记得是哪个选项。
答案2
当如上所述调用时,该su
命令将要求输入 root/超级用户密码;只要您知道密码,组成员资格就无关紧要。现在,如果您使用sudo su
,您可以分配组超级用户权限; wheel 和 sudo 是最常开箱即用的 (2) 组,尤其是在单用户系统上。