named запускается и работает нормально, если я запускаю его вручную ("/ usr / sbin / named -u 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
В любом случае, надеюсь, кто-то знает, что происходит ...
Проблема оказалась в том, что systemd искал pid процесса в другом месте, чем named.conf его помещал:
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";
}
Вы можете проверить свою конфигурацию named.conf с помощью команды named-checkconf.
named-checkconf /etc/named.conf
Если эта команда не выводит никаких результатов, ваша конфигурация named.conf подходит.
Если есть ошибка, вы увидите ссылку на нее.