when bind named service hasn’t started after OpenSuSE Tumbleweed boots
Posted by jpluimers on 2018/08/20
A while ago, named would not start any more after I rebooted my Tumbleweed systems.
I had this behaviour on multiple systems, each installed quite a while ago and kept up-to-date with zypper dist-upgrade
so it looked like a systematic issue.
Below are steps in researching the problem together with the helpful people on the IRC channel opensuse-factory
.
Background reading for some of the commands: [WayBack] How To Use Systemctl to Manage Systemd Services and Units | DigitalOcean.
Both systemctl status named.service
and systemctl status named
would show the same output:
# systemctl status named ● named.service - LSB: Domain Name System (DNS) server, named Loaded: loaded (/etc/init.d/named; generated; vendor preset: disabled) Active: inactive (dead) Docs: man:systemd-sysv-generator(8)
Getting the log from events around a reboot would show a successful shutdown, but no start:
# journalctl --unit named --catalog --pager-end
Apr 28 13:19:27 laurel systemd[1]: Stopping LSB: Domain Name System (DNS) server, named... -- Subject: Unit named.service has begun shutting down -- Defined-By: systemd -- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel -- -- Unit named.service has begun shutting down. Apr 28 13:19:28 laurel named[20360]: no longer listening on 192.168.124.27#53 Apr 28 13:19:28 laurel named[20360]: no longer listening on 192.168.124.27#53 Apr 28 13:19:32 laurel named[20360]: received control channel command 'stop' Apr 28 13:19:32 laurel named[20360]: shutting down: flushing changes Apr 28 13:19:32 laurel named[20360]: stopping command channel on 127.0.0.1#953 Apr 28 13:19:32 laurel named[20360]: no longer listening on ::#53 Apr 28 13:19:32 laurel named[20360]: no longer listening on ::#53 Apr 28 13:19:32 laurel named[20360]: no longer listening on 127.0.0.1#53 Apr 28 13:19:32 laurel named[20360]: no longer listening on 127.0.0.1#53 Apr 28 13:19:32 laurel named[20360]: exiting Apr 28 13:19:34 laurel named[30705]: Shutting down name server BIND waiting for named to shut down ..done Apr 28 13:19:34 laurel systemd[1]: Stopped LSB: Domain Name System (DNS) server, named. -- Subject: Unit named.service has finished shutting down -- Defined-By: systemd -- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel -- -- Unit named.service has finished shutting down.
Similar results in these files:
/var/lib/named/log/general.log
28-Apr-2017 13:19:32.465 general: shutting down: flushing changes
28-Apr-2017 13:19:32.468 general: stopping command channel on 127.0.0.1#953
28-Apr-2017 13:19:32.622 general: exiting
/var/lib/named/log/named.log
28-Apr-2017 13:19:32.489 network: no longer listening on ::#53
28-Apr-2017 13:19:32.489 network: no longer listening on 127.0.0.1#53
With systemctl
, I got this:
# systemctl is-enabled named named.service is not a native service, redirecting to systemd-sysv-install. Executing: /usr/lib/systemd/systemd-sysv-install is-enabled named enabled # systemctl is-active named inactive # systemctl is-failed named inactive
After this, I was out of systemd
and sysv
knowledge, so I asked for help on the #openSUSE-factory IRC channel, where ismail was of great help.
After editing this file: /run/systemd/generator.late/named.service
, the situation did not change: the file got regenerated during boot:
# Automatically generated by systemd-sysv-generator [Unit] Documentation=man:systemd-sysv-generator(8) SourcePath=/etc/init.d/named Description=LSB: Domain Name System (DNS) server, named Before=nss-lookup.target After=network-online.target After=ldap.service Wants=nss-lookup.target Wants=network-online.target [Service] Type=forking Restart=no TimeoutSec=5min IgnoreSIGPIPE=no KillMode=process GuessMainPID=no RemainAfterExit=yes SuccessExitStatus=5 6 ExecStart=/etc/init.d/named start ExecStop=/etc/init.d/named stop ExecReload=/etc/init.d/named reload
Suggestions on the IRC channel indicated these might be related:
- [Archive.is] Bug 1036630 – [Build 20170425] openQA test fails in yast2_dns_server: saving the configuration failed
- [Archive.is] Bug 1037012 – Service doesn’t start because of unknown runlevel
- [WayBack] https://build.opensuse.org/request/show/482314
The suggested rpm and zypper history from [WayBack] I would like to see a list of updates installed on a certain date in a local openSUSE 12.1’s YaST2. didn’t reveal anything wrong.
A workaround was suggested on IRC: start named in /etc/init.d/after.local
:
# Author: Werner Fink, 2010 # # /etc/init.d/after.local # # script with local commands to be executed from init after all scripts # of a runlevel have been executed. # # Here you should add things, that should happen directly after # runlevel has been reached. # # Please note that the use of this script is deprecated and should be # avoided for starting commands. You should consider creating a dedicated # systemd service instead. # systemctl start named.service
This reminded I mentioned that script in Easy Running of Scripts at Boot and Shutdown – SUSE Blog | SUSE Communities.
It worked: after a reboot, named was started:
# rcnamed status Checking for nameserver BIND version: BIND 9.10.4-P5 boot time: Fri, 28 Apr 2017 16:06:58 GMT last configured: Fri, 28 Apr 2017 16:06:58 GMT CPUs found: 1 worker threads: 1 UDP listeners per interface: 1 number of zones: 103 debug level: 0 xfers running: 0 xfers deferred: 0 soa queries in progress: 0 query logging is OFF recursive clients: 0/0/1000 tcp clients: 0/100 server is up and running running ● named.service - LSB: Domain Name System (DNS) server, named Loaded: loaded (/etc/init.d/named; generated; vendor preset: disabled) Active: active (running) since Fri 2017-04-28 18:06:59 CEST; 2min 15s ago Docs: man:systemd-sysv-generator(8) Process: 1101 ExecStart=/etc/init.d/named start (code=exited, status=0/SUCCESS) CGroup: /system.slice/named.service └─1323 /usr/sbin/named -t /var/lib/named -u named
—jeroen
# systemctl status named | |
● named.service – LSB: Domain Name System (DNS) server, named | |
Loaded: loaded (/etc/init.d/named; generated; vendor preset: disabled) | |
Active: inactive (dead) | |
Docs: man:systemd-sysv-generator(8) |
# journalctl –unit named –catalog –pager-end | |
Apr 28 13:19:27 laurel systemd[1]: Stopping LSB: Domain Name System (DNS) server, named… | |
— Subject: Unit named.service has begun shutting down | |
— Defined-By: systemd | |
— Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel | |
— | |
— Unit named.service has begun shutting down. | |
Apr 28 13:19:28 laurel named[20360]: no longer listening on 192.168.124.27#53 | |
Apr 28 13:19:28 laurel named[20360]: no longer listening on 192.168.124.27#53 | |
Apr 28 13:19:32 laurel named[20360]: received control channel command 'stop' | |
Apr 28 13:19:32 laurel named[20360]: shutting down: flushing changes | |
Apr 28 13:19:32 laurel named[20360]: stopping command channel on 127.0.0.1#953 | |
Apr 28 13:19:32 laurel named[20360]: no longer listening on ::#53 | |
Apr 28 13:19:32 laurel named[20360]: no longer listening on ::#53 | |
Apr 28 13:19:32 laurel named[20360]: no longer listening on 127.0.0.1#53 | |
Apr 28 13:19:32 laurel named[20360]: no longer listening on 127.0.0.1#53 | |
Apr 28 13:19:32 laurel named[20360]: exiting | |
Apr 28 13:19:34 laurel named[30705]: Shutting down name server BIND waiting for named to shut down ..done | |
Apr 28 13:19:34 laurel systemd[1]: Stopped LSB: Domain Name System (DNS) server, named. | |
— Subject: Unit named.service has finished shutting down | |
— Defined-By: systemd | |
— Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel | |
— | |
— Unit named.service has finished shutting down. |
/var/lib/named/log/general.log | |
28-Apr-2017 13:19:32.465 general: shutting down: flushing changes | |
28-Apr-2017 13:19:32.468 general: stopping command channel on 127.0.0.1#953 | |
28-Apr-2017 13:19:32.622 general: exiting |
/var/lib/named/log/named.log | |
28-Apr-2017 13:19:32.489 network: no longer listening on ::#53 | |
28-Apr-2017 13:19:32.489 network: no longer listening on 127.0.0.1#53 |
# systemctl is-enabled named | |
named.service is not a native service, redirecting to systemd-sysv-install. | |
Executing: /usr/lib/systemd/systemd-sysv-install is-enabled named | |
enabled | |
# systemctl is-active named | |
inactive | |
# systemctl is-failed named | |
inactive |
# systemctl cat named | |
# /run/systemd/generator.late/named.service | |
# Automatically generated by systemd-sysv-generator | |
[Unit] | |
Documentation=man:systemd-sysv-generator(8) | |
SourcePath=/etc/init.d/named | |
Description=LSB: Domain Name System (DNS) server, named | |
Before=nss-lookup.target | |
After=network-online.target | |
After=ldap.service | |
Wants=nss-lookup.target | |
Wants=network-online.target | |
[Service] | |
Type=forking | |
Restart=no | |
TimeoutSec=5min | |
IgnoreSIGPIPE=no | |
KillMode=process | |
GuessMainPID=no | |
RemainAfterExit=yes | |
SuccessExitStatus=5 6 | |
ExecStart=/etc/init.d/named start | |
ExecStop=/etc/init.d/named stop | |
ExecReload=/etc/init.d/named reload |
# zypper install etckeeper | |
# zypper install tmux | |
# zypper install joe | |
# zypper install man | |
# zypper dist-upgrade | |
# zypper install yast2-sudo | |
# zypper install nmap | |
# zypper install findutils-locate | |
# zypper install bind | |
# zypper install patterns-openSUSE-yast2_install_wf | |
# zypper install patterns-openSUSE-yast2_basis | |
# zypper install postfix | |
# zypper addrepo http://download.opensuse.org/repositories/hardware/openSUSE_Factory_ARM/hardware.repo |
Leave a Reply