44 lines
2 KiB
Desktop File
44 lines
2 KiB
Desktop File
# ==============================================================================
|
|
# KURZANLEITUNG ZUR INSTALLATION UND VERWALTUNG
|
|
# ==============================================================================
|
|
# 1. Datei kopieren nach: /etc/systemd/system/spannung.service
|
|
# 2. Systemd neu laden: sudo systemctl daemon-reload
|
|
# 3. Autostart aktivieren: sudo systemctl enable spannung.service
|
|
# 4. Dienst starten: sudo systemctl start spannung.service
|
|
#
|
|
# Befehle zur Steuerung:
|
|
# - Status prüfen: sudo systemctl status spannung.service
|
|
# - Live-Logs einsehen: sudo journalctl -u spannung.service -f
|
|
# - Dienst stoppen: sudo systemctl stop spannung.service
|
|
# - Dienst neu starten: sudo systemctl restart spannung.service
|
|
# ==============================================================================
|
|
#
|
|
# gewohnter rsync-Befehl (Beispiel)
|
|
# rsync -avz ./app/ pi@raspirotor:~/spannung/
|
|
# 2. Den Dienst auf dem Pi remote aktualisieren und neu starten
|
|
# ssh -t afu@raspirotor "sudo cp ~/spannung/app/spannung.service /etc/systemd/system/ && sudo systemctl daemon-reload && sudo systemctl restart spannung.service"
|
|
|
|
[Unit]
|
|
Description=Spannung Control Service
|
|
After=network-online.target i2c.service
|
|
Wants=network-online.target
|
|
StartLimitIntervalSec=0
|
|
|
|
[Service]
|
|
Type=simple
|
|
# Die ExecStartPre-Zeile muss bei 32-Bit auskommentiert werden, da kein i2cdetect verfügbar ist
|
|
ExecStartPre=/bin/bash -c 'for i in {1..10}; do i2cdetect -y 1 | grep -q "48" && exit 0; echo "warte auf ADS1115..."; sleep 2; done; exit 1'
|
|
ExecStart=/home/afu/spannung/spannung
|
|
WorkingDirectory=/home/afu/spannung
|
|
User=afu
|
|
#Restart=always
|
|
Restart=on-failure # Startet den Dienst nur bei Fehlern neu
|
|
RestartSec=5s # Wartet 5 Sekunden vor dem nächsten Versuch
|
|
StartLimitIntervalSec=60s # Innerhalb von 60 Sekunden
|
|
StartLimitBurst=3 # Maximal 3 Versuche in diesem Intervall
|
|
|
|
StandardOutput=append:/home/afu/spannung/spannung.log
|
|
StandardError=append:/home/afu/spannung/spannung.log
|
|
|
|
[Install]
|
|
WantedBy=multi-user.target
|