Ответы:
В обычной конфигурации Ubuntu Destktop dnsmasq
вызывается через NetworkManager и может быть перезапущен путем перезапуска network-manager
службы, т.е.
$ pstree -sp $(pidof dnsmasq)
init(1)───NetworkManager(7731)───dnsmasq(7743)
$
$ sudo service network-manager restart
network-manager stop/waiting
network-manager start/running, process 7940
$
$ pstree -sp $(pidof dnsmasq)
init(1)───NetworkManager(7940)───dnsmasq(7953)
sudo systemctl restart network-manager.service
.
service network-manager restart
все еще работает, хотя .. Потому что service
может обрабатывать некоторые команды systemd.
Просто запустите эту команду:
sudo /etc/init.d/dnsmasq restart
Просто перезапуск сетевого менеджера у меня не работает (так как в новой настройке DNS не используется).
$ ps aux | grep dns
libvirt+ 2217 0.0 0.0 28200 668 ? S May30 0:00 /usr/sbin/dnsmasq --conf-file=/var/lib/libvirt/dnsmasq/default.conf
nobody 17685 0.1 0.0 32604 1560 ? S 14:39 0:01 /usr/sbin/dnsmasq --no-resolv --keep-in-foreground --no-hosts --bind-interfaces --pid-file=/run/sendsigs.omit.d/network-manager.dnsmasq.pid --listen-address=127.0.1.1 --conf-file=/var/run/NetworkManager/dnsmasq.conf --cache-size=0 --proxy-dnssec --enable-dbus=org.freedesktop.NetworkManager.dnsmasq --conf-dir=/etc/NetworkManager/dnsmasq.d
Тогда вот вам нужно запустить:
sudo kill 17685
Потом наконец
sudo service network-manager restart
Это касается и новых настроек dnsmasq.
Кажется, у меня есть два экземпляра dnsmasq
запуска на моем Ubuntu 12.04. Следующее, кажется, работает, чтобы перезапустить их обоих:
$ sudo service network-manager restart
$ sudo stop lxc-net; sudo start lxc-net
Пример результата:
$ for p in $(pgrep dnsmasq); do pstree -spu $p; done
init(1)───NetworkManager(19343)───dnsmasq(19417,nobody)
init(1)───dnsmasq(19623,lxc-dnsmasq)
$ sudo service network-manager restart
network-manager stop/waiting
network-manager start/running, process 20048
$ for p in $(pgrep dnsmasq); do pstree -spu $p; done
init(1)───dnsmasq(19623,lxc-dnsmasq)
init(1)───NetworkManager(20048)───dnsmasq(20066,nobody)
$ sudo stop lxc-net; sudo start lxc-net
lxc-net stop/waiting
lxc-net start/running
$ for p in $(pgrep dnsmasq); do pstree -spu $p; done
init(1)───NetworkManager(20048)───dnsmasq(20066,nobody)
init(1)───dnsmasq(20262,lxc-dnsmasq)
lxc-net
Рестарт обсуждается здесь:
https://bugs.launchpad.net/ubuntu/+source/lxc/+bug/1043588