systemctl을 사용할 때 named가 시작되지 않습니다


9

Fedora 18 Raspberry Pi 스핀에서 systemd를 사용하기 시작하는 데 문제가 있습니다. 시작한 다음 잠시 후 시간 초과가 발생하여 실패합니다. 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 파일을 읽으려고했기 때문에 메시지가 throw되었다고 생각했는데 그 후에 오류가 표시되지 않아 결국 성공적으로 읽은 것으로 나타났습니다. 영어를 읽어 줘서 바보 야 사실, named기록하는 pid/var/run/named/named.pid의해 읽을되지 않은, systemctl(또는 systemd), 지금.

PIDFile을 변경하고 named.service시작합니다. 즐거움.


답변 감사합니다. 내가 그만 뒀다.
vonbrand

1
/ var / run은 / run에 대한 심볼릭 링크 여야합니다.
CameronNemo

아, 리눅스 차질과 리눅스 배포판과 패키지 개발에 관한 많은 성가신 일 중 하나는 내가 싫어하는 것입니다. / run은 / var / run이있을 때 중복됩니다. 여기서 pid 파일과 같은 변수가있는 곳이 있어야합니다.
mike fratto

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.