crontab/cronjobs | DSM 6-7321

  • 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.
Schau mal mit

lsof | grep cron

, welche crontab da eigentlich verwendet wird.

EDIT: Argh, ich merke gerade, dass ich lsof und cron von ipkg habe, sorry. Probier mal /var/spool/cron/crontabs/root

EDIT: Hast du vielleicht falsche Zeilenenden in der crontab? Mit welchem Editor hast du die ursprüngliche Änderung vorgenommen?
 
Zuletzt bearbeitet:
Ich mache alles mit WinSCP und dann entweder mit dem interen Editor oder dann Notepad++. Wie soll ich falsche Zeilenenden feststellen?. Mit dem Kommando erhalte ich

/$ lsof | grep cron
-ash: line 47: lsof: command not found

/var/spool/cron/crontabs/root gibts bei mir ja nicht.
 
Du kannst wie folgt vorgehen:

CTAB=/etc/crontab # wenn das denn die richtige crontab ist...
cp -a ${CTAB} ${CTAB}.orig
tr -d '\015' < ${CTAB}.orig > ${CTAB}

Dann den crond zur Sicherheit neu starten.
 
Hm, weiss nicht recht. Ich bekomme

/$ ctab | grep cron
-ash: line 48: ctab: command not found

Die anderen Befehle habe ich nacheinander in die WinSCP-Konsole eingegeben. Das sah dann so aus :

/$ CTAB=/etc/crontab
/$ cp -a ${CTAB} ${CTAB}.orig
/$ tr -d '\015' < ${CTAB}.orig > ${CTAB}
 
Du hast den Inhalt mit den Kommandos in eine neue crontab kopiert, wenn ich das richtig sehe. Das hat auch funktioniert. Nach dem präventiven Neustart der DS hat sich aber nichts geändert, die crontab wird nicht ausgeführt. Die einzelnen Zeilen kann ich manuell ausführen, das funktioniert. So langsam glaube ich, das Ganze ist buggy. Ich hatte ja auf meiner DS414 auch schon mal DSM 6 drauf. Da war dasselbe. Ich frage mich nur, wieso es bei manchen offenbar funktioniert.
 
Durch den Code wurden ein Backup angelegt und aus der /etc/crontab eventuelle DOS-Zeilenenden entfernt.

Leider bin ich nun ebenfalls überfragt, warum das alles nicht geht :(
 
Hallo,
wirkliche Ideen hab ich nicht mehr, aber noch einen versuch
echo "Hallo Andy" &>>/tmp/test.txt

Gruß Götz
 
Zuletzt bearbeitet:
Ich habe in die crontab eingebaut :

* * * * * root /bin/echo 'Hallo Andy, Einmal pro Minute neu' >/tmp/test.txt

Aber es ist wie zuvor, es passiert nichts. Gebe ich

/bin/echo 'Hallo Andy, Einmal pro Minute neu' >/tmp/test.txt

über die Konsole ein, wird auch die Datei anstandslos angelegt. Das alles nun, kann doch nur bedeuten, daß mit der Installation von DSM 6 nicht alle Systemverzeichnisse und -dateien angelegt werden, wenn es zB. schon mal die /var/spool/cron/crontabs/root nicht gibt usw. Oder was soll ich da besser denken?
 
Hallo,
nimm mal die Zeile aus Beitrag #47, das & sollte auch Fehlermeldungen in das test.txt schreiben.

Gruß Götz

PS: /var/spool/cron/crontabs/root gibt es bei mir auch nicht, man kann die DS nicht direkt mit einem Standard-Linux vergleichen.
 
Okay, habe nun

* * * * * root /bin/echo "Hallo Andy, Einmal pro Minute neu" &>>/tmp/test.txt

aber die Datei wird ja nach wie vor gar nicht erst angelegt durch die crontab. Wenn ich manuell über die Konsole

/bin/echo "Hallo Andy, Einmal pro Minute neu" &>>/tmp/test.txt

eingebe, dann erscheint diese im tmp-Verzeichnis mit dem Text.
 
Hallo,
schau Dir mal /var/log/messages an ob es relevante Einträge zu crond gibt.

Gruß Götz
 
Das einzige, was sich begrifflich mit "crond" darin findet ist :

Apr 16 20:58:17 Synology-712 synoscgi_SYNO.Core.Package.Control_1_start[31527]: resource_api.cpp:163 Acquire synocrond for DownloadStation when 0x0001 (done)

sonst gibts da nichts. Ich weiß nicht recht, ich habe ja einen Doppelreset durchgeführt, den ersten mit 1-mal-Piep, den zweiten kurz danach mit 3-mal-Piep. Danach wurde ich nach Aufruf des Servers aufgefordert, DSM 6 zu installieren. Dann ist das doch eine Neuinstallation, oder nicht?
 
Doch, das ist ein doppelter Reset mit Neuinstallation des DSM.
 
Ja, denk ich doch auch. Dann versteh ich das mit der crontab nicht, das müsste doch ein Installationsfehler sein. Welche Komponenten müssen denn da sein und laufen, damit die crontab automatisch abarbeitet?
 
Unn nu? Hat keiner mehr etwas Latein?
 
Hast Du schon ein Ticket eröffnet? Ansonsten per EBI strace installieren und damit den crond einmal laufen lassen. Damit siehst Du, was der macht.
 
Ich habe nun ein Ticket platziert. Mal sehen.

Wo kann man denn die Komponenten für das EBI strace downloaden?
 
EBI ist ein Paket, mit man bequem IPKG oder neuere Paketmanager gleicher Art installieren kann. Findest Du per Suche. Damit kannst Du dann strace installieren. Mach das aber erst, wenn Du mit Synology durch bist, weil die den Support sonst ablehnen.
 
Bis jetzt habe ich keine Antwort von Synology. Jedoch ist es nun so, daß die Zeilen

*/5 * * * * root /bin/echo "Hallo Andy, Einmal pro Minute neu" &>>/tmp/test.txt
*/10 * * * * root /bin/echo "Hallo Andy, Zweimal pro Minute neu" &>>/tmp/test2.txt

jeweils den File nun anlegen. Das würde bedeuten, daß der cron wieder läuft. Weshalb, fragt bitte nicht.
 
Aber keine dieser Zeilen läuft mit DSM 6 :

*/15 * * * * root /usr/local/bin/php56 /volume1/web/owncloud/data/scripts/cron_lock_unlock.sh >> /volume1/web/owncloud/data/logs/cron_lock_unlock_$(date +%Y-%m-%d_%H-%M-%S).log 2>&1
*/15 * * * * root /bin/su -s /bin/sh -c "/usr/local/bin/php56 -f /volume1/web/owncloud/cron.php" http >> /volume1/web/owncloud/data/logs/cron_php_$(date +%Y-%m-%d_%H-%M-%S).log 2>&1
0 22 * * * root crond -bS -l 0 -L cron_logging.log -c /volume1/web/owncloud/data/logs

0,30 7-23 * * * root /bin/su -s /bin/sh -c "cd /volume1/web/owncloud && /usr/local/bin/php56 -f occ files:scan rescan" http >> /volume1/web/owncloud/data/logs/cron_rescan_rescan_$(date +%Y-%m-%d_%H-%M-%S).log 2>&1
10 22 * * * root /bin/su -s /bin/sh -c "cd /volume1/web/owncloud && /usr/local/bin/php56 -f occ files:scan --all" http >> /volume1/web/owncloud/data/logs/cron_rescan_all_$(date +%Y-%m-%d_%H-%M-%S).log 2>&1

Die Einträge laufenn mit DSM 5.2 (bis auf "/usr/bin/php" statt "/usr/local/bin/php56") anstandslos. Wo ist der Unterschied ?
 
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