Seit Nextcloud24 funktioniert mein cronjob nicht mehr!

Hallo, seit dem Update von NC23 auf NC24 funktioniert mein cronjob nicht mehr und ich weis nicht mehr, was ich noch machen soll!
Zu meiner Konfiguraton:
NC läuft auf meiner Synology-NAS mit DSM DSM 6.2.4-25556 Update 6 in einem seperaten Verzeichnis, der web-Zugriff erfolgt über das Standarverzeichnis “web”.
Wie gesagt - bis Version NC23 funktionierte mein cronjob, seit dem update auf NC24 bekomme ich die Warnmeldung " Letzte Cron-Job-Ausführung: Vor x Monaten". Die Installationsanleitung, auf die verwiesen wird, ist nicht wirklich hilfreich. Ich wende mich hier speziell an Synology-Nutzer, da ich glaube, dass die Installation auf einem Ubuntu-System sich doch in Teilen unterscheidet.
Meine letzte cron-job Aktion ist schon eine ganze Weile her und ich bin mir nicht mehr sicher, welche Schritte durchzuführen sind. Vielleicht kann mir jemand auf die Sprünge helfen?

Danke schon mal für Eure Unterstützung!

DSM kocht in vielerlei Hinsicht ein eigenes Süppchen, daher zählt das system nicht zu den bisher empfohlenen.

Ich denke, du kommst in einem Synology-forum weiter. …

Aber auch da solltest du nicht mit Infos über dein System sparen (hier gibt es zB ein Template, das nach Infos fragt, das du bewusst ignoriert hast…)

Moin! Danke erstmal für Dein Feedback; ich werde mein Problem auch mal im Synology-Forum vorstellen.

Hier noch die vermissten Angaben zu meinem System:

  • Nextcloud Version 24.0.3 lokal auf meiner NAS
    
  • Nextcloud ist in einem separaten Ordner installiert
    
  • NAS Synology DS716 II mit DSM 6.2.4-25556 Update 6
    
  • PHP Version 7.4.9
    
  • Datenbank MariaDB10
    
  • Apache http 2.4
    

Ich hoffe auf weitere Hinweise!

Zuerst schauen wir mal ob der cron überhaupt rennt.
systemctl status cron
solle da ein fehler rennen

Neu starten.
systemctl stop cron

Dann wieder mit
systemctl start cron
starten :wink:

Viel Erfolg!

Danke Nanu, ich gehe mal davon aus, dass die Commands mit putty ausgeführt werden sollen. Aber da geht’s schon los - der Command systemctl ist unbekannt :thinking:

crontab -f

Also wenn du systemctl eingibst wirft er ein fehler aus?
Unter DSM 6 ?

Wenn das mit den crontab -f nicht hinhaut.
/usr/syno/sbin/synoservicectl --restart crond

Hi Nanu, folgende Befehle habe ich ausführen:

root@pr498te-DS716:/usr/syno/sbin# synoservicectl --restart crond
crond restarted.
root@pr498te-DS716:/usr/syno/sbin# systemctl status cron
-ash: systemctl: command not found
root@pr498te-DS716:/usr/syno/sbin# crontab -f
-ash: crontab: command not found
root@pr498te-DS716:/usr/syno/sbin# find . -name “systemctl”
root@pr498te-DS716:/usr/syno/sbin# cd /
root@pr498te-DS716:/# find . -name "systemctl"
root@pr498te-DS716:/#

Den Command systemctl gibt’s auf meinem System nicht; die Suche danach hat nichts ergeben!

Der Inhalt meiner crontab im Verzeichnis /etc sieht wie folgt aus:
PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/syno/sbin:/usr/syno/bin:/usr/local/sbin:/usr/local/bin
#minute hour mday month wday who command
5 * * * * root sudo -u http php74 -f /volume1/web/cron.php --define apc.enable_cli=1
0 23 * * * root /usr/syno/sbin/synopoweroff
0 0 4 * * root /usr/syno/bin/synoschedtask --run id=1
0 8 * * * root /usr/syno/bin/synoschedtask --run id=2
58 2 * * 5 root /usr/syno/bin/synoschedtask --run id=3
0 6 * * * root /var/packages/AntiVirus/target/bin/synoavscan --system
0 3 * * 0 root /var/packages/AntiVirus/target/bin/synoavscan --all

Noch eine Idee?

Fragen gibt es immer :wink:
Schau mal ob der crond rennt.
ps ax|grep crond

Und poste mal die ausgabe.
5 * * * * root sudo -u http php74 -f /volume1/web/cron.php --define apc.enable_cli=1
Und du bist dir sicher das das
/volume1/web/cron.php und nicht
/volume1/web/nextcloud/cron.php

heißen soll ?

Ersetz mal

5 * * * * root sudo -u http php74 -f /volume1/web/cron.php --define apc.enable_cli=1

durch

5 * * * * root /usr/local/bin/php74 /volume1/web/nextcloud/cron.php --define apc.enable_cli=1

und starte mal die gaudi neu…
synoservicectl --restart crond

Sorry für die späte Rückmeldung!

Ich war die letzten Tage nicht zu Hause und habe nichts an meinem System getan!
Und heute- verstehen tue ich das ja nicht! Gerade rufe ich noch mal die Sicherheits- & Einrichtungswarnungen auf und ich traue meinen Augen nicht: ich habe einen grünem Hacken!
Mit genau den Einstellungen, wie ich sie oben beschrieben habe!
Hat es vielleicht etwas damit zu tun, dass ich seit kurzem meine NAS Nachts runter fahre und morgens neu starte?

Ich denke das ist der restart des crond.
Bis das immer angezeigt wird dauert es.
Du darfst nicht vergessen das bis der start erfolgt, kann es 5 min dauern.

Na Hauptsache, es funktioniert wieder! :joy:
Danke Nanu für Deine Unterstützung!

1 Like

Hallo an alle!
Ich mache das Thema wieder auf, weil das Problem nach dem Update auf nextcloud V26.0.0 wieder aufgetreten ist: mein cron-Job wird nicht ausgeführt!
Nochmal zu meinem System:
Synology mit DSM 7.1.1-42962 Update 5 (letzte Version)
Nextcloud 26.0.1
PHP8.0
letzte cron-Job Ausführung vor 13 Tagen

Alle meine Recherchen zu möglichen Ursachen haben zu keinem Ergebnis geführt.
Bis zum Wechsel von V25 nach V26 hat der Cron-Job funktioniert; was sich durch das Update auf V26 geändert hat? Keine Ahnung!
Hat jemand das gleiche Problem und eine Lösung gefunden?
Vielen Dank für Eure Unterstützung!

Hast Du eventuell noch immer php74 in Deiner Zeile stehen? Dann geht es natürlich nicht.
Nextcloud 26 benötigt dafür mindestens PHP 8.0, dann müsstest Du nur die 74 in 80 ändern.

Hallo Crashandy, hab ich natürlich gemacht! Sonst würde Nextcloud26 ja auch nicht laufen :sweat_smile: Aber weder mit php74 (was immer noch installiert ist), noch mit php80 funktioniert es! :thinking:

Was sagt
/etc/init.d/cron status

Und

update-alternatives --list php

Werde ich morgen Abend ausprobieren! Bin gerade unterwegs. Melde mich dann!

Moin, hab die commands gerade ausprobiert - leider ohne Erfolg!
Hier die Resultate:

root@user-DS716:~# cd /root
root@user-DS716:~# ls -all
total 36
drwx------ 2 root root 4096 Apr 15 18:16 .
drwxr-xr-x 24 root root 4096 Apr 27 09:38 …
-rw-r–r-- 1 root root 1313 Jun 22 2022 .profile
-rw-r–r-- 1 root root 2043 Jun 22 2022 .profile.size_check
-rw------- 1 root root 14618 Apr 15 18:16 .viminfo
-rw-r–r-- 1 root root 232 Apr 27 07:07 .wget-hsts
root@user-DS716:~# /etc/init.d/cron status
-ash: /etc/init.d/cron: No such file or directory
root@user-DS716:~# update-alternatives --list php
-ash: update-alternatives: command not found
root@user-DS716:~#

Vorausgesetzt Deine Nextcloud liegt in dem Ordner “/volume1/web/nextcloud”, dann probiere doch einfach einmal diesen Befehl aus:

sudo -u http php80 /volume1/web/nextcloud/cron.php

Funktioniert Dein Cron-Job damit?

Wenn ja, dann musst Du eben im Aufgabenplaner ein benutzerdefiniertes Script anlegen.

Hi, meine cron.php liegt im Ordner /volume1/web/cron.php und lässt sich problemlos ausführen. Was nicht funktioniert ist die Ausführung über crontab, was zuvor funktioniert hatte und wie ich es gerne wieder hätte!
Die Ausfünhrung über ein Script im Aufgabenplaner ist für mich nur eine Hilfslösung!

Ich verstehe zwar nicht, warum Du den Cron-Job unbedingt in die crontab eintragen möchtest und nicht den einfachen Weg über den Aufgabenplaner gehen möchtest, aber auch dieser Weg funktioniert bei mir.

Der Eintrag mit

5 * * * * root sudo -u http php80 -f /volume1/web/nextcloud/cron.php

funktionierte auch bei mir nicht.

Eine etwas abgeänderte Schreibweise führte dann schließlich zum Erfolg.

MAILTO=""
PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/syno/sbin:/usr/syno/bin:/usr/local/sbin:/usr/local/bin
#minute	hour	mday	month	wday	who	command
5	*	*	*	*	root	/bin/su -s /bin/sh -c "/usr/local/bin/php80 -f /var/services/web/nextcloud/cron.php" http
39	22	*	*	0	root	/usr/syno/bin/synoschedtask --run id=28
10	1	28	*	*	root	/usr/syno/bin/synoschedtask --run id=12

Bei Dir dann eben ohne den Unterordner “nextcloud”

5	*	*	*	*	root	/bin/su -s /bin/sh -c "/usr/local/bin/php80 -f /var/services/web/cron.php" http

Probier es einmal so aus.

Edit:
Ich muss mich korrigieren. Der Job wurde nur einmal erfolgreich ausgeführt, danach das gleiche Verhalten wie bei Dir.
Nun kann ich Dir auch nicht mehr helfen. Bei mir funktioniert die Ausführung des Cron-Jobs seit sehr vielen Jahren mit “Hilfe” des Aufgabenplaners völlig problemlos.