在我执行命令后,是否有命令可以取消用户的 sudo 权限,以便sudo pmset sleep 0
当我尝试执行另一个 sudo 命令时,它会再次要求我输入密码?
目前,执行一个 sudo 命令后,它会执行其他命令而不要求输入密码。该命令exit
似乎不起作用。
答案1
sudo -k
将会执行您想要的操作;它会使 sudo 时间戳无效,从而有效地撤销您的 sudo 权限,以便您下次使用 sudo 时系统将再次提示您输入密码。
sudo 不会(至少默认情况下)打开另一个终端,因此exit
无济于事;它只会退出您正在使用的 shell。
来源。
答案2
您也可以通过将timestamp_timeout
中的 设置为 0 来执行此操作(至少在 Linux 上可以,在 OSX 上可能有所不同) /etc/sudoers
。这是记住密码的时间。在大多数 Linux 发行版中,默认设置为 15 分钟。将其设置为0
意味着sudo
将提示输入密码每次运行。要更改它,请执行以下操作:
运行
sudo visudo
,这将打开一个vim
允许您编辑的会话/etc/sudoers
。点击i进入 INSERT 模式
添加此行
Defaults timestamp_timeout=0
点击Esc退出 INSERT 模式
点击:wqEnter保存文件并退出。
现在,sudo
即使您刚刚输入了密码,也会始终要求输入密码。如果您认为这太严格,可以使用更高的值,例如5
5 分钟或0.5
30 秒。