Repository navigation
How to: operator runbook
Use this runbook to resolve common operational alerts for the Pi-hole snap. Run the diagnostic commands first, then apply only the remediation steps that match the observed failure.
Run commands in this guide from the Pi-hole host.
βTABLE OF CONTENTS
ββββCLICK TO EXPAND
-
Recover a failed daemon start
Resolve port conflicts and interface state
-
Restore DHCP lease service
Connect DHCP interfaces and remove overlaps
-
Inspect AppArmor denials
Collect confinement logs for failed features
-
Rotate the web password
Reset administrator access safely
Use this procedure when snap logs pihole-by-rajannpatel reports that the daemon failed to start, or when DNS resolution stops after enabling the snap.
-
Run the snap diagnostic check:
sudo pihole snap-check
-
Check whether another service is listening on port
53:sudo ss -tulpn | grep ':53 '
-
If
systemd-resolvedis using the port, disable its DNS stub listener:sudo mkdir -p /etc/systemd/resolved.conf.d printf '[Resolve]\nDNSStubListener=no\n' | sudo tee /etc/systemd/resolved.conf.d/pihole.conf sudo systemctl restart systemd-resolved
-
Verify that
network-bindis connected:snap connections pihole-by-rajannpatel
-
Connect
network-bindif it is disconnected, then start the daemon:sudo snap connect pihole-by-rajannpatel:network-bind sudo snap start pihole-by-rajannpatel.pihole-ftl
Use this procedure when Pi-hole DHCP is enabled but clients do not receive IP addresses.
-
Connect the DHCP interfaces:
sudo snap connect pihole-by-rajannpatel:network-control sudo snap connect pihole-by-rajannpatel:firewall-control
-
Run the diagnostic check:
sudo pihole snap-check
-
If ports
67or546are already in use, stop the other DHCP service on the network before continuing. -
Restart the daemon:
sudo snap restart pihole-by-rajannpatel.pihole-ftl
-
Renew the lease on one client device and confirm that it receives an address from the Pi-hole DHCP range.
Use this procedure when a feature works in an upstream Pi-hole installation but fails in the strictly confined snap.
-
Connect
system-observeso the diagnostic tool can read kernel logs:sudo snap connect pihole-by-rajannpatel:system-observe
-
Search for Pi-hole AppArmor denials:
sudo dmesg | grep DENIED | grep pihole
-
If denials appear, create an issue in the project repository and include the denial log. The log identifies whether the snap needs another interface connection or a confinement layout change.
Use this procedure when an administrator leaves, a password is exposed, or routine credential rotation is required.
Important
Do not use snap set to change web passwords. Values passed through
snap set can be recorded in snapd state.
Set the password through Pi-hole FTL so it is hashed before storage:
sudo pihole setpasswordπ Home
| Legend | |
|---|---|
| π | Learning-oriented to teach concepts |
| π οΈ | Goal-oriented to achieve tasks |
| π‘ | Understanding-oriented theory |
| π | Information-oriented facts |
- π Getting started with the Pi-hole snap
- π οΈ Supported deployment patterns
- π‘ Architecture and rationale
- π‘ Security model
- π‘ Topology and architecture
- π‘ Why Unbound is not bundled
- π Deployment environment comparison
- π Networking compatibility
- π Supported systems
- π οΈ Install on Linux
- π οΈ Install on Ubuntu Core
- π οΈ Install in a LXD container
- π οΈ Install using cloud-init
- π οΈ Install using Multipass
- π οΈ Operator runbook
- π οΈ Backups and restores
- π οΈ SSL for web interface using Caddy
- π οΈ Configure DHCP
- π οΈ Customize gravity update schedule
- π οΈ Migrate from an existing install
- π‘ Refresh behavior and updates
- π Ports and firewall
- π Native configuration
- π CLI wrapper commands
- π Packaging a snap locally
- π οΈ IDE and AI agent setup
- π οΈ Set up VS Code for development
- π οΈ Set up Zed for development
- π οΈ Configure AI agent workflows
- π Workshop actions and agent workflows
- π Legacy VM workflows
- π‘ Build-time scripting and patches
- π‘ Release pipelines and channels
- π‘ Software Bill of Materials
- π SBOM and VEX artifacts
- π οΈ Submit a bug report
- π οΈ Contribute to the wiki