また、現在実行されたユニットの一覧は systemctl をオプション無し実行するか、list-units を実行します。type を
指定してユニットを表示することも可能です。
% systemctl list-units
UNIT LOAD ACTIVE SUB DESCRIPTION
proc-sys-fs-binfmt_misc.automount loaded active waiting Arbitrary E...
sys-devices-pci0000:00-0000:00:03.0-sound-card0.device loaded active plugged /sys/device...
sys-devices-pci0000:00-00...4.0-usb1-1\x2d4-1\x2d4:1.0-bluetooth-hci0.device loaded active plugged /sys/device...
sys-devices-pci0000:00-0000:00:16.3-tty-ttyS0.device loaded active plugged Lynx Point-...
sys-devices-pci0000:00-0000:00:19.0-net-eth0.device loaded active plugged Ethernet Co...
sys-devices-pci0000:00-0000:00:1b.0-sound-card1.device loaded active plugged Lynx Point-...
sys-devices-pci0000:00-0000:00:1c.2-0000:02:00.0-net-wlan0.device loaded active plugged Dual Band W...
...
% systemctl list-units --type=socket
UNIT LOAD ACTIVE SUB DESCRIPTION
acpid.socket loaded active listening ACPID Listen Socket
avahi-daemon.socket loaded active listening Avahi mDNS/DNS-SD Stack Activation Socket
cups.socket loaded active listening CUPS Printing Service Sockets
dbus.socket loaded active running D-Bus System Message Bus Socket
lvm2-lvmetad.socket loaded active listening LVM2 metadata daemon socket
syslog.socket loaded active running Syslog Socket
systemd-initctl.socket loaded active listening /dev/initctl Compatibility Named Pipe
systemd-journald.socket loaded active running Journal Socket
systemd-shutdownd.socket loaded active listening Delayed Shutdown Socket
systemd-udevd-control.socket loaded active running udev Control Socket
systemd-udevd-kernel.socket loaded active running udev Kernel Socket
virtlockd.socket loaded active listening Virtual machine lock manager socket
4.4.2 で、dnsmasq は?
起動途中の tree は以下の通りです:
...
811 ? Ss 0:00 /bin/sh /etc/init.d/dnsmasq systemd-start-resolvconf
821 ? S 0:00 \_ run-parts --arg=-a --arg=lo.dnsmasq /etc/resolvconf/update.d
863 ? S 0:00 \_ run-parts /etc/resolvconf/update-libc.d
901 ? S 0:00 \_ /bin/sh /etc/resolvconf/update-libc.d/squid3
902 ? S 0:00 \_ /bin/sh /usr/sbin/invoke-rc.d squid3 reload
936 ? S 0:00 \_ systemctl reload squid3.service
...
さて...
% cat /etc/resolvconf/update-libc.d/squid3
#!/bin/sh
PATH="/usr/sbin:/usr/bin:/sbin:/bin"
# Make squid aware of changes to resolv.conf
invoke-rc.d squid3 reload || true
invoke-rc.d の呼び出しは systemctl に行っているわけですが、ここで止まっているように見えます。dnsmasq,
resolvconf, squid3 の状況を見てみましょう。
% systemctl status dnsmasq
dnsmasq.service - A lightweight DHCP and caching DNS server
Loaded: loaded (/lib/systemd/system/dnsmasq.service; enabled)
Drop-In: /run/systemd/generator/dnsmasq.service.d
└─ 50-dnsmasq-$named.conf, 50-insserv.conf-$named.conf
...
ユニットファイルの中身は以下:
% cat /lib/systemd/system/dnsmasq.service | grep -v ^# | sed ’/^$/d’
[Unit]
Description=A lightweight DHCP and caching DNS server
[Service]
Type=dbus
BusName=uk.org.thekelleys.dnsmasq
ExecStartPre=/usr/sbin/dnsmasq --test
ExecStart=/etc/init.d/dnsmasq systemd-exec
ExecStartPost=/etc/init.d/dnsmasq systemd-start-resolvconf
ExecStop=/etc/init.d/dnsmasq systemd-stop-resolvconf
ExecReload=/bin/kill -HUP $MAINPID
[Install]
WantedBy=multi-user.target
dnsmasq は dbus 経由で起動されているようです。
13