Skip to main content

🧰 Wartungsskript Übersicht

📝 Beschreibung

Das Wartungsskript für EndeavourOS ARM wurde speziell für den Einsatz auf einem Raspberry Pi 4 entwickelt.

Es dient der Pflege und Wartung eines Systems mit folgenden Diensten:

  • ioBroker – Smart-Home-Plattform
  • Pi-hole 6 – Netzwerkweiter Werbeblocker
  • Unbound – Lokaler DNS-Resolver
  • Syncthing – Dezentrale Dateisynchronisation
  • Z-Wave JS UI – Verwaltung von Z-Wave-Geräten

Es dient der Systempflege, Diagnose und Kontrolle zentraler Dienste.


⚙️ Hauptfunktionen

🖥️ 1. Systeminformationen

Zeigt grundlegende Systemdaten:

  • 🧩 Kernel & Architektur (uname -a)
  • 💻 Hostname, OS & Hardware (hostnamectl)
  • ⏱️ Laufzeit des Systems (uptime -p)
  • 📊 Optionale Übersicht mit fastfetch

💾 2. Speicher- & Datenträgerstatus & SSD Trim

  • 📈 Übersicht freier & belegter Speicher (df -h)
  • ⚡ SSD-Optimierung via sudo fstrim -av

🧠 3. Systemüberwachung in Echtzeit (htop)

  • 🔍 Startet htop zur Live-Überwachung von CPU, RAM und Prozessen
    (Beenden mit q)

📜 4. Journal & Logdateien

  • 🚨 Systemfehler des letzten Starts (journalctl -p 3 -xb)
  • 📡 ioBroker-Log (journalctl -u iobroker)
  • 🧱 Kernelmeldungen (dmesg | tail)
  • 📦 Paketinstallationen (/var/log/pacman.log)
  • 🔢 Anzahl der angezeigten Zeilen wählbar (Standard: 20)

📦 5. Pacman & Paketverwaltung

Verwaltung mit Pacman und Yay:

  • 🔄 Systemupdate (sudo pacman -Syu)
  • ♻️ Vollständige Neu-Synchronisation (sudo pacman -Syyuu)
  • 🧹 Verwaiste Pakete anzeigen & löschen
  • 🧽 Cache bereinigen (sudo pacman -Scc)
  • 🌐 AUR-Updates & Cleanup (yay -Syu, yay -Sc, yay -v -Scc)

🏠 6. ioBroker – Wartung & Kontrolle

  • 📶 Dienststatus (systemctl status iobroker.service)
  • 🧾 Diagnosebericht (iob diag)
  • 🧰 Rechte & Dienste reparieren (iob stop && iob fix)
  • ⬆️ ioBroker-Update (iob stop && iob update && iob upgrade self && iob upgrade)
  • ▶️ ioBroker starten (iob start)

🧩 7. Pi-hole + Unbound – Wartung & Kontrolle

  • 🧠 Unbound-Status prüfen (systemctl status unbound)
  • 📥 Blocklisten aktualisieren (sudo pihole -g)
  • 🧹 Statistikdaten löschen (sudo pihole -f)
  • 🔄 DNS-Dienst neu starten (sudo systemctl restart pihole-FTL)
  • 🔑 DNSSEC Trusted Keys anzeigen (/etc/unbound/trusted-key.key)
  • 🌍 Root Hints prüfen (/etc/unbound/root.hints)

🔄 8. Syncthing – Status & Kontrolle

  • 📶 Dienststatus anzeigen (systemctl status syncthing@alarm.service)
  • 🧾 Letzte Logmeldungen (journalctl -u syncthing@alarm.service)
  • 🌐 Anzeige der lokalen GUI-Adresse

🧩 9. Z-Wave JS UI – Status & Kontrolle

  • 📶 Dienststatus anzeigen (systemctl status zwave-js-ui)

Info

Updates von Z-Wave JS UI führe ich manuell über die Konsole durch.
Vorher wird ein Backup erstellt – das ist sicherer und erleichtert die Fehlersuche bei möglichen Problemen.


📦 10. Backup ioBroker, Pi-hole, Z-Wave

  • 📁 Backup-Verzeichnis: /opt/backups (automatisch erstellt)
  • 🗃️ Gesicherte Daten:
    • ioBroker-Konfiguration (/opt/iobroker/iobroker-data)
    • Pi-hole-Einstellungen (/opt/pihole)
    • Z-Wave-Netzwerkdaten (/opt/zwave-js-ui/store)
  • 📅 Backup-Name: Backup_opt_YYYY-MM-DD.tar.gz
  • ⚠️ Hinweise:
    • Backups werden komprimiert (.tar.gz) gespeichert
    • Überschreibt bestehende Backups desselben Tages
    • Größenprüfung nach Erstellung
    • Fehlerbehandlung bei Berechtigungsproblemen

🔁 11. System neu starten

  • 🚀 Systemneustart (sudo reboot)

🔐 Sicherheit & Komfort

  • 🚫 Kein Root-Start (sudo oder root wird abgewiesen)
  • 🔓 Automatischer sudo-Cache
  • 🧾 Keine „q“-Abfragen bei journalctl (Pager deaktiviert)
  • 🪵 Automatische Logdatei mit Rotation ab 100 KB
  • 🎨 Farbiges Menü (Fallback bei eingeschränkten Terminals)

▶️ Aufruf

Wenn die Datei als wartung-eos.sh gespeichert wurde, kann sie direkt mit folgendem Befehl gestartet werden:

bash wartung-eos.sh

Startmenü:

====================================
 EndeavourOS ARM Wartung – Pi 4
 Version: 2026-03-21
====================================
1) Systeminformationen
2) Speicher- & Datenträgerstatus & SSD Trim
3) Systemüberwachung in Echtzeit (htop)
4) Journal & Logdateien
5) Pacman & Paketverwaltung
6) ioBroker – Wartung & Kontrolle
7) Pi-hole mit Unbound – Wartung & Kontrolle
8) Syncthing – Status & Kontrolle
9) Z-Wave JS UI – Status & Kontrolle
10) Backup ioBroker, Pi-hole, Z-Wave
11) System-Neustart
0) Beenden
====================================
Bitte wähle eine Option: 

Untermenü 5:

=========================================
5) Pacman & Paketverwaltung
=========================================
2025-11-01 15:25:27 - Pacman & Paketverwaltung

a) sudo pacman -Syu                  # System aktualisieren
b) sudo pacman -Syyuu                # Komplett-Refresh inkl. Downgrades
c) sudo pacman -Qdtq                 # Verwaiste Pakete auflisten
d) sudo pacman -Rsn $(pacman -Qdtq)  # Verwaiste Pakete entfernen
e) sudo pacman -Scc                  # Cache leeren
f) yay -Syu (ohne sudo)              # AUR aktualisieren
g) yay -Sc                           # AUR Cache leeren
h) yay -v -Scc                       # AUR Cache vollständig leeren
z) Zurück zum Hauptmenü:

Unterauswahl:

Untermenü 6:

=========================================
6) ioBroker – Wartung & Kontrolle
=========================================
2025-11-01 15:24:38 - ioBroker – Wartung & Kontrolle

a) systemctl status iobroker.service   # Dienststatus anzeigen
b) iob diag                            # Diagnosebericht erstellen
c) iob stop && iob fix                 # Rechte & Dienste reparieren
d) iob stop && iob update && iob upgrade self && iob upgrade   # ioBroker aktualisieren
e) iob start                           # ioBroker starten
z) Zurück zum Hauptmenü

Unterauswahl:

Untermenü 7:

=========================================
7) Pi-hole mit Unbound – Wartung & Kontrolle
=========================================
2025-11-01 15:28:25 - Pi-hole mit Unbound – Wartung & Kontrolle

a) systemctl status unbound            # Status des DNS-Resolvers anzeigen
b) sudo pihole -g                      # Blockierlisten aktualisieren
c) sudo pihole -f                      # Statistikdaten löschen
d) sudo systemctl restart pihole-FTL   # DNS-Dienst neu starten
e) cat /etc/unbound/trusted-key.key    # DNSSEC Trusted Keys anzeigen
f) cat /etc/unbound/root.hints         # Root Hints (13 Root-Server) anzeigen
z) Zurück zum Hauptmenü

Unterauswahl: