named не запускается при использовании systemctl


9

У меня проблемы с получением имени, чтобы начать использовать systemd на спин-версии Fedora 18 Raspberry Pi. Он начинается, затем через несколько секунд происходит тайм-аут, и он не работает. Если я запускаю команды в named.service вручную, named запускается просто отлично. Я не знаю, какой таймаут ищет systemctl или где он вызывается. Я прочитал справочные страницы для systemctlsystemd и других, и я продолжу исследовать это, но если у кого-то есть какие-либо указания, это было бы здорово.

systemctl status named.service вывод:

named.service - Berkeley Internet Name Domain (DNS)
          Loaded: loaded (/usr/lib/systemd/system/named.service; disabled)
          Active: failed (Result: timeout) since Tue 2013-01-29 14:36:41 EST; 35min ago
         Process: 4189 ExecStart=/usr/sbin/named -u named $OPTIONS (code=exited, status=0/SUCCESS)
         Process: 4186 ExecStartPre=/usr/sbin/named-checkconf -z /etc/named.conf (code=exited, status=0/SUCCESS)
         Process: 4183 ExecStartPre=/usr/libexec/generate-rndc-key.sh (code=exited, status=0/SUCCESS)

Jan 29 14:35:12 raspi.example.com named[4191]: all zones loaded
Jan 29 14:35:12 raspi.example.com systemd[1]: PID file /run/named/named.pid not readable (yet?) after start.
Jan 29 14:35:12 raspi.example.com named[4191]: running
Jan 29 14:36:41 raspi.example.com systemd[1]: named.service operation timed out. Terminating.
Jan 29 14:36:41 raspi.example.com named[4191]: shutting down
Jan 29 14:36:41 raspi.example.com named[4191]: stopping command channel on 127.0.0.1#953
Jan 29 14:36:41 raspi.example.com named[4191]: no longer listening on 127.0.0.1#53
Jan 29 14:36:41 raspi.example.com named[4191]: exiting
Jan 29 14:36:41 raspi.example.com systemd[1]: Failed to start Berkeley Internet Name Domain (DNS).
Jan 29 14:36:41 raspi.example.com systemd[1]: Unit named.service entered failed state  

Файл named.service

[Unit]
Description=Berkeley Internet Name Domain (DNS)
Wants=nss-lookup.target
Before=nss-lookup.target
After=network.target

[Service]
Type=forking
EnvironmentFile=-/etc/sysconfig/named
Environment=KRB5_KTNAME=/etc/named.keytab
PIDFile=/run/named/named.pid
ExecStartPre=/usr/libexec/generate-rndc-key.sh
ExecStartPre=/usr/sbin/named-checkconf -z /etc/named.conf
ExecStart=/usr/sbin/named -u named $OPTIONS
ExecReload=/bin/sh -c '/usr/sbin/rndc reload > /dev/null 2>&1 || /bin/kill -HUP $MAINPID'
ExecStop=/bin/sh -c '/usr/sbin/rndc stop > /dev/null 2>&1 || /bin/kill -TERM $MAINPID'
PrivateTmp=true
[Install]
WantedBy=multi-user.target

Ответы:


8

Ответил.

Это была строка:

PID-файл /run/named/ named.pid недоступен для чтения (пока?) После запуска.

(Еще?) Бросил меня. Я думал, что сообщение было брошено, потому что он пытался прочитать PID-файл, прежде чем он был записан по имени, и так как я не увидел ошибку после этого, я решил, что в конечном итоге он прочитал его успешно. Глупый я за чтение английского. На самом деле, namedпишет pidк /var/run/named/named.pid, который не читается systemctl(или Systemd), когда - либо.

Поменял PIDFile named.serviceи он запускается. Радость.


Отлично, спасибо за ответ. Если бы я был в тупике.
vonbrand

1
/ var / run должна быть символической
ссылкой

О, капризы Linux и одна из многих раздражающих вещей в дистрибутиве Linux и разработке пакетов, которые я ненавижу. / run является избыточным, если у вас есть / var / run, где и должно быть, куда должны идти переменные, такие как pid-файлы.
Майк Фратто

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.