cron funktioniert nicht

Status
Für weitere Antworten geschlossen.

franc

Benutzer
Mitglied seit
23. Jan 2013
Beiträge
82
Punkte für Reaktionen
4
Punkte
8
Hallo

ich habe über ipkg cron installiert:

Rich (BBCode):
DiskStation> ipkg list_installed
...
cron - 4.1-9 - Standard vixie cron, with cron.d addition
...

und ein paar Backup-Aufträge mit rsync eingetragen:

Rich (BBCode):
DiskStation> crontab -e
#minute hour    mday    month   wday    who     command
0       0       *       *       *       root    /usr/sbin/ntpdate -b ptbtime1.ptb.de
59      23      *       *       1       root    rsync -av --delete /volume1/example.org/ /volumeUSB1/usbshare/1_montag > /var/log/backup_1_montag.log
59      23      *       *       2       root    rsync -av --delete /volume1/example.org/ /volumeUSB1/usbshare/2_dienstag/ > /var/log/backup_2_dienstag.log
59      23      *       *       3       root    rsync -av --delete /volume1/example.org/ /volumeUSB1/usbshare/3_mittwoch/ > /var/log/backup_3_mittwoch.log
59      23      *       *       4       root    rsync -av --delete /volume1/example.org/ /volumeUSB1/usbshare/4_donnerstag/ > /var/log/backup_4_donnerstag.log
59      23      *       *       5       root    rsync -av --delete /volume1/example.org/ /volumeUSB1/usbshare/5_freitag/ > /var/log/backup_5_freitag.log
00      22      7       *       *       root    rsync -av --delete /volume1/example.org/ /volumeUSB1/usbshare/0_monat/ > /var/log/backup_0_monat.log
00      22      29      1,3,5,7,8,10,12 *       root    rsync -av --delete /volume1/backup/Install/ /volumeUSB1/usbshare/install > /var/log/backup_install.log
00      22      28      4,6,9,11        *       root    rsync -av --delete /volume1/backup/Install/ /volumeUSB1/usbshare/install > /var/log/backup_install.log
00      22      26      2       *       root    rsync -av --delete /volume1/backup/Install/ /volumeUSB1/usbshare/install > /var/log/backup_install.log
00      5       *       *       *       root    date "+%Y-%m-%d_%H.%M" >> /volumeUSB1/usbshare/extHDD.log

Es wird zwar ein log-File angelegt (/var/log/backup_x_wochentag.log), aber das bleibt leer. Anscheinend wird der cron-Auftrag gleich abgebrochen.

Im syslog finde ich keine Einträge mit cron (oder CRON).

Das Sicherungsziel

Rich (BBCode):
/volumeUSB1/usbshare/x_wochentag-ordner

ist auf einer externen USB-Platte, die mit NTFS formatiert ist und ausreichend Platz hat:

Rich (BBCode):
DiskStation> mount
/dev/root on / type ext4 (defaults)
none on /dev/pts type devpts (gid=4,mode=620)
/sys on /sys type sysfs (0)
/tmp on /tmp type tmpfs (0)
/proc/bus/usb on /proc/bus/usb type usbfs (0)
/dev/vg1000/lv on /volume1 type ext4 (usrjquota=aquota.user,grpjquota=aquota.group,jqfmt=vfsv0,synoacl)
/dev/sdq1 on /volumeUSB1/usbshare type fuseblk (rw,allow_other,blksize=4096,default_permissions)

DiskStation>DiskStation> fdisk -l /dev/sdq

Disk /dev/sdq: 2000.3 GB, 2000365289472 bytes
255 heads, 63 sectors/track, 243197 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot      Start         End      Blocks  Id System
/dev/sdq1               1      243198  1953480704   7 HPFS/NTFS

DiskStation> fdisk -l /dev/sdq1

Disk /dev/sdq1: 2000.3 GB, 2000364240896 bytes
255 heads, 63 sectors/track, 243197 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

     Device Boot      Start         End      Blocks  Id System
/dev/sdq1p1   ?       13578      119522   850995205  72 Unknown
Partition 1 does not end on cylinder boundary
/dev/sdq1p2   ?       45382       79243   271987362  74 Unknown
Partition 2 does not end on cylinder boundary
/dev/sdq1p3   ?       10499       10499           0  65 Unknown
Partition 3 does not end on cylinder boundary
/dev/sdq1p4          167628      167631       25817+  0 Empty
Partition 4 does not end on cylinder boundary

Partition table entries are not in disk order

Starte ich den entsprechenden rsync Befehl manuell, läuft das tadellos durch.

Cron läuft, so auch der cron von Synology, also der eingebaute:

Rich (BBCode):
DiskStation> ps | grep cron
 1608 root      4344 S    /usr/sbin/crond
 8574 root      1800 S    /opt/sbin/cron

Der cron der DS ist fast leer:

Rich (BBCode):
DiskStation> less /etc/crontab
#minute hour    mday    month   wday    who     command
56      14      *       *       1,2,3,4,6       root    /usr/syno/bin/synopkg chkupgradepkg
55      13      *       *       2,5     root    /usr/syno/sbin/synoupgrade --fetch-all
0       0       1       *       *       root    /usr/syno/bin/syno_disk_health_record

Der Cronjob Editor (GUI aus dem Community Paket im Paketzentrum) funktioniert nicht, der bleibt ganz leer und grau.

Ich habe jetzt mal ipkg-cron deinstalliert und die Backup-Befehle in das DS-cron (/etc/crontab) eingetragen, testweise dazu einen minütlichen Test:

Rich (BBCode):
*       *       *       *       *       root    date "+%Y-%m-%d_%H.%M" >> /volumeUSB1/usbshare/test.log

aber die Datei wird gar nicht geschrieben oder aktualisiert (angehängt).
Ich finde aber auch nicht das Start/Stop Skript (S04crond.sh siehe Wiki):

Rich (BBCode):
DiskStation> ls -al /usr/syno/etc/rc.d/*cron*
ls: /usr/syno/etc/rc.d/*cron*: No such file or directory

Was mache ich oder was ist da falsch?

Danke

franc
 
Zuletzt bearbeitet:

fraubi

Benutzer
Mitglied seit
25. Nov 2011
Beiträge
605
Punkte für Reaktionen
0
Punkte
42
Versuch mal

/usr/syno/sbin/synoservicectl --restart crond

Startet cron neu, ich hatte mal ein ähnliches Problem, nach Eingabe von o.g. Befehl ging es dann.

Gruß
Fraubi
 

franc

Benutzer
Mitglied seit
23. Jan 2013
Beiträge
82
Punkte für Reaktionen
4
Punkte
8
Super, tatsächlich, jetzt schreibt der DS-cron meine Testdatei brav rein.
Probiere jetzt also die Backup-Aufträge auch da rein zu schreiben und schaue dann mal, ob es klappt.
Danke.
 

fpo4711

Benutzer
Mitglied seit
26. Mai 2010
Beiträge
2.772
Punkte für Reaktionen
1
Punkte
0
Es wäre auch eine gute Idee die kompletten Pfade zu deinen Befehlen einzutragen. :)

Also beispielsweise /usr/syno/bin/rsync oder so ähnlich.

Gruß Frank
 

franc

Benutzer
Mitglied seit
23. Jan 2013
Beiträge
82
Punkte für Reaktionen
4
Punkte
8
Es wäre auch eine gute Idee die kompletten Pfade zu deinen Befehlen einzutragen...
Tatsächlich! Ich hatte auch noch den opt-rsync drauf, in der gleichen Version zwar:
Rich (BBCode):
DiskStation> /usr/syno/bin/rsync --version
rsync  version 3.0.9  protocol version 30

DiskStation> /opt/bin/rsync --version
rsync  version 3.0.9  protocol version 30
Hab ihn aber dennoch mal deinstalliert mit ipkg, dann brauche ich den Pfad von rsync im Befehl ja nicht mit anzugeben.
 

dil88

Benutzer
Sehr erfahren
Mitglied seit
03. Sep 2012
Beiträge
30.834
Punkte für Reaktionen
2.272
Punkte
829
Es geht bei der Angabe des Pfades nicht nur darum, bei mehreren verfügbaren Versionen die richtige auszuwählen. In cronjobs fehlen meistens die Umgebungsvariablen wie PATH, so dass die Files nicht gefunden werden. Qualifizierung hilft dann oder das Sourcen einer profile oder die Definition von Umgebungsvariablen im Skript.
 

franc

Benutzer
Mitglied seit
23. Jan 2013
Beiträge
82
Punkte für Reaktionen
4
Punkte
8
... In cronjobs fehlen meistens die Umgebungsvariablen wie PATH, so dass die Files nicht gefunden werden. Qualifizierung hilft dann oder das Sourcen einer profile oder die Definition von Umgebungsvariablen im Skript.
Ach so!
Das habe ich nicht gewusst. Dann kommen die Pfade natürlich rein!
DANKE.

Obwohl das jetzt auch so funktioniert mit dem DS-cron (Hurra).
 
Zuletzt bearbeitet:
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