[gelöst] Cron Manager

  • Ich habe hier den Cron Manager von gutemine (enigma2-plugin-extensions-cronmanager_2.3_all.ipk).
    Zwei Fragen:
    1. Läuft der problemlos unter GP4 (oder gibt es was adäquates für GP4)
    2. Wo muss das teil hin, damit ich es manuell installieren kann?

    2 Mal editiert, zuletzt von RvM ()

  • Das kenn ich - aber irgendwie kapiere ich das Plugin nicht ganz. Du kannst damit nur "crontest.sh" in /usr/bin anlegen - mehr nicht. Alles ander muss man manuell einstellen.
    Ich möchte gerne, das jeden morgen um 7.15 Uhr rsync laufen soll.
    Was genau tun?

    • Offizieller Beitrag

    So wäre dann die Konfig im GP4, siehe Screenshot.
    Oder via cli die crontab: 15 07 * * * /usr/bin/crontest.sh


    Script muss man natürlich anpassen.


    Bye the way warum nutzt du nicht das rsync GP4 Plugin?
    Da kannst du auch rsyncen und kriegst ein script (unter Verzeichnis /root) welches du dann via cron shedulen kannst.

  • Zitat

    Original von mfgeg
    Bye the way warum nutzt du nicht das rsync GP4 Plugin?
    Da kannst du auch rsyncen und kriegst ein script (unter Verzeichnis /root) welches du dann via cron shedulen kannst.


    Aber dein Screenshot ist doch das Plugin? und das nutze ich

  • Der Screenshot zeigt den GP4 cron Manager. Aber es gibt auch ein rsync Plugin im GP4.


    1) Du erzeugst ein rsync Script im rsync GP4 Plugin. Liegt dann als Script in /root/
    2) Du planst ein cron Job des obigen Scripts im cron GP4 Plugin, welches täglich um 7:15 Uhr läuft


    Also 2 Tools == 2 Plugins. Die Verbindung beider generiert dann Dein gewünschtes Ergebnis.

  • So, ich habe nun die Einstellungen bei dirsync und bei cron eingerichtet.
    Und nun?
    Im liegt nun eine 'gsync_sync.sh' die wie folgt aussieht

    Bash
    #!/bin/sh
    
    
    /usr/bin/grsync -b -n 'sync' -s '/media/hdd/movie/' -d '/media/gp4share/dream/movie/' &


    In /usr/bin liegt eine 'crontest.sh', die wie folgt aussieht:

    Bash
    #!/bin/sh
    
    
    logger $0 "cron-test"


    Wie aber weiss nun das System, das es jeden Morgen um 7.15 Uhr die Verzeichnisse synchroniesieren soll?

  • Hat das Script executable Flags?


    Code
    # ls -l /root/dreamsync.sh

    Wenn da keine x vorne in den Permissions zu sehen sind, dann:


    Code
    # chmod +x /root/dreamsync.sh

    Zum Test das Script mal manuell starten ist auch eine Möglichkeit!


    Zur Sicherheit überprüfen, dass der cron Job auch eingetragen ist:


    Code
    # crontab -l

  • Eigentlich müsste alles laufen - siehe screenshot


    Wenn ich allerdings das Script manuell aufrufe, kommt folgende Fehlermeldung:

    Code
    # /root/dreamsync.sh
    # /root/dreamsync.sh: line 3: /usr/bin/grsync: No such file or directory
  • Ich vermute Dein rsync Befehl im Script ist ein Symlink auf grsync und dies scheint zu fehlen?


    Code
    # ls -l /usr/bin/*rsync*
  • Zitat

    Original von __QT__
    Ich vermute Dein rsync Befehl im Script ist ein Symlink auf grsync und dies scheint zu fehlen?


    Code
    # ls -l /usr/bin/*rsync*


    Erst einmal Danke für deine Hilfe - aber du redest mit einem Linux-Laien :winking_face:
    das kommt als Ergebnis, wenn ich den o.g. Befehl ausführe

    Code
    # ls -l /usr/bin/*rsync*
    -rwxr-xr-x    1 root     root         11796 Jun 18 11:58 /usr/bin/gprsync
    -rwxr-xr-x    1 root     root        416968 Feb  9  2018 /usr/bin/rsync
  • Ist doch kein Problem. Du schlägst Dich doch tapfer.


    Wie ich gedacht habe. Es wird nach /usr/bin/grsync gesucht, es existiert aber ein /usr/bin/gprsync


    Ich vermute, das File ist ein Teil eines GP4 Pakets. Findest Du so raus:


    Code
    # dpkg -S /usr/bin/grsync

    Für einen test könntest Du das mal kopieren, damit es unter beiden Namen vorhanden ist. Könnte aber eventell ein Bug in dem ermittelten Paket sein. mfgeg wird dazu vielleicht was sagen können. Ich habe kein GP4 auf der Box. Kopier mal die Datei und führe dann nochmal Dein sync Script manuell aus:


    Code
    # cd /usr/bin ; cp gprsync grsync
  • Die erste Anfrage ergab:

    Code
    # dpkg -S /usr/bin/grsync
    dpkg-query: no path found matching pattern /usr/bin/grsync


    Habe dann mit dem Script die Datei umbenannt und dann das Script mit manuell gestartet.
    Aus dem root passiert folgendes:

    Code
    # dreamsync.sh
    -bash: /usr/bin/dreamsync.sh: /bin/bash^M: bad interpreter: No such file or directory


    Wenn ich aber so manuell starte:

    Code
    # /root/dreamsync.sh


    wird nix angezeigt, aber dirsync läuft dennoch nicht (siehe Screenshot)


    *edit* habe mal testweise eine Datei mit FTP auf die Dreambox geschaufelt und dann das Script mit

    Code
    # /root/dreamsync.sh


    nochmal gestartet. Läuft! Die Testdatei ist auf dem NAS.
    D.h. das es jetzt eigentlich laufen soll.
    Danke an die Unterstützer. Falls es wieder erwarten Probleme geben sollte. melde ich mich nochmal.
    Setze diesen Thread erst einmal auf *gelöst*