首先,我有一台运行 Ubuntu 18.04 的服务器,大约两年来运行良好。
我昨晚登录了它,将一些文件复制到我的 NAS,并做了一些其他事情,没有任何问题。
今天早上我登录时,尝试使用 sudo 时开始出现身份验证错误。奇怪的是,我能够正常登录(通过 ssh 和实际机器),但使用 sudo(当然使用相同的密码)时却不行。它给了我 3 次尝试机会,中间还说抱歉,再试一次,然后报告说有 3 次密码尝试错误,并将我踢回命令行。
我重启了机器,进入恢复模式,进入 root shell,然后更改了密码。成功了!Sudo 现在可以正常工作了。
我已升级到 20.04 并完成了我之前尝试做的事情,然后注销。
几个小时后,我重新登录,问题又出现了。当我尝试使用 sudo 时,我收到密码错误错误。
我今天就这个问题做了一些研究,但我发现的所有东西似乎都不适用。我发现的大多数帖子都是非常古老的论坛帖子,没有解决方案。我确实找到了去年 9 月的一个帖子,其中引用了 /var/log/auth.log 中的一个错误,该错误指出:
su: pam_unix(su:auth): Couldn't open /etc/securetty: No such file or directory
我确实注意到这个错误存在于我的 /var/log/auth.log 文件中。
我曾尝试使用 pkexec 作为解决方法,但没有效果。
我只是不明白为什么我可以登录,但不能使用 sudo,因为他们使用完全相同的密码。
我的密码拼写没有错误,也没有使用奇怪的键盘布局,密码不包含奇怪的非英语字符等。
对此有什么想法吗?提前谢谢!:)
编辑
好的,最近有进展!我决定尝试使用不同的 tty 来看看是否有帮助,所以我按下 ctrl+alt+F3,然后,sudo 就可以正常工作了!不仅如此,当我切换回 tty1 时,sudo 仍然可以工作,当我通过 ssh 从笔记本电脑登录时,sudo 仍然可以工作!
但不确定这是否完全解决了问题。我将退出所有这些会话并等待 15-20 分钟,看看我是否能够使用任何 sudo 命令,而无需执行此 tty 技巧。
编辑#2
好吧,正如我所怀疑的那样,在注销并等待 sudo“宽限期”(缺乏更好的术语)消失后,我重新登录并在尝试使用 sudo 命令时再次收到密码错误的错误。