当前位置: 首页>>技术教程>>正文


要求多久输入一次sudo命令的密码?在哪里可以设置?

问题描述

我执行了很多sudo命令。

我注意到,如果我在几分钟之内执行了一个然后又执行了一个,那么第二次我没有收到消息:

[sudo] password for my_username:

但是当两个命令之间有更多时间执行时,我确实会得到它。

消息什么时间没有出现?我们如何检查/更新它?

最佳回答

sudo的默认超时为15分钟;也就是说,默认情况下,sudo将记住您的密码15分钟。

您可以通过在文件/etc/sudoers中添加字符串来修改此默认超时。但是,您不直接修改文件,而是使用命令sudo visudo

因此,在终端中键入sudo visudo。这将打开(实际上是临时的)文件供我们使用您喜欢的编辑器进行编辑。

Note: if you are using visudo for the first time, you should be asked which editor you would like to use, so choose your editor. There’s no “better” editor, but I prefer nano. If you’ve already used visudo and chose an editor before, but you want to use another editor for the time being, you can do sudo EDITOR=vi visudo to use vi, or change it to nano to use nano. If you want to permanently change your preferred editor, do sudo update-alternatives --config editor.

查找以下行:

Defaults    env_reset

并在其末尾添加timestamp_timeout=X(带逗号),其中X是您要设置的时间(以分钟为单位)。

因此,您的行应如下所示:

Defaults    env_reset,timestamp_timeout=5

如果指定0,将始终询问您密码。如果指定负值,则超时将永远不会过期。

完成后,保存并退出。

来源:RootSudoTimeout

次佳回答

在此查看此帖子:http://ubuntuforums.org/showthread.php?p=116697#post116697

编辑/etc/sudoers文件,使用sudo visudo命令以确保安全。将timestamp_timeout=0添加到以Defaults开头的行中,以便每次询问,或者将X分钟延迟的正数X加上。

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/11732.html,未经允许,请勿转载。