一、概念
Linux系统中存在用户和权限的概念,不同的用户对应不同的权限,其中root用户具有最高权限,通常为了保证系统安全,一般不会直接使用root用户登录终端。安全起见,管理员也会使用普通用户的身份登录,在需要使用较高权限的时候才会暂时使用root权限,sudo命令就是满足了普通用户暂时使用root权限执行命令的需求,且sudo的相关操作均会记录在/var/log/secure目录下。
多用户的linux系统,用户身份的相互切换是必不可少的场景,这种用户身份的切换主要是通过su命令来完成的。
二、常规使用
1.sudo的常规使用
1.1sudo文件的配置
用户想要能够使用sudo命令,首先需要做相关配置,配置的主要方式有两种,这里只介绍其中一种,即修改/etc/sudoers配置文件,该文件常规配置格式如下,其中NOPASSWOD一项为非必须项,如果前面无NOPASSWD,则表示需要当前用户密码才可执行的命令:
用户名 可供使用sudo命令的主机=可供执行的命令 (NOPASSWOD:)可执行命令
具体如下图所示,此为sudoers文件的具体配置,以camson用户为例,其可以在任何主机上使用sudo执行useradd命令,
1.2sudo命令的执行
使用user身份执行command:sudo -u [user] [conmmand]
若无-u选项,则代表按照root用户权限执行命令
2.su命令
切换用户:su - [user] -c '[conmand]'