Scroll to navigation

kresd.systemd(7) Knot Resolver 5.2.0 Systemd Units kresd.systemd(7)


kresd.systemd - managing Knot Resolver 5.2.0 through systemd.




This manual page describes how to manage kresd using systemd units.


systemctl start kresd@1 - single instance of kresd, responding on localhost


kresd daemon can be executed in multiple independent processes, which are managed with systemd via systemd templates (see systemd.unit(5)). Each systemd service instance of kresd (kresd@.service) represents a single, independent kresd process.

If you have more than one CPU core available, a single running kresd daemon will only be able to make use of one core at a time, leaving the other cores idle. If you want kresd to take advantage of all available cores, while sharing both cache and sockets, you should enable and start as many instances of the kresd@.service as you have cores. Typically, each instance is just named kresd@N.service, where N is a decimal number. For example, to enable and start 3 concurrent daemons:

systemctl enable --now kresd@1.service kresd@2.service kresd@3.service

The systemd-managed kresd service set is grouped in the system-kresd.slice slice. The slice includes all running daemons (instances of kresd@.service).


To start a single kresd instance and enable it at boot:
systemctl enable --now kresd@1.service

To restart (or stop) all running instances, you can use a glob expression. Please note that glob can't be used to start or enable instances.

systemctl restart 'kresd@*'

Bash users can also use Brace Expansion to enable or start multiple instances, instead of listing them manually.

systemctl enable --now kresd@{1..4}.service

To start all enabled kresd daemons, you can also use the provided

systemctl start


kresd(8), systemd.unit(5),


kresd developers are mentioned in the AUTHORS file in the distribution.
2020-11-11 CZ.NIC