【问题标题】:Cntlmd not starting under systemd on Centos 7.1Cntlmd 未在 Centos 7.1 上的 systemd 下启动
【发布时间】:2016-05-22 04:10:17
【问题描述】:

尝试在 Centos 7.1 上启动 cntlmd 时出现奇怪的错误。

systemctl start cntlmd` 在日志中产生以下结果(是的,becomming 正是它在日志中的拼写方式:)):

systemd: Started SYSV: Cntlm 是为了得到你的代理地址并成为

奇怪的是:

  • 它确实在安装后最初运行。
  • 完全相同的配置在另一台机器上完美运行(配备 Chef,因此 100% 相同的配置)。
  • 如果我在前台运行它,它可以工作,但通过 systemd,则不行。

要“修复”它,我必须手动删除并重新安装,然后它又可以工作了。

有人看到这个错误(Google 什么也没显示)并且知道发生了什么吗?

【问题讨论】:

  • 我在重新启动机器时能够重现这一点。它将正在运行,并且一旦重新启动(启用)将不会按照上述错误启动。我必须删除 cntlm 并重新安装才能修复。 ¯\_(ツ)_/¯
  • @selalerer 0.35.1 来自 epel 存储库。还尝试了来自 SourceForge 链接的 cntlm-0.92.3-1.x86_64.rpm。 SELinux 处于许可模式。
  • 链接中的这个人在 0.35.1-9 版本中遇到了同样的问题。版本中的 -9 表示它实际上不是 0.35.1,而是 RedHat 添加了更多更新的版本。似乎他自己构建了 0.92 版本(没有使用 RedHat 版本)并且对他有用。 sourceforge.net/p/cntlm/bugs/34
  • @selalerer 我会构建并看看会发生什么......

标签: centos7 systemd


【解决方案1】:

我意识到/var/run/cntlm 目录似乎在每次启动后都被“删除”了。原来/var/run/cntlm 目录从未在启动时由 systemd-tmpfiles 创建(感谢this SO answer),结果是:

Feb 29 06:13:04 node01 cntlm: Using following NTLM hashes: NTLMv2(1) NT(0) LM(0)
Feb 29 06:13:04 node01 cntlm[10540]: Daemon ready
Feb 29 06:13:04 node01 cntlm[10540]: Changing uid:gid to 996:995 - Success
Feb 29 06:13:04 node01 cntlm[10540]: Error creating a new PID file

因为cntlm 无法写入它的pid 文件,因为/var/run/cntlm 不存在。

所以要让 systemd-tmpfiles 在启动时创建/var/run/cntlm 目录,您需要在/usr/lib/tmpfiles.d/cntlm.conf 中添加以下文件:

d /run/cntlm   700 cntlm cntlm

重新启动,Bob 就是你的叔叔了。

【讨论】:

  • 有人知道我可以在哪里记录 cntlm 包的这个错误吗?
  • 谢谢。 Red Hat 7.3 的错误似乎仍然存在。添加该行为我修复了它!
猜你喜欢
  • 2019-01-11
  • 2020-12-16
  • 2017-07-05
  • 1970-01-01
  • 2018-08-23
  • 1970-01-01
  • 1970-01-01
  • 2013-10-30
  • 1970-01-01
相关资源
最近更新 更多