centos7 - 手动启动,但 systemctl 报告超时

centos7 - 手动启动,但 systemctl 报告超时

如果我手动启动它(“/usr/sbin/named -u named”),named 可以启动并正常运行,但是当我使用 systemctl 启动它时,它会失败:

# systemctl start named
Job for named.service failed because a timeout was exceeded. See "systemctl status named.service" and "journalctl -xe" for details.

状态仅显示正常的命名消息,但是在它仍在运行时“ps alx”使它看起来像是在某处寻找密码输入,这是不应该的,但也许这是一个默认的 systemctl 的事情和一个转移注意力的手段:

4     0 18608 28440  20   0 134824  1296 poll_s S+   pts/1      0:00 systemctl start named
0     0 18609 18608  20   0  15428   824 poll_s S+   pts/1      0:00 /usr/bin/systemd-tty-ask-password-agent --watch
0     0 18610 18608  20   0 294680  3056 poll_s Sl+  pts/1      0:00 /usr/bin/pkttyagent --notify-fd 5 --fallback
5    25 18624     1  20   0 294512 146616 sigsus Ssl ?          0:06 /usr/sbin/named -u named -c /etc/named.conf

无论如何,希望有人知道发生了什么......

答案1

您可以使用 named-checkconf 命令测试您的 named.conf 配置。

named-checkconf /etc/named.conf

如果该命令没有输出,则表示您的 named.conf 配置良好。

如果出现错误,您将看到一些对该错误的引用。

答案2

问题原来是 systemd 在与 named.conf 放置的位置不同的位置寻找进程 pid:

May  3 16:04:59 ns2 systemd: PID file /run/named/named.pid not readable (yet?) after start.
options {
        directory       "/var/named";
        pid-file        "/var/run/named/pid";
}

相关内容