![sudo 因“pam_mount.c”断言而失败](https://linux22.com/image/817001/sudo%20%E5%9B%A0%E2%80%9Cpam_mount.c%E2%80%9D%E6%96%AD%E8%A8%80%E8%80%8C%E5%A4%B1%E8%B4%A5.png)
我刚刚从 11.10 升级到 Kubuntu 12.04。
现在当我使用时sudo
我几乎总是得到:
sudo: pam_mount.c:417: modify_pm_count: Assertion `user != ((void *)0)' failed.
这会导致命令失败。
这是怎么回事?我该如何解决?
答案1
使用 root 帐户登录sudo bash
。您也可以从 Live CD 执行此操作。或者您需要重新启动并使用sudo bash
第一个命令发出(看起来这个错误仅在您第二次使用后才会出现sudo
)。
sudo gedit /etc/pam.d/common-session-noninteractive
找到第 16 行并更改
[default=1]
到
[default=0]
尝试使用命令sudo
,它应该可以正常工作。
答案2
此错误行为是由“sudo”包中的错误引起的。遗憾的是,上述修复只是一种解决方法,它会导致 pam_denied 运行,因此所有授权都会失败,并且 Cron 作业不再执行。例如,Syslog 指出:
'CRON[process id]: Permission denied'.
已修补的“sudo”包可在以下 PPA 上获得:https://launchpad.net/~intuitivenipple/+archive/ppa?field.series_filter=precise
但是请注意,尽管 TJ 享有盛誉,“sudo”在我们的 Ubuntu 系统上是一个非常敏感的包,我建议不要安装非官方 Ubuntu 或 Debian 方提供的版本。
无论如何,这个错误是由 launchpad bug 引用的#927828并被归类为“高重要性”。因此,在 LTS12.04 发布后,可能会很快发布错误修复。