cron mit getmail lauft nicht aus wiki:Externe Accounts abrufen

  • Ab sofort steht euch hier im Forum die neue Add-on Verwaltung zur Verfügung – eine zentrale Plattform für alles rund um Erweiterungen und Add-ons für den DSM.

    Damit haben wir einen Ort, an dem Lösungen von Nutzern mit der Community geteilt werden können. Über die Team Funktion können Projekte auch gemeinsam gepflegt werden.

    Was die Add-on Verwaltung kann und wie es funktioniert findet Ihr hier

    Hier geht es zu den Add-ons

Status
Für weitere Antworten geschlossen.

bbg1

Benutzer
Registriert
30. Jan. 2010
Beiträge
10
Reaktionspunkte
0
Punkte
0
hallo forum,

ich habe nachdem ich alles schritt für schritt nach http://www.synology-wiki.de/index.php/Externe_Accounts_abrufen eingetragen habe folgenses problem.

bis zum test von sh getmail.sh läuft alles prima die mails werden abgerufen und ins .Maildir abgelegt.

wenn ich aber die crontab anlege

egon
*/1 * * * * /volume1/homes/egon/getmail.sh &>/dev/null

danach chmod 600 und user für egon setze passiert nichts.

cron habe ich mit

/opt/etc/init.d/S10cron neu gestartet.

was habe ich vergessen was mache ich falsch. bitte nicht zu kurz antworten, ich bin ein noob ;)

cu alex
 
Zeig mal den Inhalt von getmail.sh Vermutlich liegt es daran, dass keine absoluten Pfade verwendet wurden.
 
hi jahlives,
hier der inhalt :

#!/bin/sh
/opt/bin/getmail --getmaildir /volume1/homes/egon/.getmail --rcfile=getmailrc-test

aber mit

su egon

sh getmail.sh

funzt es. nur wenn ich es mit cron versuche läuft nichts. ich weiß nicht wo ich nachschauen soll, da kein log vorhanden.
 
Gib mal einen kompletten Pfad beim rc-file an. Unter welchem User läuft denn dein cronjob? Unter deinem User egon?
 
ja unter egon und ich hatte vorher

#!/bin/sh
/opt/bin/getmail --rcfile /volume1/homes/egon/.getmail/getmailrc-test

stehen hat auch nur mit sh aufruf gefunzt. ich denke das getmail.sh ok ist.
habe sie mit chmod 770 getmail.sh lauffähig gemacht so wie es im wiki steht. bis zum abschnitt cron geht ja auch alles.
 
Als welcher User hast du denn den Shell Befehl abgesetzt? Als root oder egon? Die Datei getmail.sh gehört auch sicher deinem Benutzer egon?
 
als egon

dann kommen die mails ins richtige verzeichnis.

die neue syntax mit maildir habe ich von der getmail dokumentation für version 4
 
Bis jetzt scheinst du alles richtig gemacht zu haben. Am Script dürfte es also nicht liegen.
Die crontab Datei liegt im korrekten Verzeichnis? Ist glaub ich /opt/var/cron/crontabs/
Du kannst den cron auch mal testen.
Code:
killall cron
cron -x test
Warte eine Minute. cron sollte dir jeden Job anzeigen, den er ausführen würde. Wird dein getmail angezeigt?
 
ja datei egon steht in dem verzeichnis und gehört auch benutzer egon

so cron im testmodus gestartet. das kommt

log_it: (egon 7541) CMD (/volume1/homes/egon/getmail.sh &>/dev/null^M)


was muss ich jetzt tun? für mich sieht das ganz ok aus
 
er führt letztendlich die getmail.sh nicht aus wenn ich sie nicht per hand mit sh aufrufe.

normalerweise sollte cron das doch erledigen können nachdem ich mit chmod 770 getmail.sh die skriptdatei dafür vorbereitet habe, oder? kann ich überprüfen, ob die datei entsprechen mit chmod geändert wurde?

wenn ich
su egon

und dann

sh /volume1/homes/pfaff/getmail.sh &>/dev/null

eingebe, funzt es. irgendwie kann cron nicht CMD /volume1/homes/pfaff/getmail.sh &>/dev/null ausführen.

wie bekomme ich die getmail.sh in das richtige format , ausführbare skript irgendwie liegt da mein fehler. chmod kann ich ja nur als root oder admin machen. irgendwas mache ich falsch. stimmt der parameter 770?
 
Zuletzt bearbeitet:
log_it: (egon 7541) CMD (/volume1/homes/egon/getmail.sh &>/dev/null^M)
Das fett markierte sieht nach einem Steuerzeichen in der crontab Datei aus. Das würde ich mal löschen.
Mittels
Code:
ls -all /path/to/file
kannst du dir die Rechte einer Datei anzeigen lassen
 
also mit

*/1 * * * * sh[/COLOR][/COLOR] /volume1/homes/pfaff/getmail.sh &>/dev/null

in der crontab funzt es.

das steuerzeichen hab ich mal raus und sh auch wieder raus. dann geht es nicht.

also lass ich es jetzt mit sh laufen, oder spricht da etwas dagegen? ich muss ja dann doch einen fehler bei getmail.sh haben . rechte liegen bei egon mit wr. das sollte ja reichen.

falls du keine bedenken hast, warum das sh nicht im cronjob stehen sollte lass ich das so und danke dir recht herzlich für deine hilfe.

lg alex
 
sh oder nicht sh ist eigentlich egal. Da es aber mit sh funzt würde ich mal vermuten, dass deine getmail.sh nicht ausführbar war
 
cron geht nicht

Hallo,
bin nun wirklich kein Linux-Crack, aber

/volume1/homes/egon/getmail.sh &>/dev/null^M

mich irritiert das ^M am Ende der Zeile.

Meine Ausgabe zeigt das nicht.
Hast du eventuell eine der Dateien mit Windows Progs erstellt? Die benutzen ein anderes Zeilenendezeichen, als Linux.

Nur so ein Gedanke

Ph.
 
Status
Für weitere Antworten geschlossen.
 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat