获取权限时出错:初始化权限时出错:无法连接:资源暂时不可用(g-io-error-quark,27)

获取权限时出错:初始化权限时出错:无法连接:资源暂时不可用(g-io-error-quark,27)

每次我重新启动服务(例如service exim restart,以 root 身份运行)时,我都会收到以下错误消息:

Error getting authority: Error initializing authority: Could not connect: Resource temporarily unavailable (g-io-error-quark, 27)

CPU使用率dbus-daemon也为 100%。

的输出显示了以下错误的journalctl -r -p err -b极端数量(条目):6979

pam_systemd(crond:session): Failed to connect to system bus: Resource temporarily unavailable

还有 5033 个会话文件。这些是通过 ssh 进行会话时,这些应该会自动删除,但我很犹豫要不要自己删除它们

ls -1 /var/run/systemd/sessions/ | wc -l
5033

原因是什么?我该如何预防?

  • CentOS Linux 版本 7.2.1511(核心)

答案1

这是systemd-logind && dbus-daemon的一个bug,与https://github.com/systemd/systemd/issues/1961

因为 crond 总是调用 pam_systemd ,而 pam_systemd 总是调用 systemd-logind 来创建使用 dbus-daemon 的会话范围,但有时 dbus-daemon 总是不起作用,所以我们最好让 crond 不调用 systemd-logind

停止systemd-logind也不会影响ssh,只是不能使用session cgroup

sudo sed -i -e '/^[^#]*pam_systemd.so/ s/^/#&/g' /etc/pam.d/*
sudo systemctl mask systemd-logind
sudo systemctl stop systemd-logind

相关内容