Wie Cronjob einrichten?

  • Hi


    ich wollte mal solangsam meinen Dynamic DNS über meine VDR Box aktualisieren lassen. Als Programm hab ich da mal ddclient genommen.
    Aber da ich mit Linux fast nie zurechtkomme, wenn mal was neues da ist, krieg ich natürlich den Daemon Mode nicht hin.
    Da hab ich mal geguckt, ob ich das mit cronjob schaffe.


    Aber wie sollte es anders sein...Auch hier bin ich zu blöd.
    Hab schonmal ein paar manpages durchgeackert, aber da war das für mich auch nicht wirklich verständlich!
    Dann hab ich mal was von crontab gelesne, hab das auch ausprobiert, und konnte was eintragen, mit crontab -l steht dann auch ein Eintrag da.
    Aber, oh wunder, es geht natürlich nicht!


    in /var/mail/root steht:



    Kann mir mal wer sagen, was daran nicht stimmt? in crontab hab ich eingefügt: 10 * * * * * /usr/sbin/ddclient


    ddclient ist auch in /usr/sbin drin...daran kanns so nicht liegen, außerdem kann ich es ja manuell ausführen


    Wäre für jede Hilfe dankbar!

    PIII 500, 128 MB RAM, Voodoo Banshee
    Nexus-s, Nova-s, SB Live 1024, 40x4 LCD, 80 GB Festpaltte

  • Hi,


    das ist wohl ein Sternchen zuviel in der crontab!


    Siehe #man 5 crontab


    ...
    The time and date fields are:


    field allowed values
    ----- --------------
    minute 0-59
    hour 0-23
    day of month 1-31
    month 1-12 (or names, see below)
    day of week 0-7 (0 or 7 is Sun, or use names)
    ...


    HTHH
    Jürgen :)


  • Das muss ich gleich mal ausprobieren!
    Danke ;)

    PIII 500, 128 MB RAM, Voodoo Banshee
    Nexus-s, Nova-s, SB Live 1024, 40x4 LCD, 80 GB Festpaltte

  • hallo,


    der fehler ist ja das in der letzten zeile...


    /bin/sh: bin: command not found

    gibt es /bin/sh ? sonst eine andere shell in die SHELL variable in der /etc/crontab eintragen. z.bsp. /bin/bash. oder aber einen symb. link von /bin/sh auf /bin/bash eintragen.


    ich vermute, dass es daran liegt... sonst


    in welche crontab hast du es denn eingetragen ? es gibt eine systemweite unter /etc/crontab und die user-crontabs, die man nur mit dem crontab kommando editieren sollte.


    in /etc/crontab muss zusätzlich noch der username eingetragen werden, mit dem das kommando ausgeführt werden soll. bei den user-crontabs wird automatisch der username genommen.


    poste mal die crontab, in der der eintrag steht....


    soweit erstmal...


    bye, michael

    Hardware: AMD Athlon 550, 256MB RAM, FJS Rev.1.6 mit RGB und Digi-out, CI-Modul, Irdeto Allcam 4.7SE, 120GB HD, Realtek 8139, Pinnacle PCTV Sat IR Receiver Seriell
    Software: Suse 8.1, VDR 1.2.1, dvb-20030725, dvd, mp3, image, osd-teletext, stream, vcd

  • Hi,


    ich denke, es liegt trotzdem nur an dem Stern zu viel. Steht ja auch in der Mail an root:


    Subject: Cron <root@video> * /usr/sbin/ddclient


    Das möchte der Cron ausführen!


    Die Cron-Shell erwartet hier das auszuführende Kommando. Und den * expandiert sie zu "bin", weil es halt der erste Eintrag im /-Verzeichnis ist. Und "bin" kann sie dann nicht ausführen, ergo die Fehlermeldung.


    Aber Hellstorm wird uns berichten.


    Oberlehrerhafte Grüße
    Jürgen ;)

  • :respekt guter hinweis.... so genau hatte ich gar nicht geschaut (und vor allem die sternchen nicht gezählt ;) ).


    das wird's sein.


    alter sternchenzähler :D (ab sofort vdr-deutsch für korinthenkacker :engel1 )


    bye, michael

    Hardware: AMD Athlon 550, 256MB RAM, FJS Rev.1.6 mit RGB und Digi-out, CI-Modul, Irdeto Allcam 4.7SE, 120GB HD, Realtek 8139, Pinnacle PCTV Sat IR Receiver Seriell
    Software: Suse 8.1, VDR 1.2.1, dvb-20030725, dvd, mp3, image, osd-teletext, stream, vcd

  • Jap, daran hats gelegen
    Der hat ddclient nach der umstellung regelmäßig ausgeführt, und n anderes Programm auch noch


    Nachdem ich das umgestellt hab, kamen übrigens keine anderen Mails davon mehr in /var/mail/root


    und das crontab hab ich einfach mit crontab -e gestartet, als ich in root eingeloggt war..nichts besonderes gemacht


    Da kommen halt nur so mails rein:



    Aber das muss ja auch so sein, un ddas kam ja auch von dem programm selber, nicht von crontab oder job!


    Danke!

    PIII 500, 128 MB RAM, Voodoo Banshee
    Nexus-s, Nova-s, SB Live 1024, 40x4 LCD, 80 GB Festpaltte

    Einmal editiert, zuletzt von Hellstorm ()

  • Hallo,


    hab derzeit auch etwas Probleme einen cronjob ans Laufen zu bekommen.


    Der Job soll mir jede Stunde den verfügbaren Speicherplatz ins Log schreiben.


    Dazu habe ich einen kleinen Script (/bin/dfdump, ausführbar für alle) angelegt:

    Zitat

    #!/bin/bash
    df | logger


    Manuell aufgerufen wird die Speicherübersicht ins Log eingetragen!


    Per crontab -e habe ich dann eine Zeile in die crontab eingetragen:

    Zitat

    59 * * * * /bin/dfdump


    Leider wird der Befehl nie (auch nach reboot) abgearbeitet!
    Es gibt auch keine Fehlermeldung!


    Was fehlt noch?
    Wie macht man es richtig? ?(

    MfG
    Thomas


    yaVDR 0.5: MSI K9AG Neo2-Digital, Athlon X2 BE-2400, RAM: 4GB; HDMI: ZOTAC GT610; HDD: 3TB; DVB-S2: 2x TBS-6981 Doppel-Tuner; FB: Pollin X10
    Streaming-Clients: S100 mit 2,5"-HDD unter Zendeb 0.3 von Egalus

  • Hast du mal in /var/log/syslog oder /var/log/messages oder /var/log/cron oder in deinem Postkorb geschaut? Cron schreibt meiner meinung nach eher sogar zuviel weg als zu wenig.
    Alternativ schau mal ob dein crond überhaupt gestartet ist (ps ax|grep -i cron), vielleicht wird der ja gar nicht beim Systemstart gestartet.

  • Hallo,


    wie aus meiner Signatur zu entnehmen nutze ich LinVDR. Hier läuft aufgrund der verwendeten Busybox einiges anders als anderen kleinen Linuxen!
    D.h. ich hab bei der o.g. Einstellung keine Meldungen bekommen.


    Nach etwas Literaturrecherche habe ich die crontab ein wenig angepaßt:

    Zitat

    crontab:
    SHELL = /bin/sh
    PATH = /etc:/bin:/sbin:/usr/bin:/usr/sbin
    # m h dom mon dow command
    0-59/2 * * * * df | logger


    Jetzt bekomme ich "wenigstens" einen Warnhinweis:

    Zitat

    Logdatei:
    Dec 10 20:21:01 linvdr cron.warn crond[65]: Ifailed user root parsing SHELL = /bin/sh
    Dec 10 20:21:01 linvdr cron.warn crond[65]: Ifailed user root parsing PATH = /etc:/bin:/sbin:/usr/bin:/usr/sbin


    Ausgeführt wird der Befehl trotzdem nicht!

    MfG
    Thomas


    yaVDR 0.5: MSI K9AG Neo2-Digital, Athlon X2 BE-2400, RAM: 4GB; HDMI: ZOTAC GT610; HDD: 3TB; DVB-S2: 2x TBS-6981 Doppel-Tuner; FB: Pollin X10
    Streaming-Clients: S100 mit 2,5"-HDD unter Zendeb 0.3 von Egalus

Jetzt mitmachen!

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