Seite 1 von 1

Befehl auf einem Raspi durch Automation ausführen

Verfasst: Do 9. Nov 2023, 13:35
von Markus

Hab auf einem eigenen Rapsi eine Volkszähler laufen. Die Überwachung ob er läuft erfolgt mittels Uptime-Kuma.

Es kommts manchmal vor das der Raspi bzw. der Volkszähler darauf sich aufhängt, dh. ein

Code: Alles auswählen

sudo systemctl restart vzlogger

ist erforderlich.

Wie könnte man nun diesen restart durch eine HA-Automation anstoßen ?


Re: Befehl auf einem Raspi durch Automation ausführen

Verfasst: Do 9. Nov 2023, 14:20
von carsten_h
Markus hat geschrieben: Do 9. Nov 2023, 13:35

Wie könnte man nun diesen restart durch eine HA-Automation anstoßen?

Du mußt per ssh auf dem entfernten Rechner einen Befehl in der Automatiserung starten.
Das geht mit der command_line Integration:
https://www.home-assistant.io/integrati ... mand_line/

In dem Kommando muß eben ssh mit der Benutzerkennung und dem eigentlich auszuführenden Befehl stehen. Um ssh so im Kommando auszuführen mußt Du vorher einen ssh Schlüsselpaar erzeugen und den einen Teil auf dem entfernten und den anderen auf dem lokalen Rechner (Home Assistant) ablegen.

Das ist die grobe Vorgehensweise. Bisher habe ich nur Englische Beschreibungen dazu per Suche gefunden.


Re: Befehl auf einem Raspi durch Automation ausführen

Verfasst: Do 9. Nov 2023, 22:07
von Markus

Da gäbe es eine einfache SSH Integration via Hacs um eine Verbindung zum entfernten Raspi aufzubauen
https://github.com/zhbjsh/homeassistant ... te_command

Die läuft zumindest schon mal, aber wie bringe ich mein command jetzt in die Automation?


Re: Befehl auf einem Raspi durch Automation ausführen

Verfasst: Fr 10. Nov 2023, 07:01
von carsten_h
Markus hat geschrieben: Do 9. Nov 2023, 22:07

aber wie bringe ich mein command jetzt in die Automation?

Du hast doch genau den passenden Teil verlinkt. Du mußt bei execute_command in den Daten in command das Kommando in Deiner Automatisierung eintragen.
Unter https://github.com/zhbjsh/homeassistant-ssh#commands steht ja auch wie man das in den Entwicklertools testen kann. Es ist eben der service ssh.execute_command, den Du in der Automatisierung auch nutzen mußt.


Re: Befehl auf einem Raspi durch Automation ausführen

Verfasst: Fr 10. Nov 2023, 12:19
von Markus

Perfekt, danke!

Ein

Code: Alles auswählen

sudo apt-get update && sudo apt-get upgrade -y

ist aber scheinbar nicht möglich?

Code: Alles auswählen

results:
  - device_id: 1xxxxxxxxxx
    device_name: raspberrypi_volkszaehler
    success: true
    command: sudo apt-get update && sudo apt-get upgrade -y
    stdout:
      - OK:1 http://giteduberger.fr rpimonitor/ InRelease
      - OK:2 http://raspbian.raspberrypi.org/raspbian buster InRelease
      - OK:3 http://archive.raspberrypi.org/debian buster InRelease
      - OK:4 https://repos.influxdata.com/debian stable InRelease
      - OK:5 https://repos.influxdata.com/debian buster InRelease
      - >-
        Holen:6 https://download.docker.com/linux/raspbian buster InRelease
        [33,6 kB]
      - Holen:7 https://packages.grafana.com/oss/deb stable InRelease [5.984 B]
      - Fehl:7 https://packages.grafana.com/oss/deb stable InRelease
      - "  Die folgenden Signaturen konnten nicht überprüft werden, weil ihr öffentlicher Schlüssel nicht verfügbar ist: NO_PUBKEY 963FA27710458545"
      - Update rpimonitor Packages Status
      - Es wurden 33,6 kB in 3 s geholt (9.977 B/s).
      - Paketlisten werden gelesen...
      - Paketlisten werden gelesen...
      - Abhängigkeitsbaum wird aufgebaut....
      - Statusinformationen werden eingelesen....
      - Paketaktualisierung (Upgrade) wird berechnet...
      - >-
        0 aktualisiert, 0 neu installiert, 0 zu entfernen und 0 nicht
        aktualisiert.
    stderr:
      - >-
        W: Während der Überprüfung der Signatur trat ein Fehler auf. Das Depot
        wurde nicht aktualisiert und die vorherigen Indexdateien werden
        verwendet. GPG-Fehler: https://packages.grafana.com/oss/deb stable
        InRelease: Die folgenden Signaturen konnten nicht überprüft werden, weil
        ihr öffentlicher Schlüssel nicht verfügbar ist: NO_PUBKEY
        963FA27710458545
      - >-
        W: Fehlschlag beim Holen von
        https://packages.grafana.com/oss/deb/dists/stable/InRelease Die
        folgenden Signaturen konnten nicht überprüft werden, weil ihr
        öffentlicher Schlüssel nicht verfügbar ist: NO_PUBKEY 963FA27710458545
      - >-
        W: Einige Indexdateien konnten nicht heruntergeladen werden. Sie wurden
        ignoriert oder alte an ihrer Stelle benutzt.
    code: 0

Re: Befehl auf einem Raspi durch Automation ausführen

Verfasst: Fr 10. Nov 2023, 12:35
von carsten_h
Markus hat geschrieben: Fr 10. Nov 2023, 12:19

ist aber scheinbar nicht möglich?

Warum nicht? Da sind Fehler aufgetreten, aber die Fehler sind auf dem Zielrechner aufgetreten, da kannst Du aus der Ferne nichts machen.
Hast Du das einmal direkt auf dem Zielrechner probiert?


Re: Befehl auf einem Raspi durch Automation ausführen

Verfasst: Fr 10. Nov 2023, 15:26
von Markus

Stimmt, da gab es einen Fehler am Raspi (Grafana Schlüssel wurde verändert).

Jetzt läuft auch dieser Befehl. Danke!


Re: Befehl auf einem Raspi durch Automation ausführen

Verfasst: Mo 15. Jan 2024, 19:42
von Markus

Meine Automatisierung für einen Neustart läuft leider nicht mehr und ich finde den Fehler nicht...wo liegt der Hund begraben?

Error: Script requires 'response_variable' for response data for service call ssh.execute_command

Step config

Code: Alles auswählen

service: ssh.execute_command
data:
  command: sudo reboot
target:
  device_id: 123456789

Re: Befehl auf einem Raspi durch Automation ausführen

Verfasst: Do 18. Jan 2024, 17:27
von Markus

hat niemand eine Idee?