---
name: "kresd.systemd"
section: "7"
platform: "linux"
package: "knot-resolver"
version: "5.7.5-1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/kresd.systemd"
---

# kresd.systemd(7)

managing Knot Resolver 5.7.5 through systemd.

## NAME

kresd.systemd - managing Knot Resolver 5.7.5 through systemd.

## SYNOPSIS

```
kresd@.service
kresd.target
system-kresd.slice
```

## DESCRIPTION

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

**QUICKSTART**

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

**CONCURRENT DAEMONS**

**kresd** daemon can be executed in multiple independent processes, which are managed with **systemd** via systemd templates (see [**systemd.unit**(5)](/systemd.unit/5.md)). 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*).

## EXAMPLES

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 *kresd.target*:

```
systemctl start kresd.target
```

## SEE ALSO

*[kresd(8)](/kresd/8.md)*, *[systemd.unit(5)](/systemd.unit/5.md)*, *https://knot-resolver.readthedocs.io/en/v5.7.5/*

## AUTHORS

**kresd** developers are mentioned in the AUTHORS file in the distribution.
