ssh befehle per kodi ausführen

  • Guten Tag, :)

    ich würde gerne über mein Kodi Befehle ausführen. Wie zum Beispiel Putty über Windows nur halt per Kodi ich finde allerdings kein entsprechendes AddOn. Gibt es so ein AddON für das Kodi System?

    Vielen Dank

  • Du suchst also ein Addon welches wie Putty unter Windows funktioniert?

    Das gibt es soweit ich weiß nicht.

    Weiter gibt es auch keine "SSH-Befehle". SSH ist ein Protokoll über welches eine Verbindung hergestellt werden kann über welche man dann Kommandozeilen-Befehle absetzen kann.

    Magst du mir deinen Bedarfsfall erklären? Was möchtest du im Endeffekt erreichen und zu welchem Zweck? Vielleicht gibt es alternative Lösungen

    Wertschätzung kostet nichts, aber sie ist von unschätzbarem Wert.

  • Schau dir mal die playercorefactory.xml mit externen Player an.
    Ich nutze es damit.

    Oder was eventuell auch gehen würde.

    Externer Inhalt www.youtube.com
    Inhalte von externen Seiten werden ohne Ihre Zustimmung nicht automatisch geladen und angezeigt.

  • Ja. Das ist auch richtig.

    Verstehe ich es richtig, dass das System, welches du neu starten möchtest nicht das gleiche System ist, auf dem Kodi läuft?

    Es gibt dafür aber Möglichkeiten.

    Dafür solltest du auf jeden Fall einen SSH Key auf der anderen Maschine haben, damit das mit dem Passwort beim Herstellen der Verbindung keine Probleme gibt.

    Um ein Ubuntu neu zu starten bedarf es des Befehls "sudo reboot". Dann kommt die Aufforderung das sudo-Passwort einzugeben. Und dann startet das System neu.

    Es kommt jetzt ein wenig darauf an, welches Betriebssystem du für Kodi aktuell verwendest. Für LibreELEC gab es mal so ein Terminal Addon.

    Ich würde das ganze aber über ein selbst geschriebenes Addon oder eine Keymap machen.

    Es gibt built in functions in Kodi und eine davon kann auch Befehle auf dem Host System ausführen. Wenn dann ein Befehl wäre "Verbinden dich mit dem anderen System und starte es neu" wäre, müsste man auf dem entfernten System nur dafür sorgen, dass der Befehl "reboot" keine root-Rechte mehr braucht. Und schon würde das System neu starten

    Wertschätzung kostet nichts, aber sie ist von unschätzbarem Wert.

  • Die Frage ist aber auch, warum man ein bereits laufendes Ubuntu neu starten (rebooten) muss. In der Regel laufen ja *nixuide OS sehr stabil. Vielleicht ist es auch besser, das entfernte Ubuntu einfach herunter zu fahren und es per WOL-Addon zu wecken?

    AZi (DEV): Nexus auf LibreElec | Asrock J4205 | 4 GB RAM | 128 GB Sandisk| Rii mini
    DEV: PC Ubuntu 20.04 | Matrix
    AZi: Tanix TX3 | Android/CoreElec Dualboot (EMMC), Nexus
    WoZi: Nexus auf LibreElec | Asrock J4205 | 4GB RAM | 128 GB Sandisk SSD | Atric IR | URC7960
    NAS: unRaid, 3x6TB, 2x12TB | TV-Server: Futro S550 mit Hauppauge QuadHD DVB-C
    PayPal: paypal.me/pvdbj1

  • Die Frage ist aber auch, warum man ein bereits laufendes Ubuntu neu starten (rebooten) muss. In der Regel laufen ja *nixuide OS sehr stabil. Vielleicht ist es auch besser, das entfernte Ubuntu einfach herunter zu fahren und es per WOL-Addon zu wecken?


    weil mein tvheadend irgend wie manchmal keine richtige verbindung zum kodi herstellen kann ...
    ist zwar sehr selten aber manchmal klappt es eben nich
    und da ist es das einfachste das ganze system neuzustarten


    genau das System ist nicht das gleiche und bei Kodi läuft LibreELEC

  • @padrino

    Magst du mir bitte noch sagen, welches Kodi du verwendest? 19 oder 20?

    Unabhängig davon, dass ich auch der Meinung bin, dass man das Problem auf der Linux-Maschine fixen sollte, habe ich aber auch gerade die Idee zu einem Add-on. Das würde ich generell schreiben wollen (um mal wieder was anderes zu machen ;) ). Dafür müsste ich nur wissen, ob du noch Kodi 19 oder Kodi 20 verwendest.

    Dann weiß ich ob ich es für beide Versionen gangbar machen muss.

    Wertschätzung kostet nichts, aber sie ist von unschätzbarem Wert.

  • Ok. Abgesehen davon, dass das mit dem Addon so nicht funktioniert, wie ich es mir dachte scheint hier auch kein weiteres Interesse mehr zu bestehen ;)

    Wertschätzung kostet nichts, aber sie ist von unschätzbarem Wert.

  • @padrino

    Nimm Xbian damit kannst du ssh Befehle ohne Einschränkungen verwenden - zum Installieren weiterer Linux Pakete und Telerising-api für tvheadend

    Und alles läuft mit 19.4 Matrix Kodi Oberfläche

  • und ich nutzte Xbian mit 19.4 Kodi - da stürzt nichts ab weder direkt über Raspberry gestreamt noch TV weitergeleitet

    Xbian ist auf Debian Basis Bullseye 2022

  • Also....ich habe mich jetzt nochmal ein wenig damit beschäftigt. Vorab möchte ich sagen, dass ich das alles nicht gut und schon sehr hässlich finde. Ich würde mich viel mehr darum kümmern, warum ich den Rechner neu starten muss. Dafür muss es eine Ursache geben. Das würde ich analysieren.

    Anstelle eines Add-ons (wobei man das natürlich auch machen kann), würde ich eher einen Knopf auf meiner Fernbedienung belegen. Diesen Knopf würde ich mit:

    System.Exec(/pfad/zu/sh-script)

    Beispiel: System.Exec(/storage/neustart)

    belegen.

    Das SH-Script, welches dann auf der LE Maschine liegen würde, könnte ungefähr so aussehen:

    Bash
    #!/bin/bash
    
    
    ssh <user>@<ip> "sudo reboot"


    Das erstellst du einfach in /storage/ und nennst es neustart

    Per Knopf auf der FB würde dann das script getriggert werden. <user> und <ip> musst du mit einem User auf der Ubuntu-Kiste und der IP des Ubuntu-Rechners ersetzen

    Voraussetungen dafür:

    • Du erstellst auf der LE Kiste einen SSH-Key-Paar: ssh-keygen -t rsa -b 4096
    • Du kopierst den public-Key von der LE Kiste auf der Ubuntu-Kiste in den Home-Ordner eines Users auf der Maschine in den Unterordner .ssh (z. B. /home/<user>/.ssh)
    • Du sorgst dafür, dass der Befehl "sudo reboot" ohne Passwortabfrage auf der Ubuntu-Kiste ausgeführt werden kann (das machst du über die "sudoers". Dazu weiter unten mehr.

    Sudoers:

    Auf der Ubuntu-Kiste editierst du die Datei: /etc/sudoers

    Dort fügst du folgendes ein:

    Code
    Cmnd_Alias SHUTDOWN_CMDS = /sbin/poweroff, /sbin/halt, /sbin/reboot
    <your username> ALL=(ALL) NOPASSWD: SHUTDOWN_CMDS


    <your_username> ersetzt du mit dem Namen des Users, der auf der Kiste existiert und für den du auch den SSH-Key hinterlegt hast.


    Wenn du dann das Script auf der LE Kiste ausführst, dann öffnet der Befehl darin eine SSH-Session zu der Ubuntu-Kiste und führ dann gleichzeitig sudo reboot aus. Damit das funktioniert, darf keine Passwort-Abfrage kommen. Daher der Eintrag in der /etc/sudoers.

    So, oder so ähnlich könnte das funktionieren. Das ganze geht natürlich auch über ein Add-on. Da ich das aber ohnehin hässlich finde, würde ich es eleganter über einen Knopfdruck der FB machen wollen. Schön ist das aber alles nicht.

    Wertschätzung kostet nichts, aber sie ist von unschätzbarem Wert.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!