Upgrading to pihole 6 broke everything, possibly did not accept setupVars.conf

Expected Behaviour:

  • Upgrade to v6 to complete successfully, and pihole to continue to work, accepting the configs i already have including the custom upstream DNS servers, and webserver settings (nginx, not lighttpd).

Actual Behaviour:

  • The upgrade itself failed.

In the middle of the upgrade, it kept waiting for resolution to work again, but it never did. I had to ctrl+c and troubleshoot why it stopped working there on.

  • GUI stopped working, gives a 404.

As far as I remember, I used nginx, not lighttpd, and I can even see that in the config.. but it looks like it reverted back to lighttpd instead, even though I have that set to false in setupVars config?! I had to stop nginx & restart pihole to get GUI to work again (via lighttpd).

  • GUI password was lost.

It wouldn't accept it any more, I had to reset it.

  • WARNING: WARNING in dnsmasq core: no upstream servers configured

I can confirm I do have upstream servers configured, but they were the 'manually configured' ones on the top right box in the DNS settings page, which does not exist any more in this version, and I believe this is the cause of everything else that failed above, including the upgrade.

  • Configs are not being read?

Refer to

# cat /etc/pihole/setupVars.conf
PIHOLE_INTERFACE=eth0
QUERY_LOGGING=true
INSTALL_WEB_SERVER=false
INSTALL_WEB_INTERFACE=true
LIGHTTPD_ENABLED=false
CACHE_SIZE=10000
DNS_FQDN_REQUIRED=false
DNS_BOGUS_PRIV=false
DNSMASQ_LISTENING=all
WEBPASSWORD=xxx
BLOCKING_ENABLED=true
DNSSEC=false
REV_SERVER=true
REV_SERVER_CIDR=192.168.1.0/24
REV_SERVER_TARGET=192.168.1.1
REV_SERVER_DOMAIN=greadly.lan
WEBUIBOXEDLAYOUT=boxed
WEBTHEME=default-dark
PIHOLE_DNS_1=94.140.14.14
PIHOLE_DNS_2=94.140.15.15

You can see this should be my config. It has upstream DNSs, it has lighttpd set to false, UI is set to default-dark, etc.. None of those are in effect when I managed to finally login.

UI now is light (not dark), custom dns settings are missing, password was incorrect... nothing in that page is as it was. It does not seem to be reading anything from my .conf file.

Summary of issues

  1. It seems like v6 is not using my setupVars config, because it did not detect my existing upstream dns servers, webserver choice, etc.

Debug Token:

during failed upgrade and when nothing was working - before I managed to restore services

https://tricorder.pi-hole.net/dYP4pmRk/

current

https://tricorder.pi-hole.net/iBAIQyb0/

Note, IPv6 not working is expected - I don't have IPv6 any more.

No.
lighttpd is gone and nginx is not used.
Now Pi-hole uses an internal web server (pihole-FTL is the new web server).

setupVars.conf and other config files are also gone.

Pi-hole v6 uses a new config file: /etc/pihole/pihole.toml.

All config options should be automatically migrated to the new config file during the upgrade.

This is shows your configuration wasn't fully migrated.

Note: you said the installation failed, but your log shows Pi-hole v6 is installed, so we don't know what happened and we can't say why your original configuration was not migrated.


Your second debug log show Pi-hole is working.

If you want to change Pi-hole to a different port (using 8888 as an example) and use nginx for other web apps in port 80, you can edit /etc/pihole/pihole.toml and change the webserver port to something like port = "8888,443s,[::]:8888,[::]:443s".

You can also access the web interface using https.

1 Like

Good to know, thanks!

Unfortunately my terminal's buffer was overwritten so I can't go as far back to show you the upgrade part. It did succeed up to a point where it was waiting on DNS resolution to respond. I forgot the actual line but it was something like "Waiting for DNS to resume......................"

And it went on and on.

I ended up running pihole -r to repair. I'm not sure if that helped or not - I was trying out several things at the same time.

On the bright side, my domains, lists etc are still there.

I'm curious, Is there any way to trigger another read of the configs? Or should I just assume it'll all work fine now and fill in the blanks with the missing configs manually ?

Ta.

Apparently it helped.
Pi-hole v6 was installed. The only issue was the old config migration.

I think the first attempt failed before the migration.
The new config file was created, but without your options.

Then, you executed pihole -r to fix the installation. The repair found the new config file and there was no attempt to migrate the config options.

I'm not sure if there is a simple way to trigger this without reinstalling everything.

I think your best option is to set the options on again, manually.

That's because your /etc/resolv.conf points to 127.0.0.1 and when FTLDNS is stopped for updates you have no DNS Resolving active :wink:

Next time just start another SSH session and change the DNS Settings of your OS and then restart the Networking or DNS Resolving Service and the pihole -up procedure will just continue where it stopped/was waiting !! :+1:

Great :slight_smile:

Thanks, Yea that's what I ended up doing too, changed it to 1.1.1.1 until I got everything working, then back to localhost.

All right, I can mark this as resolved. Have a good day!

1 Like

Just for the record, after upgrading to pihole 6 I had major issues;

  • lost dhcp (was now off)
  • lost unbound connection
  • lost all upstream DNS
  • lost all static leases
    After removing and a clean install of pihole and unbound, it now all works as expected again. I did get an error at the end of setup, so I used the menu option to send logs to pihole. Hopefully that helps.

I had a similar issue. Upgrading from v5 to v6 broke my servers DNS configuration, and the FTL interface. I thought that removing pihole altogether would solve the FTL problem, but either using the servers ip address (xxx.xxx.xxx.xxx/admin) or the pi.hole/admin address keeps sending me to the old lighttpd website. Is there anyway to solve this? I'm not sure how to redirect the incoming trafic to port 80 to the new FTL.

This topic was automatically closed 21 days after the last reply. New replies are no longer allowed.