sudo
命令用于让普通用户暂时获得 root 用户的权限。
我一直好奇为什么普通用户输入自己的密码,就可以获得 root 权限了,不应该是输入 root 的密码才可以获得 root 权限吗?其实是这样, root 会将“什么样的普通用户可以使用 sudo
, sudo
的时候可以使用哪些命令”的信息记录在 /etc/sudoers
这个文件中,然后 sudo
会在使用过程中根据这个文件来审计使用者和使用的命令。
在使用 sudo
的时候环境变量会默认变成 root 的环境变量,如果希望保留原本普通用户的环境变量,可以使用 -E
选项,还可以通过编辑 /etc/sudoers
来指定保留哪些环境变量。