Ich habe gestern ein neues Update eingespielt (das letzte davor war im November 2021). Was ansonsten immer anstandslos durchlief, endete gestern mit der Meldung
Unable to complete update, please contact Pi-hole Support
Pi-hole status zeigte dann auch, dass es keinen DNS Service gab und dem entsprechend auch kein Blocking.
Die Fehler-Meldung läßt leider offen, ob das Update komplett eingespielt worden ist oder noch Teile fehlen. Hier könnte man noch etwas verbessern.
Der Fehler war schnell gefunden. Dnsmasq mag es nicht, wenn eine Option, die nur einmal angegeben werden darf, ein zweites Mal erscheint. In dem Fall startet dnsmasq einfach nicht.
Das war auch hier der Fall. Wenn man bei Pi-hole dnsmasq-logging aktiviert, dann erzeugt Pi-hole in der Datei /etc/dnsmasq.d/01-pihole.conf die Einträge
log-queries
log-facility=/var/log/pihole.log
Um die Schreib-Operation auf die SD-Card meines RPI3B zu reduzieren, habe ich den Eintrag log-facility auskommentiert und in einer eigenen Datei /etc/dnsmasq.d/50-logging.conf die Log-Datei neu definiert:
log-facility=/tmp/pihole/pihole.log
Durch den Update-Prozess erschien aber in der /etc/dnsmasq.d/01-pihole.conf wieder der Eintrag
log-facility=/var/log/pihole.log
Damit gab es zwei Einträge log-facility und prompt weigerte sich dnsmasq zu starten. Folglicherweise auch kein DNS-Service und Blocking.
Ich schlage daher vor, dass man die dnsmasq-Log-Datei als Parameter angeben kann (entweder in der Datei /etc/pihole/pihole-FTL.conf oder /etc/pihole/setupVars.conf), z.B. wie bei LOGFILE=/tmp/pihole/pihole-FTL.log. Pi-hole könnte dann einen entsprechenden Eintrag in der /etc/dnsmasq.d/01-pihole.conf erzeugen. Ein Re-Start von dnsmasq würde dann aus den oben angeführten Gründen nicht mehr scheitern und der Update-Prozess keine kaputte Konfiguration hinterlassen.
Generell gesprochen halte ich das Update-Verhalten von Pi-hole für alles andere als smart und benutzer-freundlich: bestehende Konfigurationsdateien werden ohne Nachfrage einfach überschrieben. Damit werden alle vom Benutzer gemachte Anpassungen zunichte gemacht.
Dabei zeigt das Programm apt (inkl. seiner Verwandten apt-get oder aptitude) wie man es besser machen kann: findet apt eine modifizierte Konfiguarationsdatei, dann fragt es nach und bietet mehrere Optionen an, wie weiter zu verfahren ist. Ich schlage daher vor, bei einem Pihole Update ähnlich zu verfahren.