如何取消当前应用的剩余 sudo 超时?

Pet*_*r.O 44 sudo

当我刚刚运行sudo并且不希望它在正常的超时时间内保持活动状态时,我该如何取消剩余的活动超时时间?

sudo -k 为当前终端会话杀死它,但是如果一个进程当前正在该会话中运行sudo -k,因此无法运行,有没有办法从另一个终端会话中取消它?

有没有办法取消所有当前应用的sudo时间(对于所有终端会话,以及所有运行 gksudo 的应用程序等?

虽然,想想看,一个正在运行的 GUI 可能只需要关闭,但我只是检查了Alt+F2保持 gksu 处于活动状态以供后续调用。

waj*_*jiw 48

不确定您是否要终止 sudo 超时以便它不会超时或立即超时,但是如果您想删除剩余的时间戳,您可以使用 sudo -k

否则,如果您试图取消超时以便 sudo 不会超时,我认为这在当前会话中是不可能的。我知道的唯一方法是改变timestamp_timeout了的sudoers文件,并重新启动会话。


Ste*_*zzo 9

就你的观点之一:

但是如果进程当前正在该会话中运行,因此无法运行 sudo -k

这是特定于命令行的,如果您想在其他进程正在运行时执行任何操作,可以按Ctrl+Z暂停该进程;然后你可以再次访问当前终端,做任何你喜欢的事情。完成后,您可以键入jobs以获取进程列表,并在它们旁边显示一个数字。键入fg 1(例如 -fg如果只有一个作业)以重新启动进程,将其提升到前台。同样,bg做同样的事情,但让进程在后台运行。

示例会话

$ sudo apt-get install hello
<CTRL+Z>
[1]+  Stopped    sudo apt-get install hello
$ sudo -k
$ jobs
[1]+  Stopped    sudo apt-get install hello
$ fg 1
Loading database...
....
Run Code Online (Sandbox Code Playgroud)