Pi-hole Quick Reference Commands¶
All commands listed are intended to be entered via the console or terminal.
Allow/Deny¶
Task | Command Example | Notes | Link |
---|---|---|---|
Allow Domain | pihole --white-wild example.com | Add domain and all subdomains to allowed domains. | |
Allow Domain | pihole -w example.com | Add domain to allowed domains. | |
Allow Domain | pihole whitelist example.com | Add domain to allowed domains. | |
Allow Domains | pihole -w example.com example.org | Add multiple domains to allowed domains. | |
Allow Domain Regex | pihole --white-regex '^example.com$' | Add a domain using regular expressions to allowed domains. | RegEx |
Allow Domains Regex | pihole --white-regex '^example.com$' '.*\.example.net' | Add multiple domains using regular expressions to allowed domains. | RegEx |
Deny Domain | pihole --wild example.com | Add domain and all subdomains to denied domains. | |
Deny Domain | pihole -b example.com | Add domain to denied domains. | |
Deny Domain | pihole blacklist example.com | Add domain to denied domains. | |
Deny Domain | pihole wildcard example.com | Add domain and all subdomains to denied domains. | |
Deny Domains | pihole -b example.com example.org | Add multiple domains to denied domains. | |
Deny Domain Regex | pihole --regex '^example.com$' | Add a domain using regular expressions to denied domains. | RegEx |
Deny Domain Regex | pihole regex '^example.com$' | Add a domain using regular expressions to denied domains. | RegEx |
Deny Domains Regex | pihole --regex '^example.com$' '.*\.example.net' | Add multiple domains using regular expressions to denied domains. | RegEx |
List Allowed Domains | pihole -w -l | Display a list all allowed domains. | |
List Allowed Domains | pihole --white-wild -l | Display a list of all wildcard allowed domains. | |
List Denied Domains | pihole -b -l | Display a list all denied domains. | |
Remove Allowed Domain | pihole -w -d example.com | Remove domain from allowed domains. | |
Remove Allowed Domain | pihole --white-wild -d example.com | Remove domain and all subdomains to denied domains. | |
Remove Denied Domain | pihole -b -d example.com | Remove domain from denied domains. |
Administration¶
Task | Command Example | Notes |
---|---|---|
Backup Config | pihole -a -t pihole-config-2022-03-03.tar.gz | Backup configuration to a specified archive name in the current working directory. |
Backup Config | pihole -a -t | Backup configuration to an archive in the current working directory (e.g. pi-hole-alarmpi-teleporter_2022-03-03_18-04-06.tar.gz). |
Backup Config | pihole admin teleporter | Backup configuration to an archive in the current working directory (e.g. pi-hole-alarmpi-teleporter_2022-03-03_18-04-06.tar.gz). |
Clear Logs | pihole -f | Empty or rotate log file located at /var/log/pihole.log . Will rotate log if logrotate is installed. |
Clear Logs | pihole flush | Empty or rotate log file located at /var/log/pihole.log . Will rotate log if logrotate is installed. |
Clear Network Tables | pihole arpflush | Remove information stored in Pi-hole's network tables. |
Debug Mode | pihole -d | Start a debugging session. |
Debug Mode | pihole debug | Start a debugging session. |
Disable Services | pihole disable 5m | Disable all services for 5 minutes. |
Disable Services | pihole disable 600s | Disable all services for 600 seconds. |
Disable Services | pihole disable | Disable all services. |
Enable Services | pihole enable | Start all services. |
Restart DNS | pihole restartdns reload-lists | Update the lists without flushing cache and restarting the DNS server. |
Restart DNS | pihole restartdns reload | Update the lists and flush cache without restarting the DNS server. |
Restart DNS | pihole restartdns | Restart all Pi-hole services. |
Search Adlist | pihole -q -all example.com | Query the adlists for any reference of specified domain or keyword. |
Search Adlist | pihole -q -exact example.com | Query the adlists for exactly specified domain or keyword. |
Search Adlist | pihole -q example.com | Query the adlists for any reference of specified domain or keyword. |
Search Adlist | pihole query example.com | Query the adlists for a specified domain or keyword. |
Status | pihole status | Display the current status of all Pi-hole services. |
Update Gravity | pihole -g | Update the list of ad-serving domains in adlists.list . |
Update Gravity | pihole updateGravity | Update the list of ad-serving domains in adlists.list . |
Update Pi-hole | pihole -up | Check for updates and if updates automatically update/reinstall. |
Update Pi-hole | pihole updatePihole | Check for updates and if updates automatically update/reinstall. |
View Logs | pihole -t blocked | View log output live with a filter. |
View Logs | pihole -t | View log output live without a filter. |
View Logs | pihole tail blocked | View log output live with a filter. |
View Logs | pihole tail | View log output live without a filter. |
Configuration¶
Task | Command Example | Notes | Link |
---|---|---|---|
Change Branch | pihole checkout dev | Switch Pi-hole to a different GitHub branch or repository. | |
Disable Log | pihole -l off noflush | Disable logging and do not empty log entries in /var/log/pihole.log . | |
Disable Log | pihole -l off | Disable and empty log entries in /var/log/pihole.log . | |
Enable Log | pihole -l on | Enable logging to /var/log/pihole.log . | |
Enable Log | pihole logging on | Enable logging to /var/log/pihole.log . | |
Reconfigure | pihole reconfigure | Runs through the first-time installation prompts. Retains existing settings and will attempt to repair scripts or dependencies as necessary. | |
Remove Email Address | pihole -a -e | Remove administrator contact email address for the block page. | |
Remove Email Address | pihole admin email | Remove administrator contact email address for the block page. | |
Set Celsius | pihole -a -c | Set temperature unit format to celsius. | |
Set Celsius | pihole admin celsius | Set temperature unit format to celsius. | |
Set Dnsmasq Interface | pihole -a -i all | Specify dnsmasq's interface listening behavior. Listen on all interfaces, permit all origins. | Interface binding behavior |
Set Dnsmasq Interface | pihole -a -i bind | Specify dnsmasq's interface listening behavior. Bind only on interface eth0. | Interface binding behavior |
Set Dnsmasq Interface | pihole -a -i local | Specify dnsmasq's interface listening behavior. Only respond to queries from devices that are at most one hop away (local devices). | Interface binding behavior |
Set Dnsmasq Interface | pihole -a -i single | Specify dnsmasq's interface listening behavior. Only respond to interface eth0. | Interface binding behavior |
Set Dnsmasq Interface | pihole admin interface local | Specify dnsmasq's interface listening behavior. Only respond to queries from devices that are at most one hop away (local devices). | Interface binding behavior |
Set Email Address | pihole -a -e admin@example.com | Set administrator contact email address for the block page. | |
Set Email Address | pihole admin email admin@example.com | Set administrator contact email address for the block page. | |
Set Fahrenheit | pihole -a -f | Set temperature unit format to fahrenheit. | |
Set Fahrenheit | pihole admin fahrenheit | Set temperature unit format to fahrenheit. | |
Set Kelvin | pihole -a -k | Set temperature unit format to kelvin. | |
Set Kelvin | pihole admin kelvin | Set temperature unit format to kelvin. | |
Set Password | pihole -a -p | Set the admin console (web interface) password. | |
Set Password | pihole admin password | Set the admin (web interface) console password. | |
Set Privacy Level | pihole -a -l 0 | Specify the privacy level to use. Defaults to 0 if not set. | Privacy Levels |
Uninstall | pihole uninstall | Uninstall Pi-hole from your system, giving the option to remove each dependency individually. |
System Information¶
Task | Command Example | Notes | Link |
---|---|---|---|
View Help | pihole --help | Display the command line help. | |
View Help | pihole -h | Display the command line help. | |
View Help | pihole help | Display the command line help. | |
View Stats | pihole -c -e | Display statistics and general information then immediate exit without refreshing. | |
View Stats | pihole -c -j | Output statistics in a JSON formatted string. | |
View Stats | pihole -c -r 300 | Display statistics and general information with a specified update frequency of 300 seconds. | |
View Stats | pihole -c | Display statistics and general information. Press CTRL+C to exit. | |
View Stats | pihole chronometer | Display statistics and general information. Press CTRL+C to exit. | Chronometer |
View Version | pihole -v --hash | Display GitHub hash from your local repository. | |
View Version | pihole -v -a | Display AdminLTE version from repository. | |
View Version | pihole -v -c | Display all current versions. | |
View Version | pihole -v -f | Display FTL version from repository. | |
View Version | pihole -v -l | Display all latest versions. | |
View Version | pihole -v -p | Display Pi-hole version from repository. | |
View Version | pihole -v | Display the version of each service. | |
View Version | pihole version | Display the version of each service. |
Arch Linux Arm Missing Commands¶
The following commands are not available on Arch Linux Arm when installed as a AUR package following the article, Arch Linux ARM Install Pi-Hole On A Raspberry Pi.
pihole -d
pihole -up
pihole checkout
pihole debug
pihole enable
pihole reconfigure
pihole uninstall
pihole updatePihole