<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>