Versions
Pi-hole: v6.6.1
Web: v6.6.1
FTL: v6.6.1
Platform
OS and version: Debian 12 (Bookworm)
Platform: LXC container inside Proxmox
Expected behavior
pihole status should report FTL is listening on port 53 and Pi-hole blocking is enabled when FTL is running correctly and DNS is responding normally.
Actual behavior / bug
pihole status always reports DNS service is NOT running even when FTL is fully operational.
The root cause is in statusFunc() inside /usr/local/bin/pihole, which calls getFTLConfigValue files.pid to retrieve the PID file path. However, the files.pid key no longer exists in the v6 TOML configuration:
bashpihole-FTL --config files
files.pid is not listed among the available keys
As a result, getFTLConfigValue returns an empty string, getFTLPID receives an invalid path and returns -1, causing statusFunc() to always conclude that FTL is not running — regardless of its actual state.
FTL is still writing its PID to /run/pihole-FTL.pid by default, but the status script never looks there.
Steps to reproduce
Steps to reproduce the behavior:
Install PiHole v6 on any platform
Run pihole status
Observe DNS service is NOT running despite FTL being fully active
Verification that FTL is actually running correctly:
bashss -tulpn | grep :53 # port 53 is open and owned by pihole-FTL
cat /run/pihole-FTL.pid # PID file exists and contains a valid PID
ps aux | grep pihole-FTL # process is running with that PID
nslookup google.com 127.0.0.1 # DNS resolution works correctly
Workaround (until a fix is released): patch the statusFunc() in /usr/local/bin/pihole by replacing:
bashftl_pid_file="$(getFTLConfigValue files.pid)"
with:
bashftl_pid_file="$(getFTLConfigValue files.pid)"
ftl_pid_file="${ftl_pid_file:-/run/pihole-FTL.pid}"
Debug Token
Screenshots
N/A
Additional context
Pi-hole is not running in Docker. It is installed natively inside a Proxmox LXC container (not a Docker/Compose setup). No Compose file or docker run command applies.
Versions
Pi-hole: v6.6.1
Web: v6.6.1
FTL: v6.6.1
Platform
OS and version: Debian 12 (Bookworm)
Platform: LXC container inside Proxmox
Expected behavior
pihole status should report FTL is listening on port 53 and Pi-hole blocking is enabled when FTL is running correctly and DNS is responding normally.
Actual behavior / bug
pihole status always reports DNS service is NOT running even when FTL is fully operational.
The root cause is in statusFunc() inside /usr/local/bin/pihole, which calls getFTLConfigValue files.pid to retrieve the PID file path. However, the files.pid key no longer exists in the v6 TOML configuration:
bashpihole-FTL --config files
files.pid is not listed among the available keys
As a result, getFTLConfigValue returns an empty string, getFTLPID receives an invalid path and returns -1, causing statusFunc() to always conclude that FTL is not running — regardless of its actual state.
FTL is still writing its PID to /run/pihole-FTL.pid by default, but the status script never looks there.
Steps to reproduce
Steps to reproduce the behavior:
Install PiHole v6 on any platform
Run pihole status
Observe DNS service is NOT running despite FTL being fully active
Verification that FTL is actually running correctly:
bashss -tulpn | grep :53 # port 53 is open and owned by pihole-FTL
cat /run/pihole-FTL.pid # PID file exists and contains a valid PID
ps aux | grep pihole-FTL # process is running with that PID
nslookup google.com 127.0.0.1 # DNS resolution works correctly
Workaround (until a fix is released): patch the statusFunc() in /usr/local/bin/pihole by replacing:
bashftl_pid_file="$(getFTLConfigValue files.pid)"
with:
bashftl_pid_file="$(getFTLConfigValue files.pid)"
ftl_pid_file="${ftl_pid_file:-/run/pihole-FTL.pid}"
Debug Token
Screenshots
N/A
Additional context
Pi-hole is not running in Docker. It is installed natively inside a Proxmox LXC container (not a Docker/Compose setup). No Compose file or docker run command applies.