<div dir="ltr">Many thanks. I'm doing something wrong as I got a malformed entry. Here's what I did:<div><br></div><div>1) I went with the purge autoremove:</div><div><br></div><blockquote style="margin:0 0 0 40px;border:none;padding:0px"><div><font face="monospace"># apt-get --purge autoremove pdns-server pdns-backend-mysql</font></div><div><font face="monospace">Reading package lists... Done</font></div><div><font face="monospace">Building dependency tree</font></div><div><font face="monospace">Reading state information... Done</font></div><div><font face="monospace">The following packages will be REMOVED:</font></div><div><font face="monospace"> libboost-program-options1.71.0* libmysqlclient21* pdns-backend-bind* pdns-backend-mysql* pdns-server*</font></div><div><font face="monospace">0 upgraded, 0 newly installed, 5 to remove and 13 not upgraded.</font></div><div><font face="monospace">After this operation, 21.8 MB disk space will be freed.</font></div><div><font face="monospace">Do you want to continue? [Y/n] Y</font></div><div><font face="monospace">(Reading database ... 116529 files and directories currently installed.)</font></div><div><font face="monospace">Removing pdns-backend-bind (4.2.1-1build2) ...</font></div><div><font face="monospace">Removing pdns-backend-mysql (4.2.1-1build2) ...</font></div><div><font face="monospace">Removing pdns-server (4.2.1-1build2) ...</font></div><div><font face="monospace">Removing libboost-program-options1.71.0:amd64 (1.71.0-6ubuntu6) ...</font></div><div><font face="monospace">Removing libmysqlclient21:amd64 (8.0.23-0ubuntu0.20.04.1) ...</font></div><div><font face="monospace">Processing triggers for man-db (2.9.1-1) ...</font></div><div><font face="monospace">Processing triggers for libc-bin (2.31-0ubuntu9.2) ...</font></div><div><font face="monospace">(Reading database ... 116476 files and directories currently installed.)</font></div><div><font face="monospace">Purging configuration files for pdns-backend-bind (4.2.1-1build2) ...</font></div><div><font face="monospace">dpkg: warning: while removing pdns-backend-bind, directory '/etc/powerdns/pdns.d' not empty so not removed</font></div><div><font face="monospace">Purging configuration files for pdns-server (4.2.1-1build2) ...</font></div><div><font face="monospace">dpkg: warning: while removing pdns-server, directory '/etc/powerdns' not empty so not removed</font></div><div><font face="monospace">Processing triggers for systemd (245.4-4ubuntu3.6) ...</font></div></blockquote><div><br></div><div>2) I then created the suggested files (using your suggested focal-auth-44):</div><div><br></div><div><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><font face="monospace">Create the file: '/etc/apt/sources.list.d/pdns.list' with this content:</font><font face="monospace"><br></font></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><font face="monospace">deb [arch=amd64] <a href="http://repo.powerdns.com/ubuntu" target="_blank">http://repo.powerdns.com/ubuntu</a> focal-auth-44<br><br></font></blockquote></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><font face="monospace">Created the file: '/etc/apt/preferences.d/pdns':</font><font face="monospace"><br></font></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><font face="monospace">Package: pdns-*</font></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><font face="monospace">Pin: origin <a href="http://repo.powerdns.com/" target="_blank">repo.powerdns.com</a></font></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><font face="monospace">Pin-Priority: 600<br><br></font></blockquote></blockquote><div>3) I then executed the update & install, getting the malformed entry:</div><div><br></div></div><blockquote style="margin:0 0 0 40px;border:none;padding:0px"><div><div><font face="monospace"># curl <a href="https://repo.powerdns.com/CBC8B383-pub.asc">https://repo.powerdns.com/CBC8B383-pub.asc</a> | sudo apt-key add - &&</font></div></div><div><div><font face="monospace">> sudo apt-get update &&</font></div></div><div><div><font face="monospace">> sudo apt-get install pdns-server pdns-backend-mysql</font></div></div><div><div><font face="monospace"> % Total % Received % Xferd Average Speed Time Time Time Current</font></div></div><div><div><font face="monospace"> Dload Upload Total Spent Left Speed</font></div></div><div><div><font face="monospace">100 1682 100 1682 0 0 1990 0 --:--:-- --:--:-- --:--:-- 1988</font></div></div><div><div><font face="monospace">OK</font></div></div><div><div><font face="monospace">E: Malformed entry 1 in list file /etc/apt/sources.list.d/pdns.list (Component)</font></div></div><div><div><font face="monospace">E: The list of sources could not be read.</font></div></div></blockquote><div><div><br></div><div>4) Not being sure of what to do, I checked on the website <a href="https://repo.powerdns.com/ubuntu/">https://repo.powerdns.com/ubuntu/</a> and noticed it is actually <a href="https://repo.powerdns.com/ubuntu/dists/">https://repo.powerdns.com/ubuntu/dists/</a>. So I modified the content of /etc/apt/sources.list.d/pdns.list:</div><div><br></div></div><blockquote style="margin:0 0 0 40px;border:none;padding:0px"><div><div><font face="monospace">deb [arch=amd64] <a href="http://repo.powerdns.com/ubuntu/dists/focal-auth-44">http://repo.powerdns.com/ubuntu/dists/focal-auth-44</a></font></div></div></blockquote><div><div><br></div><div>- and ran it again - still got a:</div><div><br></div></div><blockquote style="margin:0 0 0 40px;border:none;padding:0px"><font face="monospace">E: Malformed entry 1 in list file /etc/apt/sources.list.d/pdns.list (Suite)</font><br></blockquote><div><div><br></div><div>I do not understand what to do here. Looking at the website, should I be using:</div><div><br></div></div><blockquote style="margin:0 0 0 40px;border:none;padding:0px"><div><div><font face="monospace"><a href="https://repo.powerdns.com/ubuntu/dists/focal-auth-44/main/binary-amd64/Packages">https://repo.powerdns.com/ubuntu/dists/focal-auth-44/main/binary-amd64/Packages</a></font></div></div></blockquote><div><div><br></div><div>Also intrigued why we are using <a href="https://repo.powerdns.com/ubuntu/dists/focal-auth-44/">https://repo.powerdns.com/ubuntu/dists/focal-auth-44/</a> and not <a href="https://repo.powerdns.com/ubuntu/dists/focal-auth-master/">https://repo.powerdns.com/ubuntu/dists/focal-auth-master/</a> - maybe because it was just listed today? So what exactly does the content of the /etc/apt/sources.list.d/pdns.list file need to be?</div><div><br></div><div>5) Just to have a semi-functional pdns server, I removed the two files and reinstalled 4.2.1:</div><div><br></div></div><blockquote style="margin:0 0 0 40px;border:none;padding:0px"><div><div><font face="monospace">sudo apt update && </font><font face="monospace">sudo apt install pdns-server pdns-backend-mysql -y</font></div></div></blockquote><div><div><br></div><div>Many thanks in advance.</div><div><br></div><div><br clear="all"><div><div dir="ltr" class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div style="font-family:arial;font-size:small"><div>Steve Garner</div><div>+1 302 364 0325<br></div><div><a href="mailto:stevenjgarner@gmail.com" style="color:rgb(17,85,204)" target="_blank">stevenjgarner@gmail.com</a></div></div></div></div></div></div></div></div></div><br></div></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Fri, May 7, 2021 at 12:09 PM Brian Candler <<a href="mailto:b.candler@pobox.com">b.candler@pobox.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<div>
<div>On 07/05/2021 11:35, Steven Garner
wrote:<br>
</div>
<blockquote type="cite">
<div dir="ltr"> I thought the best practice to ensure current
software on Ubuntu was to use apt, first to update and then to
install:<br>
<br>
<blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><font face="monospace">sudo apt update<br>
</font><font face="monospace">sudo apt install pdns-server
pdns-backend-mysql -y</font></blockquote>
<br>
</div>
</blockquote>
<p>That gives you some version which has probably percolated down
from the Debian repositories, and could be very old and stale. In
the case of Ubuntu 16.04 they published an alpha version
(4.0.0~alpha2) with significant bugs, and never updated it to the
release.</p>
<p>So you're much better off getting the packages from the powerdns
repo.<br>
</p>
<p><br>
</p>
<blockquote type="cite">
<div dir="ltr"><br>
<br>
I understand from your referenced documentation (<a href="https://repo.powerdns.com/" target="_blank">https://repo.powerdns.com/</a>),
that the preferred installation method for "PowerDNS
Authoritative Server - master branch" on Ubuntu 20.04 "Focal
Fossa" is to:<br>
<br>
<blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><font face="monospace">Create the file
'/etc/apt/sources.list.d/pdns.list' with this content:</font><font face="monospace"><br>
</font></blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px">
<blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><font face="monospace">deb [arch=amd64] <a href="http://repo.powerdns.com/ubuntu" target="_blank">http://repo.powerdns.com/ubuntu</a>
bionic-auth-master main<br>
<br>
</font></blockquote>
</blockquote>
</div>
</blockquote>
<p>Two problems with that.<br>
</p>
<p>1. The master branch is the development tip. Only use this if
you're participating in the development of the *next* release
(e.g. testing new features). Don't use it in production: you need
to choose the 44 branch.</p>
<p>2. Ubuntu 20.04 is "focal", not "bionic".</p>
<p>So the branch you want is focal-auth-44<br>
</p>
<p><br>
</p>
<blockquote type="cite">
<div dir="ltr"><br>
There is nothing there about installing the preferred backend,
but would I be correct in assuming I could extend that last line
to read:<br>
<br>
<blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><font face="monospace">sudo apt install pdns-server
pdns-backend-mysql</font></blockquote>
</div>
</blockquote>
<p><br>
</p>
<p>Yes - the repo has the backend packages too.</p>
<p><br>
</p>
<blockquote type="cite">
<div dir="ltr">I find the documentation on upgrading pdns (<a href="https://doc.powerdns.com/authoritative/upgrading.html" target="_blank">https://doc.powerdns.com/authoritative/upgrading.html</a>)
to be highly contextual and difficult to follow, in that there
does not appear to be procedures set forth to actually upgrade
any distribution.<br>
<br>
So instead of upgrading, do I first uninstall, remove and purge
the old pdns 4.2.1 installation and then follow the installation
of the latest master branch above?<br>
<br>
<blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><font face="monospace">apt-get --purge autoremove pdns-server
pdns-backend-mysql </font></blockquote>
</div>
</blockquote>
<p>It doesn't really matter. After adding the new repo, a simple</p>
<p>apt-get update<br>
apt-get dist-upgrade</p>
<p>will install the newer packages. It will be up to you to ensure
the configs are valid for the new version, but they usually are
(and you can compare with the .dpkg-dist files to see what's new)<br>
</p>
<p>If you prefer to purge and reinstall, that's fine too.<br>
</p>
<blockquote type="cite">
<div dir="ltr"><br>
I'm assuming as a backend, the apt-updated version of MySQL is
adequate:<br>
<br>
<blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><font face="monospace">mysql Ver 8.0.23-0ubuntu0.20.04.1 for
Linux on x86_64 ((Ubuntu))</font></blockquote>
<br>
... where all the domain and record information will persist.<br>
<br>
</div>
</blockquote>
<p>I don't use mysql with pdns, but I suggest you read the release
notes and look for provisos for Mysql 8, for example:</p>
<p><a href="https://doc.powerdns.com/authoritative/upgrading.html#mysql-character-set-detection" target="_blank">https://doc.powerdns.com/authoritative/upgrading.html#mysql-character-set-detection</a><br>
</p>
<p>Regards,</p>
<p>Brian.<br>
</p>
</div>
</blockquote></div>