diff --git a/README b/README deleted file mode 100644 index 1a1fa64e9e0ddbed03f0c774aaf3557c1ee8a7f7..0000000000000000000000000000000000000000 --- a/README +++ /dev/null @@ -1,89 +0,0 @@ -Requirements -============ - -./doc/requirements.rst - -Installation -============ - -./doc/installation.rst - -1) Install prerequisites - -Debian based distributions --------------------------- -Update the system: -$ sudo apt-get update -$ sudo apt-get upgrade - -Install prerequisites: -$ sudo apt-get install \ - libtool autoconf make pkg-config liburcu-dev libgnutls28-dev libedit-dev liblmdb-dev - -Install optional packages: -$ sudo apt-get install \ - libcap-ng-dev libsystemd-dev libidn2-0-dev protobuf-c-compiler libfstrm-dev libmaxminddb-dev - -Fedora like distributions -------------------------- -Update the system: -# dnf upgrade - -Install basic development tools: -# dnf install @buildsys-build - -Install prerequisites: -# dnf install \ - libtool autoconf pkgconfig automake userspace-rcu-devel gnutls-devel libedit-devel lmdb-devel - -Install optional packages: -# dnf install \ - libcap-ng-devel systemd-devel libidn2-devel protobuf-c-devel fstrm-devel libmaxminddb-devel - -When compiling on RHEL based system, the Fedora EPEL repository has to be -enabled. Also for RHEL 6, forward compatibility package gnutls30-devel -with newer GnuTLS is required instead of gnutls-devel. - -2) Install Knot DNS - -Get the source code: -$ git clone https://gitlab.labs.nic.cz/knot/knot-dns.git -Or extract source package to knot-dns directory - -Compile Knot -$ cd knot-dns -$ autoreconf -if -$ ./configure -$ make - -Install Knot DNS into system: -$ sudo make install -$ sudo ldconfig - -Running -======= - -./doc/operation.rst - -1) Each server needs configuration file. Please see samples/knot.sample.conf, -project documentation, or man 5 knot.conf for more details. -Configuration file has to specify: -- storage for PID files, journal and timer databases etc. -- network interfaces -- served zones - -E.g. use the default config file: -$ cd /etc/knot -$ mv knot.sample.conf knot.conf -Modify the config: -$ editor knot.conf - -2) Prepare working directory -$ mv example.com.zone /var/lib/knot/ - -3) Start the server. This can be done by running the 'knotd' command. -Alternatively, your distribution should have an init script available, if you've -installed Knot using a binary package. - -Start Knot in the foreground to see if it runs: -$ knotd -c myserver.conf diff --git a/README.md b/README.md new file mode 100644 index 0000000000000000000000000000000000000000..533d073c327bf2b8769b67912f7cc0300f28004d --- /dev/null +++ b/README.md @@ -0,0 +1,118 @@ +# Requirements + +`./doc/requirements.rst` + +# Installation + +`./doc/installation.rst` + +## 1. Install prerequisites + +### Debian based distributions + +#### Update the system: +```bash +sudo apt-get update +sudo apt-get upgrade +``` + +#### Install prerequisites: +```bash +sudo apt-get install \ + libtool autoconf automake make pkg-config liburcu-dev libgnutls28-dev libedit-dev liblmdb-dev +``` + +#### Install optional packages: +```bash +sudo apt-get install \ + libcap-ng-dev libsystemd-dev libidn2-0-dev protobuf-c-compiler libfstrm-dev libmaxminddb-dev +``` + +### Fedora like distributions + +#### Update the system: +```bash +dnf upgrade +``` + +#### Install basic development tools: +```bash +dnf install @buildsys-build +``` + +#### Install prerequisites: +```bash +dnf install \ + libtool autoconf automake pkgconfig userspace-rcu-devel gnutls-devel libedit-devel lmdb-devel +``` + +#### Install optional packages: +```bash +dnf install \ + libcap-ng-devel systemd-devel libidn2-devel protobuf-c-devel fstrm-devel libmaxminddb-devel +``` + +When compiling on RHEL based system, the Fedora EPEL repository has to be +enabled. Also for RHEL 6, forward compatibility package gnutls30-devel +with newer GnuTLS is required instead of gnutls-devel. + +## 2. Install Knot DNS + +Get the source code: +```bash +git clone https://gitlab.labs.nic.cz/knot/knot-dns.git +``` +Or extract source package to knot-dns directory. + +Compile the source code: +```bash +cd knot-dns +autoreconf -if +./configure +make +``` + +Install Knot DNS into system: +```bash +sudo make install +sudo ldconfig +``` + +# Running + +### 1. Ensure some configuration + +`./doc/configuration.rst` + +Please see samples/knot.sample.conf, project documentation, +or `man 5 knot.conf` for more details. Basically the configuration should specify: +- network interfaces +- served zones + +E.g. use the default configuration file: +```bash +cd /etc/knot +mv knot.sample.conf knot.conf +``` +Modify the configuration file: +```bash +editor knot.conf +``` + +### 2. Prepare working directory + +```bash +mv example.com.zone /var/lib/knot/ +``` + +### 3. Start the server + +`./doc/operation.rst` + +This can be done by running the `knotd` command. Alternatively, your distribution +should have an init script available, if you installed Knot DNS from a binary package. + +Start the server in foreground to see if it runs: +```bash +knotd -c /etc/knot/knot.conf +```