当我使用“sudo su”时,cmd termianl 会要求输入 root 密码。但成功登录一次后,它就不会再要求进行身份验证。我希望它每次都要求进行身份验证。
答案1
您可能在这里提到两件事:
如果您想以 root 身份运行一个命令,请运行sudo <command>
。该命令完成后,您将失去 root 权限。例如,您可以运行sudo whoami
- 该whoami
命令显示您以谁的身份登录。sudo whoami
应该显示您是 root,whoami
完成后,您将失去 root 权限。
su
但是, 会运行bash
(或等效的 shell)。bash
然后会询问您(以 root 身份)要运行哪些命令。要退出su
并bash
,只需键入exit
;您将失去权限并恢复正常。
另一种可能性是 sudo 可能正在缓存您的身份验证。这通常会从您输入密码或运行 开始持续 5 分钟sudo -k
。或者,您可以通过在文件 /etc/sudoers 中添加以下行来完全禁用此功能:timestamp_timeout=0
答案2
sudo su
命令允许您登录到 root 帐户。成功登录后,它不再要求进行身份验证。
如果您每次都想要进行身份验证,那么您必须通过运行命令退出 root 帐户exit
。
答案3
使用“sudo”命令时,系统会要求您输入密码。一旦用户通过身份验证,时间戳就会更新,然后用户可以在短时间内(可能是 5 分钟)无需密码即可使用 sudo。因此,它会在该时间到期后要求输入密码。