[gelöst] cron läuft oder läuft nicht?

Du kommst mit der Installation nicht voran oder willst noch was nachfragen? Schau auch in den "Tipps und Tricks"-Bereich.
Antworten
Benutzeravatar
chralt
Beiträge: 31
Registriert: 31.07.2016 10:34:14
Kontaktdaten:

[gelöst] cron läuft oder läuft nicht?

Beitrag von chralt » 14.07.2020 16:10:33

Hallo Zusammen,

ich habe ein auf einem Kleinrechner (NUC) laufendes Debian 10. Nachinstalliert habe ich unter anderem Proxomx was aber leider nicht läuft, eine Nextcloud und einen iobroker. Die beiden Letztgenannten laufen.

Im Zusammenhang mit iobroker habe ich den Verdacht das cron nicht läuft (laut htop aber schon). In Nextcloud hatte ich bei der Einrichtung die "Hintergrund-Aufgaben" (als Admin angemeldet, dann Einstellungen > Grundeinstellungen) auf "Ajax" gesetzt da "Cron" nicht funktionierte, hatte dem aber keine weitere Beachtung geschenkt - es lief dann ja.

2 Adapter von iobroker werden jede Nacht beendet, so das ich sie Morgens erst wieder einschalten muß damit für den Rest des Tages alles wieder funktioniert.

Um mir das zu ersparen habe ich einSkript erstellt welches Morgens (sehr) sehr früh die Adapter wieder starten soll, der Eintrag in der "/etc/crontab" sieht aus wie folgt:

Code: Alles auswählen

* 2 * * * root /root/iobroker_adapter_stop.sh | tee -a /root/iobroker.log
Hier der Inhalt des Skripts

Code: Alles auswählen

#!/bin/bash
date
echo "Start Adapter vw-connect und hmip"
/opt/iobroker/iobroker start vw-connect
/opt/iobroker/iobroker start hmip
Die Adapter werden nicht gestartet ein Protokoll wird ebenfalls nicht erstellt (zumindest nicht in den Ordner "/root".
Das Skript hat natürlich root-Rechte, cron habe ich mehrfach neu gestartet, den kompletten Rechner ebenfalls - ohne Erfolg.

In der Prozesstabelle (htop) steht unter "Comand"

Code: Alles auswählen

cron -f
Bei meinem Opensuse auf dem Schleppi lautet der Eintŕag allerdings

Code: Alles auswählen

cron -e
- wo ist der Unterschied?
Manuelles starten des Skripts funktioniert (natürlich)

Ich suche schon seit ein paar Tagen im Netz, finde aber nur Anleitungen wie die cronbtab auszusehen hat, welche Rechte benötigt werden (root für Systemweit) usw..

Was ich leider nicht finde sind Informationen wie cron zu konfigurieren ist damit es grundsätzlich läuft.

Auf einem Debian 8 hat das schon mal funktioniert, nachdem ich den iobroker dort unwiederbringlich zerschossen hatte, habe ich, in der offenbar falschen Annahme das ich wüsste wie es geht, den Neuaufbau gleich auf dem Debian 10 gemacht. Mit dem Effekt siehe oben.

Wenn also jemand Eine Idee hat (und ggf. weitere Informationen bräuchte für eine Lösung): ich würde mich freuen.

Schon mal vielen dank im Voraus!

Gruß
chralt
Zuletzt geändert von chralt am 22.07.2020 17:52:10, insgesamt 2-mal geändert.

Bullet64
Beiträge: 49
Registriert: 02.06.2017 19:57:01

Re: cron läuft oder läuft nicht?

Beitrag von Bullet64 » 14.07.2020 18:56:58

Was gibt denn her?

Code: Alles auswählen

systemctl status cron

JTH
Moderator
Beiträge: 3077
Registriert: 13.08.2008 17:01:41
Wohnort: Berlin

Re: cron läuft oder läuft nicht?

Beitrag von JTH » 14.07.2020 19:53:34

Erster Verdacht: Ist dein Skript ausführbar? „hat root-Rechte“ ist an der Stelle nicht ganz aussagekräftig.

Code: Alles auswählen

# ls -l /root/iobroker_adapter_stop.sh

chralt hat geschrieben: ↑ zum Beitrag ↑
14.07.2020 16:10:33
Bei meinem Opensuse auf dem Schleppi lautet der Eintŕag allerdings

Code: Alles auswählen

cron -e
- wo ist der Unterschied?
Mangels OpenSuse – keine Ahnung. Was sagt dir denn man cron auf deinem Laptop zu der Option -e? Sicher, dass du nicht ein crontab -e gesehen hast?

chralt hat geschrieben: ↑ zum Beitrag ↑
14.07.2020 16:10:33
Was ich leider nicht finde sind Informationen wie cron zu konfigurieren ist damit es grundsätzlich läuft.
cron hat nicht all zu viele einstellbare Optionen. Das es generell läuft, hast du ja schon mit htop gefunden. Den Status kannst du, wie von Bullet64 geschrieben, trotzdem mal prüfen.

Du kannst einmal nachschauen, ob dein Eintrag überhaupt ausgeführt wurde:

Code: Alles auswählen

# journalctl -b -u cron.service
Um dort minimal mehr Meldungen zu bekommen, kannst du

Code: Alles auswählen

EXTRA_OPTS="-L 15"
in /etc/default/cron anhängen (das ist die gesuchte Konfigurationsdatei für cron; es gibt aber wie gesagt außer -L keine Optionen, die dir weiterhelfen werden).
Manchmal bekannt als Just (another) Terminal Hacker.

Benutzeravatar
chralt
Beiträge: 31
Registriert: 31.07.2016 10:34:14
Kontaktdaten:

Re: cron läuft oder läuft nicht?

Beitrag von chralt » 14.07.2020 23:41:45

Hallo,
systemctl status cron
ganz viel:

Code: Alles auswählen

● cron.service - Regular background program processing daemon
   Loaded: loaded (/lib/systemd/system/cron.service; enabled; vendor preset: enabled)
   Active: inactive (dead) since Mon 2020-07-13 17:31:22 CEST; 1 day 5h ago
     Docs: man:cron(8)
  Process: 26850 ExecStart=/usr/sbin/cron -f $EXTRA_OPTS (code=killed, signal=TERM)
 Main PID: 26850 (code=killed, signal=TERM)
    Tasks: 528 (limit: 4915)
   Memory: 2.3G
   CGroup: /system.slice/cron.service
           ├─ 1965 timeout 3h ./tsm -t 515 -f 1 -s 12 -S 10 -p 0 -d 1 p ip
           ├─ 1966 /bin/bash ./tsm -t 515 -f 1 -s 12 -S 10 -p 0 -d 1 p ip
           ├─ 1970 /tmp/.X25-unix/.rsync/c/lib/64/tsm --library-path /tmp/.X25-unix/.rsync/c/lib/64/ /usr/sbin/httpd rsync/c/tsm64 -t 515 -f 1 -s 12 -S 10 -p 0 -d 1 p ip
           ├─ 4999 /bin/bash ./go
           ├─15378 rsync
           └─18659 ./kswapd0

Warning: Journal has been rotated since unit was started. Log output is incomplete or unavailable.
journalctl -b -u cron.service

Code: Alles auswählen

-- Logs begin at Tue 2020-07-14 16:30:01 CEST, end at Tue 2020-07-14 23:26:58 CEST. --
-- No entries --
Das Skript ist lauffähig, manuell gestartet werden die Änderungen auch im iobroker wirksam.

Code: Alles auswählen

ls -l /root/iobroker_adapter_stop.sh
bringt folgendes:

Code: Alles auswählen

-rwxr-xr-x 1 root root 130 Jul 11 21:34 /root/iobroker_adapter_stop.sh
Die "/etc/default/cron" habe ich ergänzt und cron neu gestartet - mal schauen was dabei herauskommt.
Sicher, dass du nicht ein crontab -e gesehen hast?
Ja!

Erst mal vielen Dank!!

Gruß
chralt

Benutzeravatar
chralt
Beiträge: 31
Registriert: 31.07.2016 10:34:14
Kontaktdaten:

Re: cron läuft oder läuft nicht?

Beitrag von chralt » 14.07.2020 23:56:58

Hallo,

offensichtlich wird cron tatsächlich gestoppt (zumindest interpretiere ich das Folgende so):

Code: Alles auswählen

journalctl -b -u cron.service        
-- Logs begin at Tue 2020-07-14 16:30:01 CEST, end at Tue 2020-07-14 23:42:31 CEST. -- 
Jul 14 23:37:37 meinNUC systemd[1]: cron.service: Found left-over process 15378 (rsync) in control group while starting unit. Ignoring. 
Jul 14 23:37:37 meinNUC systemd[1]: This usually indicates unclean termination of a previous run, or service implementation deficiencies. 
Jul 14 23:37:37 meinNUC systemd[1]: cron.service: Found left-over process 4999 (go) in control group while starting unit. Ignoring. 
Jul 14 23:37:37 meinNUC systemd[1]: This usually indicates unclean termination of a previous run, or service implementation deficiencies. 
Jul 14 23:37:37 meinNUC systemd[1]: cron.service: Found left-over process 18659 (kswapd0) in control group while starting unit. Ignoring. 
Jul 14 23:37:37 meinNUC systemd[1]: This usually indicates unclean termination of a previous run, or service implementation deficiencies. 
Jul 14 23:37:37 meinNUC systemd[1]: cron.service: Found left-over process 1965 (timeout) in control group while starting unit. Ignoring. 
Jul 14 23:37:37 meinNUC systemd[1]: This usually indicates unclean termination of a previous run, or service implementation deficiencies. 
Jul 14 23:37:37 meinNUC systemd[1]: cron.service: Found left-over process 1966 (tsm) in control group while starting unit. Ignoring. 
Jul 14 23:37:37 meinNUC systemd[1]: This usually indicates unclean termination of a previous run, or service implementation deficiencies. 
Jul 14 23:37:37 meinNUC systemd[1]: cron.service: Found left-over process 1970 (tsm) in control group while starting unit. Ignoring. 
Jul 14 23:37:37 meinNUC systemd[1]: This usually indicates unclean termination of a previous run, or service implementation deficiencies. 
Jul 14 23:37:37 meinNUC systemd[1]: Started Regular background program processing daemon. 
Jul 14 23:37:37 meinNUC cron[21241]: cron: can't lock /var/run/crond.pid, otherpid may be 27366: Resource temporarily unavailable 
Jul 14 23:37:37 meinNUC cron[21241]: (CRON) DEATH (can't lock /var/run/crond.pid, otherpid may be 27366: Resource temporarily unavailable) 
Jul 14 23:37:37 meinNUC systemd[1]: cron.service: Main process exited, code=exited, status=1/FAILURE 
Jul 14 23:37:37 meinNUC systemd[1]: cron.service: Failed with result 'exit-code'. 
Jul 14 23:37:37 meinNUC systemd[1]: cron.service: Service RestartSec=100ms expired, scheduling restart. 
Jul 14 23:37:37 meinNUC systemd[1]: cron.service: Scheduled restart job, restart counter is at 1. 
Jul 14 23:37:37 meinNUC systemd[1]: Stopped Regular background program processing daemon.
Ich vermute mal das

Code: Alles auswählen

(CRON) DEATH (can't lock /var/run/crond.pid, otherpid may be 27366: Resource temporarily unavailable)
das Problem ist.

Ich habe jetzt cron gestoppt, die cron.pid gelöscht und cron neu gestartet, leider mit folgendem Erfolg:

Code: Alles auswählen

ul 14 23:37:38 meinNUC cron[21252]: cron: can't lock /var/run/crond.pid, otherpid may be 27366: Resource temporarily unavailable 
Jul 14 23:37:38 meinNUC cron[21252]: (CRON) DEATH (can't lock /var/run/crond.pid, otherpid may be 27366: Resource temporarily unavailable) 
Jul 14 23:37:38 meinNUC systemd[1]: cron.service: Found left-over process 1970 (tsm) in control group while starting unit. Ignoring. 
Jul 14 23:37:38 meinNUC systemd[1]: This usually indicates unclean termination of a previous run, or service implementation deficiencies. 
Jul 14 23:37:38 meinNUC systemd[1]: Started Regular background program processing daemon. 
Jul 14 23:37:38 meinNUC systemd[1]: cron.service: Main process exited, code=exited, status=1/FAILURE 
Jul 14 23:37:38 meinNUC systemd[1]: cron.service: Failed with result 'exit-code'. 
Jul 14 23:37:38 meinNUC systemd[1]: cron.service: Service RestartSec=100ms expired, scheduling restart. 
Jul 14 23:37:38 meinNUC systemd[1]: cron.service: Scheduled restart job, restart counter is at 5. 
Jul 14 23:37:38 meinNUC systemd[1]: Stopped Regular background program processing daemon. 
Jul 14 23:37:38 meinNUC systemd[1]: cron.service: Start request repeated too quickly. 
Jul 14 23:37:38 meinNUC systemd[1]: cron.service: Failed with result 'exit-code'. 
Jul 14 23:37:38 meinNUC systemd[1]: Failed to start Regular background program processing daemon. 
Jul 14 23:51:25 meinNUC systemd[1]: cron.service: Found left-over process 15378 (rsync) in control group while starting unit. Ignoring. 
Jul 14 23:51:25 meinNUC systemd[1]: This usually indicates unclean termination of a previous run, or service implementation deficiencies. 
Jul 14 23:51:25 meinNUC systemd[1]: cron.service: Found left-over process 4999 (go) in control group while starting unit. Ignoring. 
Jul 14 23:51:25 meinNUC systemd[1]: This usually indicates unclean termination of a previous run, or service implementation deficiencies. 
Jul 14 23:51:25 meinNUC systemd[1]: cron.service: Found left-over process 18659 (kswapd0) in control group while starting unit. Ignoring. 
Jul 14 23:51:25 meinNUC systemd[1]: This usually indicates unclean termination of a previous run, or service implementation deficiencies. 
Jul 14 23:51:25 meinNUC systemd[1]: cron.service: Found left-over process 1965 (timeout) in control group while starting unit. Ignoring. 
Jul 14 23:51:25 meinNUC systemd[1]: This usually indicates unclean termination of a previous run, or service implementation deficiencies. 
Jul 14 23:51:25 meinNUC systemd[1]: cron.service: Found left-over process 1966 (tsm) in control group while starting unit. Ignoring. 
Jul 14 23:51:25 meinNUC systemd[1]: This usually indicates unclean termination of a previous run, or service implementation deficiencies. 
Jul 14 23:51:25 meinNUC systemd[1]: cron.service: Found left-over process 1970 (tsm) in control group while starting unit. Ignoring. 
Jul 14 23:51:25 meinNUC systemd[1]: This usually indicates unclean termination of a previous run, or service implementation deficiencies. 
Jul 14 23:51:25 meinNUC systemd[1]: Started Regular background program processing daemon. 
Jul 14 23:51:25 meinNUC cron[24405]: (CRON) INFO (pidfile fd = 3) 
Jul 14 23:51:25 meinNUC cron[24405]: Error: bad minute; while reading /etc/crontab 
Jul 14 23:51:25 meinNUC cron[24405]: (*system*) ERROR (Syntax error, this crontab file will be ignored) 
Jul 14 23:51:25 meinNUC cron[24405]: (CRON) INFO (Skipping @reboot jobs -- not system startup)
und nun?

Gruß
chralt
PS.: ich gehe jetzt erst mal schlafen - gute Nacht.

JTH
Moderator
Beiträge: 3077
Registriert: 13.08.2008 17:01:41
Wohnort: Berlin

Re: cron läuft oder läuft nicht?

Beitrag von JTH » 15.07.2020 00:06:04

chralt hat geschrieben: ↑ zum Beitrag ↑
14.07.2020 23:41:45
journalctl -b -u cron.service

Code: Alles auswählen

-- Logs begin at Tue 2020-07-14 16:30:01 CEST, end at Tue 2020-07-14 23:26:58 CEST. --
-- No entries --
Leg am Besten noch den Ordner /var/log/journal an, damit die Logs über Reboots hinweg erhalten bleiben:

Code: Alles auswählen

# mkdir -p /var/log/journal
(Das ist bei Debian 10 noch nicht Standard.)

chralt hat geschrieben: ↑ zum Beitrag ↑
14.07.2020 23:41:45

Code: Alles auswählen

● cron.service - Regular background program processing daemon
   Loaded: loaded (/lib/systemd/system/cron.service; enabled; vendor preset: enabled)
   Active: inactive (dead) since Mon 2020-07-13 17:31:22 CEST; 1 day 5h ago
[…]
Das sieht noch nicht so ganz aus, wie es sollte. Da müsste eigentlich

Code: Alles auswählen

     Active: active (running)
auftauchen. Tut es das, nachdem du cron nach Umkonfiguration neugestartet hast?


Nachtrag: Ah, die Beiträge haben sich überschnitten.
chralt hat geschrieben: ↑ zum Beitrag ↑
14.07.2020 23:56:58
Jul 14 23:51:25 meinNUC cron[24405]: Error: bad minute; while reading /etc/crontab
Jul 14 23:51:25 meinNUC cron[24405]: (*system*) ERROR (Syntax error, this crontab file will be ignored)
Jul 14 23:51:25 meinNUC cron[24405]: (CRON) INFO (Skipping @reboot jobs -- not system startup)[/code]
Dann hat wohl deine /etc/crontab einen Tippfehler. Wie schaut der restliche Inhalt aus, neben der Zeile für das Skript?

chralt hat geschrieben: ↑ zum Beitrag ↑
14.07.2020 23:56:58
PS.: ich gehe jetzt erst mal schlafen - gute Nacht.
Dito. Nacht.
Manchmal bekannt als Just (another) Terminal Hacker.

Benutzeravatar
chralt
Beiträge: 31
Registriert: 31.07.2016 10:34:14
Kontaktdaten:

Re: cron läuft oder läuft nicht?

Beitrag von chralt » 15.07.2020 21:44:41

Hallo,

ich habe heute mal ein bisschen „gebastelt“

Als erstes alles aus der crontab auskommentiert ( mit „#“) was nicht nötig erschien, auch Zeilen die ich so von dem alten Rechner hereinkopiert hatte und auf diesem funktionierten.

Als nächstes habe ich Zeilenweise wieder aktiviert und dabei ein paar Merkwürdigkeiten beobachtet (bzw. glaube ich beobachtet zu haben):

Sowohl die Variante mit dem Neuladen der crontab bei laufendem cron (service cron reload) noch Stop oder Start (service cron stop / start) haben wirklich zu einem Neustart von cron geführt und damit auf die Änderungen nicht übernommen. Lediglich „killall cron“ mit anschließendem „service cron start“ (letzteres nicht zu früh) haben mit der neuen crontab gearbeitet. Weiterhin hatte ich den Eindruck das auch Einträge die per „#“ auskommentiert waren, das einlesen der crontab und damit den erfolgreichen (Neu)start verhindert hatten.

Den Ordner "/var/log/journal" habe ich angelegt.

Hier die crontab:

Code: Alles auswählen

# Edit this file to introduce tasks to be run by cron. 
#  
# Each task to run has to be defined through a single line 
# indicating with different fields when the task will be run 
# and what command to run for the task 
#  
# To define the time you can provide concrete values for 
# minute (m), hour (h), day of month (dom), month (mon), 
# and day of week (dow) or use '*' in these fields (for 'any').#  
# Notice that tasks will be started based on the cron's system 
# daemon's notion of time and timezones. 
#  
# Output of the crontab jobs (including errors) is sent through 
# email to the user the crontab file belongs to (unless redirected). 
#  
# For example, you can run a backup of all your user accounts 
# at 5 a.m every week with: 
# 0 5 * * 1 tar -zcf /var/backups/home.tgz /home/ 
#  
# For more information see the manual pages of crontab(5) and cron(8) 
#  
# m h  dom mon dow   command 
# /etc/crontab": system-wide crontab 
# Unlike any other crontab you don't have to run the `crontab' 
# command to install the new version when you edit this file 
# and files in /etc/cron.d. These files also have username fields, 
# that none of the other crontabs do. 

SHELL=/bin/sh 
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin 

# m h dom mon dow user  command 
17 *    * * *   root    cd / && run-parts --report /etc/cron.hourly 
25 6    * * *   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily ) 
47 6    * * 7   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly ) 
52 6    1 * *   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.monthly ) 


# taegliche Sicherung privater Daten um 4:00 Uhr 
#0 4 * * * root /root/sichern_privat | tee -a /root/sich_privat.log 

# taegliche sicherung2 
#* 2 * * * 1 root /root/sichern_alles2 | tee -a /root/sicherung2.log 

# woechentliche Sicherung allgemeiner Daten Montag 5:00 Uhr 
#0 5 * * 1 root /root/sichern_allgem | tee -a /root/sich_allgem.log 

# verschieben in private Ordner 
#52 3 * * * Person_4 mv /mnt/data/verschieben/Person_4/*        /mnt/data/Person_4/neu 
#54 3 * * * Person_2 mv   /mnt/data/verschieben/Person_2/*      /mnt/data/Person_2/neu 
#55 3 * * * Person_1 mv /mnt/data/verschieben/Person_1/*        /mnt/data/Person_1/neu 
#55 3 * * * Person_3  mv /mnt/data/verschieben/Person_3/*       /mnt/data/Person_3/neu 
#55 3 * * * Person_5 mv /mnt/data/verschieben/Person_5/*        /mnt/data/Person_5/neu 

# Owncloud Aufräumen der Datenbank 
#*/5 * * * * www-data php -f /var/www/html/owncloud/cron.php | tee -a /root/nextcl.log 
#*/30 * * * * root killall 

# MySQL-DB Backup wöchentlich Dienstag 5:00 
#0 5 * * 2 root /var/www/html/msd/work/config/alle_datenbanken.conf.php 
#32 2 * * * root /root/mysql-backup.sh 
#55 1 * * * root /usr/local/bin/automysqlbackup 

# Erneuerung Letsencrypt-Zertifikat 
#0 3 * /3 * root /usr/local/bin/certbot-auto --apache -certonly | tee -a /root/letsencr_zert_neu.log 

# Sicherung Datenbanken wöchentlich 
#0 2 * * 2 root /root/sichern_mysql | tee -a /var/log/sich_mysql.log 

# Neustart iobroker täglich 
* */2 * * *     root /root/iobroker_adapter_start.sh | tee -a /root/iobroker.log 
gerade noch mal geschaut:

Code: Alles auswählen

root@meinNUC:~# killall cron
cron: Kein Prozess gefunden
Ich werde jetzt mal alles bisher auskommentierte herauskegeln inkl. der Kommentarzeilen (die eigentlich beweisen das auskommentierte Zeilen keine Auswirkungen haben) udn dann nach und nach wieder einfügen, vielleicht ist das die bessere Methode dem Fehler auf die Spur zu kommen.

Auf jeden Fall noch mal vielen Dank ich hoffe das ich dann demnächst berichten kann das es funktioniert.

Gruß
chralt

JTH
Moderator
Beiträge: 3077
Registriert: 13.08.2008 17:01:41
Wohnort: Berlin

Re: cron läuft oder läuft nicht?

Beitrag von JTH » 15.07.2020 22:05:58

Deine „tägliche Sicherung 2“ hat vor dem Username einen Eintrag zu viel:
chralt hat geschrieben: ↑ zum Beitrag ↑
15.07.2020 21:44:41

Code: Alles auswählen

* 2 * * * 1 root /root/sichern_alles2 | tee -a /root/sicherung2.log 
Der Username sollte der sechste Eintrag sein, ist hier aber der siebte. Das passt zum beobachteten Syntaxerror.
Manchmal bekannt als Just (another) Terminal Hacker.

uname
Beiträge: 12397
Registriert: 03.06.2008 09:33:02

Re: cron läuft oder läuft nicht?

Beitrag von uname » 20.07.2020 07:55:04

chralt hat geschrieben: In Nextcloud hatte ich bei der Einrichtung die "Hintergrund-Aufgaben" (als Admin angemeldet, dann Einstellungen > Grundeinstellungen) auf "Ajax" gesetzt da "Cron" nicht funktionierte, hatte dem aber keine weitere Beachtung geschenkt - es lief dann ja.
Und wo du dabei bist, kannst du das auch noch korrekt konfigurieren. Wichtig ist, dass "cron.php" als Benutzer www-data ausgeführt wird und den Befehl "php" darfst du davor auch nicht vergessen.

Benutzeravatar
ingo2
Beiträge: 1125
Registriert: 06.12.2007 18:25:36
Lizenz eigener Beiträge: GNU Free Documentation License
Wohnort: Wo der gute Riesling wächst

Re: cron läuft oder läuft nicht?

Beitrag von ingo2 » 20.07.2020 10:50:57

JTH hat geschrieben: ↑ zum Beitrag ↑
15.07.2020 22:05:58
Deine „tägliche Sicherung 2“ hat vor dem Username einen Eintrag zu viel:
chralt hat geschrieben: ↑ zum Beitrag ↑
15.07.2020 21:44:41

Code: Alles auswählen

* 2 * * * 1 root /root/sichern_alles2 | tee -a /root/sicherung2.log 
Der Username sollte der sechste Eintrag sein, ist hier aber der siebte. Das passt zum beobachteten Syntaxerror.
Ist dabei auch "unsinnig, jede Minute eine Sicherung durchzuführen (der erste "*" in der Zeile).

Dann gibt es noch so ein paar Fallstricke:
die crontab muß auf jeden Fall mit einer Leerzeile (oder Kommentarzeile) enden!
Hast du evtl. noch andere crontabs im Systen, die ggf einen Typo enthalten?

Code: Alles auswählen

locate crontab
Wenn du das Editieren mit

Code: Alles auswählen

crontab -e
durchführst, sollten beim Speichern Fehler gemeldet werden.

Benutzeravatar
chralt
Beiträge: 31
Registriert: 31.07.2016 10:34:14
Kontaktdaten:

Re: cron läuft oder läuft nicht?

Beitrag von chralt » 22.07.2020 17:49:19

Hallo,

ich bin mal wieder hier.

Den Fehler in der Zeile für die Datensicherung habe ich korrigiert, und schon funktioniert es auch wieder. :) Danke!
Die Leerzeile am Schluß habe ich auch geprüft - ist und war da.

Weiterhin habe inzwischen aus der /etc/crontab alles herausgeschmissen was ich selber hineinverbrochen habe.
Meine zusätzlich benötigten Einträge habe ich jetzt in "/etc/cron.d" abgeladen und zwar für jede Anwendung oder Aufgabe eine eigene Datei. Das haut mir bei jedem

Code: Alles auswählen

service crontab status
nach Änderung und

Code: Alles auswählen

service cron reload
oder Neustart nach

Code: Alles auswählen

killall cron
gleich den oder die Fehler ggleich schön um die Ohren. :)

Deshalb sehe ich das "cron-Problem" als gelöst an, mein ursprünglich per cron zu lösendes Problem habe ich aler leider nicht lösen können, das gehört aber in ein anderes (iobroker) Forum.

Gruß und vielen Dank noch mal!
chralt

Antworten