用户身份切换

一、su

        (1)su

                ***切换到root用户

                ***需要输入root密码

                ***代表使用non-login shell的变量文件读取方式来登录系统

        (2)su -

                ***切换到root用户

                ***需要输入root密码

                ***代表使用login-shell的变量文件读取方式来登录系统

        (3)su -l    用户名

                ***切换到指定的用户    

                ***输入要切换到的用户的密码

                ***代表使用login-shell变量文件读取方式来登录系统

       (4)exit

                ***退回到切换前的用户

二、sudo

        (1)注意

                ***仅有/etc/sudoers文件内的用户才能够执行sudo命令

                ***系统默认的是仅有root用户可以执行sudo

                ***sudo命令并不是切换到指定的用户中,而是在当前用户中执行指定用户的命令

       (2)命令

                ***sudo [-u  新用户账号]  [-b]  命令

                ***[-u]后接欲切换的用户,若无此参数则代表切换的用户为root

                ***[-b]将后续的命令让系统自动执行,而不与目前的shell产生影响

       (3)流程

                ***当用户执行sudo时,系统于/etc/sudoers文件中查找该用户是否有执行sudo的权限

                ***若用户具有执行sudo的权限,便让用户输入用户自己的密码来确认

                ***若密码输入成功,便开始进行sudo后续接的命令(但root执行sudo时不需要输入密码)

                ***若欲切换的身份与执行者身份相同,也不需要输入密码

        (4)修改/etc/sudoers文件

                《1》前提

                            除了root之外的其他账号,若想要使用sudo执行属于root的权限命令,则root需要先使用visudo去修改

                            /etc/sudoers,让该账号能够使用全部或部分的root命令功能。

                《2》命令

                            ***visudo

                《3》单一用户

                            找到“root   ALL = (ALL)   ALL”这一行,然后仿照格式在下一行添加其他用户。

                            格式:

                                     用户账号     登陆者的来源主机号 = (可切换的身份)     可执行的命令

                                        root                    ALL              =          (ALL)                      ALL

                            注意:

                                    ALL是特殊的关键字,代表任何身份、主机或命令的意思。

                                    可执行命令必须使用绝对路径编写。

                 《4》利用用户组

                            找到"%wheel    ALL = (ALL)    ALL"这一行,将前面的“#”号去掉。

                            “%”代表后面接的是一个“用户组”之意。

                            然后使用usermod命令将用户添加到这个用户组中。

                            使任何加入wheel这个用户组的用户都能够使用sudo切换任何身份来操作命令。

猜你喜欢

转载自blog.csdn.net/m0_37671794/article/details/80482505