1,su命令
(su为switch user,即切换用户的简写)
格式:su -l USERNAME(-l为login,即登陆的简写)
如果不指定USERNAME(用户名),默认即为root,所以切换到root的身份的命令即为:su -root或是直接 su -
使用su切换用户时需知晓对应用户的登陆密码
2:su - 与su的区别
su - USERNAME切换用户后,同时切换到新用户的工作环境中
su USERNAME切换用户后,不改变原用户的工作目录,及其他环境变量目录
3,sudo命令
sudo是一种权限管理机制,依赖于/etc/sudoers,其定义了授权给哪个用户可以以管理员的身份能够执行什么样的管理命令;
格式:sudo -u USERNAME COMMAND
当普通用户通过sudo以root用户执行命令时,sudo后面的 -uUSERNAME可省略,即sudo COMMAND 即意为sudo以root用户执行
5,sudo与su的区别
使用su切换用户时需知晓对应用户的登陆密码,即若切换成root用户身份,需知道root用户的登陆密码。作为root用户管理员,如何授权其他普通用户,在不需要知晓root密码的情况下,执行root权限的命令操作?此时即可使用sudo。
4,sudoers文件
sudo的配置文件为:/etc/sudoers。
sudoers文件中允许指定用户在不需要知道root用户的登陆密码的情况下,可以以root用户身份运行各种命令。此文件必须使用visudo命令编辑配置。(visudo命令可以提供basic sanitychecks和check for parse errors,即提供快速的正确性有效性检查,以及语法检查功能)
查看sudores文件,其中有一行如下图,定义了允许root用户从任何主机登陆,使用sudo可以切换成任何用户的身份,执行所有命令。
查看sudoers文件,其中有两行如下图,定义了组可以使用sudo命令的配置。