From 6fa5b3237ad4cd2547be16141c7b9e77d2c8af94 Mon Sep 17 00:00:00 2001 From: Claude Date: Fri, 17 Jul 2026 17:05:32 +0000 Subject: [PATCH 1/3] docs: add RPi-Monitor to PiMonitor migration guide to README Users switching from RPi-Monitor need to fully remove the old service, package, and its leftover cron jobs/config before running PiMonitor side by side is safe. Document the steps (stop/disable/purge the service, clean up cron and systemd leftovers, optional web server config cleanup) so this doesn't have to be re-derived per user. --- README.md | 113 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 113 insertions(+) diff --git a/README.md b/README.md index c191750..5882631 100644 --- a/README.md +++ b/README.md @@ -199,6 +199,119 @@ sudo systemctl restart pimonitor.service The dashboard is then available at `http://:8080/` (or whatever port you configured). +## Migrating from RPi-Monitor + +If you're replacing [RPi-Monitor](https://github.com/XavierBerger/RPi-Monitor-website) +with PiMonitor on the same device, [install PiMonitor](#installing-on-a-raspberry-pi) +first, then remove RPi-Monitor to avoid leftover cron jobs, systemd units, or +web server configs interfering with the new dashboard. PiMonitor listens on +port `8080` by default, RPi-Monitor's bundled `lighttpd` on `8888`, so the two +don't collide even if both happen to be running briefly - but double-check +any firewall rules or reverse-proxy config that reference the old port. + +The exact paths below assume RPi-Monitor was installed from the `.deb` +package; adjust them if you built it manually. As with any `rm -rf`, take a +backup first if you're unsure and review each command before running it. + +### 1. Stop the service + +```sh +sudo systemctl stop rpimonitor +``` + +Stops the running service so its files aren't locked during removal. + +### 2. Disable the service + +```sh +sudo systemctl disable rpimonitor +``` + +Removes the systemd symlinks so RPi-Monitor no longer starts on boot. + +### 3. Remove the package + +```sh +sudo apt-get remove --purge rpimonitor +``` + +Uninstalls the binaries; `--purge` also removes the package's own +configuration files. + +### 4. Clean up dependencies + +```sh +sudo apt-get autoremove --purge +``` + +Removes libraries that were only pulled in for RPi-Monitor and any orphaned +configuration files left behind. + +### 5. Delete leftover files + +RPi-Monitor leaves files outside of what `apt` manages: + +```sh +sudo rm -rf /etc/rpimonitor/ +sudo rm -rf /usr/share/rpimonitor/ +sudo rm -rf /var/lib/rpimonitor/ +sudo rm -rf /var/log/rpimonitor/ +sudo rm -rf /var/www/rpimonitor/ # only if you had a web server integration +``` + +### 6. Remove cron jobs + +RPi-Monitor typically schedules its sensor-collection script via cron: + +```sh +sudo crontab -e +``` + +Remove any lines referencing `rpimonitor` or +`/usr/share/rpimonitor/scripts/`. Also check for a system-wide job and +remove it if present: + +```sh +sudo rm -f /etc/cron.d/rpimonitor +``` + +### 7. Check for leftover systemd unit files + +Only relevant if RPi-Monitor was installed manually rather than via `apt`: + +```sh +ls /etc/systemd/system/ | grep rpimonitor +sudo rm -f /etc/systemd/system/rpimonitor.service # if found +sudo systemctl daemon-reload +``` + +### 8. Clean up web server configuration + +Only relevant if RPi-Monitor was fronted by Apache or Nginx instead of its +bundled `lighttpd`: + +```sh +# Apache +sudo rm -f /etc/apache2/conf-available/rpimonitor.conf +sudo a2disconf rpimonitor +sudo systemctl reload apache2 + +# Nginx +sudo rm -f /etc/nginx/sites-enabled/rpimonitor +sudo systemctl reload nginx +``` + +### 9. Final check + +```sh +which rpimonitor # no output +systemctl status rpimonitor # "Unit rpimonitor.service could not be found." +dpkg -l | grep rpimonitor # no output +``` + +If all three come back clean, RPi-Monitor is fully removed and PiMonitor is +the only monitoring service left running on the Pi. + ## Updating PiMonitor is distributed as a single binary, so upgrading is a matter of From 2fa31d2aded74a15aa257a7e1c94a5e2557e2493 Mon Sep 17 00:00:00 2001 From: Claude Date: Fri, 17 Jul 2026 17:11:33 +0000 Subject: [PATCH 2/3] docs: fix port-conflict ordering in RPi-Monitor migration guide Recommending "install PiMonitor first, remove RPi-Monitor after" breaks if the user reuses RPi-Monitor's old port for PiMonitor's listen_addr: RPi-Monitor's lighttpd would still hold that port, so pimonitor.service fails to bind and crash-loops. Clarify that RPi-Monitor must be stopped first in that case, with default ports being the only case where order doesn't matter. --- README.md | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index 5882631..c432711 100644 --- a/README.md +++ b/README.md @@ -202,12 +202,16 @@ whatever port you configured). ## Migrating from RPi-Monitor If you're replacing [RPi-Monitor](https://github.com/XavierBerger/RPi-Monitor-website) -with PiMonitor on the same device, [install PiMonitor](#installing-on-a-raspberry-pi) -first, then remove RPi-Monitor to avoid leftover cron jobs, systemd units, or -web server configs interfering with the new dashboard. PiMonitor listens on +with PiMonitor on the same device, remove RPi-Monitor completely *before* +[installing PiMonitor](#installing-on-a-raspberry-pi). PiMonitor listens on port `8080` by default, RPi-Monitor's bundled `lighttpd` on `8888`, so the two -don't collide even if both happen to be running briefly - but double-check -any firewall rules or reverse-proxy config that reference the old port. +don't collide as long as you keep the default ports - but if you plan to +reuse RPi-Monitor's old port (e.g. set `listen_addr` to `:8888` so existing +bookmarks/firewall rules keep working), RPi-Monitor's `lighttpd` must be +stopped first, or `pimonitor.service` will fail to bind that port and +crash-loop on startup (see step 4 of the installation instructions above). +Installing PiMonitor first and cleaning up RPi-Monitor afterwards works too, +but only if you're not reusing the port. The exact paths below assume RPi-Monitor was installed from the `.deb` package; adjust them if you built it manually. As with any `rm -rf`, take a From 741613ecdec17827e5d03c97ad62c5473cd8de97 Mon Sep 17 00:00:00 2001 From: LarsL <26182282+LarsLaskowski@users.noreply.github.com> Date: Fri, 17 Jul 2026 19:16:40 +0200 Subject: [PATCH 3/3] Fix RPi-Monitor link and improve migration instructions Updated the RPi-Monitor link and adjusted text for clarity. --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index c432711..b7edbc1 100644 --- a/README.md +++ b/README.md @@ -53,7 +53,7 @@ automation systems like openHAB). Runs as a systemd service. │ ring buffers) ▼ │ │ │ /api/v1/... │───▶ Third-party clients │ │ alert events │ (e.g. openHAB) - │ ▼ │ + │ ▼ │ │ notifier ─────────────────│───▶ HTTP webhooks └─────────────────────────────┘ (Slack, ntfy, HA, ...) @@ -201,7 +201,7 @@ whatever port you configured). ## Migrating from RPi-Monitor -If you're replacing [RPi-Monitor](https://github.com/XavierBerger/RPi-Monitor-website) +If you're replacing [RPi-Monitor](https://github.com/RPi-Monitor/RPi-Monitor) with PiMonitor on the same device, remove RPi-Monitor completely *before* [installing PiMonitor](#installing-on-a-raspberry-pi). PiMonitor listens on port `8080` by default, RPi-Monitor's bundled `lighttpd` on `8888`, so the two