无论我是否被提示输入密码,它都会在接受身份验证和执行我要求的操作之间挂起。换句话说,sudo ls
它将挂起大约 60 秒。
我不知道是什么原因造成的。这是在 Centos 5 上,我查看过selinux
并将其设置为禁用和启用,但似乎没有任何效果。
答案1
来自@TheAndruu 的回答 这个问题:
如果您在安装过程中更改主机名,则会发生这种情况。要解决此问题,请编辑文件 /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 [在此处添加您的信息] ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 [在此处添加您的信息]
我在 Fedora 11 上遇到了完全相同的问题,并且它解决了。
答案2
对我来说,这是因为安装了 krb5-user/config。我通过检查 /var/log/auth.log 并看到 pam_krb5 尝试先于 pam_unix 注意到了这一点。使用 apt-get remove 卸载这些软件包解决了这个问题。如果您的计算机需要 kerberos (pam_krb5),则不要删除这些软件包。我的 sudo 挂起时间从一致的 30 秒缩短到了 0 秒。
答案3
这在 [Halsafar][1] 的 [answer][2] 中有所暗示,我在我的工作 VPN 上启用了 Kerberos,但是当我关闭它时它就没用了,因此我将 auth 模块顺序更改为在之前/etc/pam.d/common-auth
使用:pam_unix
pam_krb5
前:
auth [success=4 default=ignore] pam_krb5.so ...
auth [success=3 default=ignore] pam_unix.so ...
后:
auth [success=4 default=ignore] pam_unix.so ...
auth [success=3 default=ignore] pam_krb5.so ...
请注意,我们更改了success=
编号以反映新的顺序。
这就将我的 sudo 从 30 秒改为 0 秒,就像 Halsafar 的回答中那样。[1]:https://serverfault.com/users/127821/halsafar [2]:https://serverfault.com/a/495196
答案4
您可能还想检查的唯一一件事是您的 /etc/resolv.conf 文件,以确保其中有正确的 dns 条目。我过去曾见过这种情况会导致延迟。