named no comienza cuando se usa systemctl

9

Tengo problemas para que me nombren para comenzar a usar systemd en el spin Fedora 18 Raspberry Pi. Comienza, luego, unos momentos después, hay un tiempo de espera y falla. Si ejecuto los comandos en named.service a mano, named comienza bien. No sé cuál es el tiempo de espera que busca systemctl o dónde se invoca. He leído las páginas de manual para systemctl, systemd y otros y continuaré investigando esto, pero si alguien tiene algún indicador, sería genial.

systemctl status named.service salida:

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  

El archivo 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
Mike Fratto
fuente

Respuestas:

8

Respondido.

Esta fue la línea:

El archivo PID /run/named/named.pid no es legible (¿todavía?) Después del inicio.

El (¿todavía?) Me tiró. Pensé que el mensaje se estaba lanzando porque estaba tratando de leer el archivo PID antes de que fuera escrito por nombre y como no vi un error después de eso, pensé que eventualmente lo leería con éxito. Tonto para leer inglés. De hecho, namedescribe el pidto /var/run/named/named.pid, que no estaba siendo leído por systemctl(o systemd), nunca.

Cambió el PIDFile named.servicey se inicia. Alegría.

Mike Fratto
fuente
Genial, gracias por la respuesta. Me había dejado perplejo.
vonbrand
1
/ var / run debería ser un enlace simbólico a / run ...
CameronNemo
Ah, los caprichos de Linux y una de las muchas cosas molestas sobre la distribución de Linux y el desarrollo de paquetes que odio. / run es redundante cuando tienes / var / run, que es donde debería estar donde deberían ir cosas variables como archivos pid.
mike fratto
1
systemctl enable named 

se requiere antes

systemctl start named
Saurabh Barjatiya
fuente