Raspberry Pi
A credit-card-sized Linux computer that sips power, which makes it the natural home for always-on services like DNS, a honeypot and an AI agent gateway.
#What it is
The Raspberry Pi is a small single-board computer: an ARM processor, RAM, USB, Ethernet and Wi-Fi on one board about the size of a credit card. It runs Raspberry Pi OS, which is Debian with a few Pi-specific extras, so almost anything you can apt install on a normal Linux server works on it.
I use a Pi 4 with 4 GB of RAM on the 64-bit, Debian 13 "Trixie" based release.
#Why I use it
The services in these posts all have one thing in common: they only work if they're always on. DNS, a honeypot and a chat gateway are useless on a laptop that sleeps. A Pi idles at a few watts, has no fan, makes no noise, and sits next to the router doing its job for years.
#Benefits
- Cheap to run. A few watts, around the clock, costs very little over a year.
- Real Linux. systemd, apt, Python and SSH all behave exactly as they do on a server.
- Wired Ethernet. For DNS you want a cable, not Wi-Fi, and the Pi has a proper gigabit port.
- More headroom than you'd think. A 4 GB Pi 4 runs Hermes, Pi-hole, Unbound, OpenCanary, Loki, Alloy and Grafana together with over 3 GB of RAM still free.
#Trade-offs and alternatives
- SD cards wear out. Constant log writes are exactly what kills them. Boot from a USB SSD if you can.
- It becomes a single point of failure. Once the whole house uses it for DNS, a dead Pi means no internet for anyone until you switch the router back. Tell your household how to roll back.
- ARM64. Nearly everything mainstream ships ARM64 builds now, but the odd niche tool doesn't.
- Alternatives: an old laptop (has a built-in UPS: its battery), a small N100-class mini PC (more power, still efficient), or a VM on a NAS you already run.
#Gotchas I hit
- On Trixie,
/tmpis a RAM disk and is wiped on every reboot. Anything that defaults to storing data in/tmp(Loki does) loses it all on restart. - If
sudocomplainsunable to resolve host, your hostname is missing from/etc/hosts. Add127.0.1.1 <hostname>. - Networking is managed by NetworkManager on current releases, so older guides that edit
/etc/dhcpcd.confno longer apply.