[+++ Gelöst +++] Script zum Server fern Reboot vom Dream aus über Telnet/SSH

    Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

    • das dauer 22 sec auf dem server in den script ist nur der befehl anders sonst nix
      hier der script


      #!/bin/sh
      # Reboot Camow
      echo "Restart-Camow"
      ssh -y -i /etc/dropbear/key.priv root@192.168.1.100 'osiris_start restart'


      ich habe einmal den über konsole gestartet und da kommen von server fehler meldung die das verursachen könne das der script nicht beendet werde kann
      ich glaube denn muss ich mir neu aufsetzten und nach eine alternative suchen :)

      das ganze ist nur für meine Frau :) wenn Sie merkt das nix mehr läuft das die jetzt per FB das machen kann was ich immer sonst per pc mache wenn der Hund warum auch immer eingeschlafen ist :)

      danke mfg

      Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von jabba76 ()

    • dann ist der fehler wohl am script am server zu suchen ...

      bei mir dauert der erste Befehl auch länger, wenn längere zeit keine verbindung zum server hergestellt war - besser 22 sec als keine reaktion ;)


      wg. dem plugin, das ganze stammt von hier -> Ihad enigma2 Plugin Tutorial - lession 5

      die original plugin.py sieht so aus:

      Python-Quellcode

      1. # Ihad.tv enigma2-plugin tutorial 2010
      2. # lesson 5
      3. # by emanuel
      4. from Screens.Screen import Screen
      5. from Screens.Console import Console
      6. from Components.MenuList import MenuList
      7. from Components.ActionMap import ActionMap
      8. from Plugins.Plugin import PluginDescriptor
      9. ###########################################################################
      10. class MyShPrombt(Screen):
      11. skin = """
      12. <screen position="100,150" size="460,400" title="Ihad.tv tutorial e2-tutorial lesson 5" >
      13. <widget name="myMenu" position="10,10" size="420,380" scrollbarMode="showOnDemand" />
      14. </screen>"""
      15. def __init__(self, session, args = 0):
      16. self.session = session
      17. list = []
      18. list.append(("netstat", "com_one"))
      19. list.append(("ls -ls /", "com_two"))
      20. list.append(("mount", "com_tree"))
      21. list.append((_("Exit"), "exit"))
      22. Screen.__init__(self, session)
      23. self["myMenu"] = MenuList(list)
      24. self["myActionMap"] = ActionMap(["SetupActions"],
      25. {
      26. "ok": self.go,
      27. "cancel": self.cancel
      28. }, -1)
      29. def go(self):
      30. returnValue = self["myMenu"].l.getCurrentSelection()[1]
      31. print "\n[MyShPrombt] returnValue: " + returnValue + "\n"
      32. if returnValue is not None:
      33. if returnValue is "com_one":
      34. self.prombt("/bin/netstat")
      35. elif returnValue is "com_two":
      36. self.prombt("/bin/ls -ls /")
      37. elif returnValue is "com_tree":
      38. self.prombt("/bin/mount")
      39. else:
      40. print "\n[MyShPrombt] cancel\n"
      41. self.close(None)
      42. def prombt(self, com):
      43. self.session.open(Console,_("start shell com: %s") % (com), ["%s" % com])
      44. def cancel(self):
      45. print "\n[MyShPrombt] cancel\n"
      46. self.close(None)
      47. ###########################################################################
      48. def main(session, **kwargs):
      49. print "\n[MyShPrombt] start\n"
      50. session.open(MyShPrombt)
      51. ###########################################################################
      52. def Plugins(**kwargs):
      53. return PluginDescriptor(
      54. name="05 My Shell Prombt",
      55. description="lesson 5 - Ihad.tv e2-tutorial",
      56. where = PluginDescriptor.WHERE_PLUGINMENU,
      57. icon="../ihad_tut.png",
      58. fnc=main)
      Alles anzeigen


      ich hab´s so abegändert

      Python-Quellcode

      1. from Screens.Screen import Screen
      2. from Screens.Console import Console
      3. from Components.MenuList import MenuList
      4. from Components.ActionMap import ActionMap
      5. from Plugins.Plugin import PluginDescriptor
      6. ###########################################################################
      7. class MyShPrombt(Screen):
      8. skin = """
      9. <screen position="100,150" size="460,400" title="Remote Server" >
      10. <widget name="myMenu" position="10,10" size="420,380" scrollbarMode="showOnDemand" />
      11. </screen>"""
      12. def __init__(self, session, args = 0):
      13. self.session = session
      14. list = []
      15. list.append(("show free", "com_1"))
      16. list.append(("show uptime", "com_2"))
      17. list.append(("show mount", "com_3"))
      18. list.append(("mount eSATA Disk", "com_4"))
      19. list.append(("umount eSATA Disk", "com_5"))
      20. list.append(("reboot", "com_6"))
      21. list.append((_("Exit"), "exit"))
      22. Screen.__init__(self, session)
      23. self["myMenu"] = MenuList(list)
      24. self["myActionMap"] = ActionMap(["SetupActions"],
      25. {
      26. "ok": self.go,
      27. "cancel": self.cancel
      28. }, -1)
      29. def go(self):
      30. returnValue = self["myMenu"].l.getCurrentSelection()[1]
      31. print "\n[MyShPrombt] returnValue: " + returnValue + "\n"
      32. if returnValue is not None:
      33. if returnValue is "com_1":
      34. self.prombt("/usr/script/server_free.sh 2>/dev/null")
      35. elif returnValue is "com_2":
      36. self.prombt("/usr/script/server_uptime.sh 2>/dev/null")
      37. elif returnValue is "com_3":
      38. self.prombt("/usr/script/server_mount.sh 2>/dev/null")
      39. elif returnValue is "com_4":
      40. self.prombt("/usr/script/server_mount_eSATADisk.sh 2>/dev/null")
      41. elif returnValue is "com_5":
      42. self.prombt("/usr/script/server_umount_eSATADisk.sh 2>/dev/null")
      43. elif returnValue is "com_6":
      44. self.prombt("/usr/script/server_reboot.sh 2>/dev/null")
      45. else:
      46. print "\n[MyShPrombt] cancel\n"
      47. self.close(None)
      48. def prombt(self, com):
      49. self.session.open(Console,_("start shell com: %s") % (com), ["%s" % com])
      50. def cancel(self):
      51. print "\n[MyShPrombt] cancel\n"
      52. self.close(None)
      53. ###########################################################################
      54. def main(session, **kwargs):
      55. print "\n[MyShPrombt] start\n"
      56. session.open(MyShPrombt)
      57. ###########################################################################
      58. def Plugins(**kwargs):
      59. return [PluginDescriptor(name="Remote Server", description=_("commands to remote server"), where = PluginDescriptor.WHERE_PLUGINMENU, fnc=main),
      60. PluginDescriptor(name="Remote Server", description=_("commands to remote server"), where = PluginDescriptor.WHERE_EXTENSIONSMENU, fnc=main)]
      Alles anzeigen

      und nach /usr/lib/enigma2/python/Plugins/Extensions/RemoteServer kopiert

      für jeden neuen befehl zwei neue Einträge erstellen

      Quellcode

      1. list.append(("neuer Befehl ", "com_x"))


      Quellcode

      1. elif returnValue is "com_x":
      2. self.prombt("/usr/script/script_das_ausgeführt_werden_soll.sh 2>/dev/null


      leere "__init.py__" nicht vergessen, nach jeder Änderung GUI-Neustart

      und für jeden Befehl das entsprechende script erstellen (egal wo, der pfad muss in der plugin.py stimmen)

      have fun ;)
      Gruß Fred

      Die Dreambox ist tot, es lebe die Dreambox

      ¯\_(ツ)_/¯

      Quellcode

      1. root@dm920:~$ mount | grep "/ "
      2. /dev/mmcblk1p1 on / type ext4 (rw,relatime,data=ordered)
      3. root@dm920:~$

      Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von Fred Bogus Trumper ()

    • Original von Fred Bogus Trumper
      schlafen ...?

      was ist das =)


      :) heee ja ja ich habe auf gelöst umgestellt jetzt noch eine Frage an dich :)
      kann ich das ganze auf anderen Forum in andere sprache veröffentlichen ??

      kann Mann das Thema anders benenen ?? schlagmal was vor

      danke mfg

      Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von jabba76 ()

    • ich habe das ja auch nicht erfunden ;)

      die hälfte ist auch copy&paste

      aber ein "thx to Fred Bogus Trumper @ newigma2.to" kann auch nicht schaden ;)

      solange es kein vu forum ist :P
      Gruß Fred

      Die Dreambox ist tot, es lebe die Dreambox

      ¯\_(ツ)_/¯

      Quellcode

      1. root@dm920:~$ mount | grep "/ "
      2. /dev/mmcblk1p1 on / type ext4 (rw,relatime,data=ordered)
      3. root@dm920:~$

      Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von Fred Bogus Trumper ()

    • ok werde ich machen und wie soll ich das Thema hier abändern ?? ich nix so gut in deutsch :) fals eine sowas sucht

      nein es ist allgemeine forum in Polnische sprache für alle sat boxen :)

      aber vu+ ist zu empfehlen :) alleine schon um sich ein Bild zu machen
      kaufen-testen-verkaufen :) obwohl meine gebe ich nicht mehr her :)


      ok dann lasse ich das so

      danke mfg good night :)

      Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von jabba76 ()

    • warum abändern?

      für mich passt er titel so wie er ist ...

      auser "Scrypt ..." besser wäre "Script ..." ;)

      wenn du schon so fragst =)
      Gruß Fred

      Die Dreambox ist tot, es lebe die Dreambox

      ¯\_(ツ)_/¯

      Quellcode

      1. root@dm920:~$ mount | grep "/ "
      2. /dev/mmcblk1p1 on / type ext4 (rw,relatime,data=ordered)
      3. root@dm920:~$

      Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von Fred Bogus Trumper ()