crontab nach reboot wieder auf default

Status
Für weitere Antworten geschlossen.

Jolumbu

Benutzer
Mitglied seit
30. Sep 2010
Beiträge
2
Punkte für Reaktionen
0
Punkte
0
Hallo,

ich bin gerade dabei auf meiner DS209 mit DSM 3.0 in der /etc/crontab das zyklische Mailabholen mit getmail zu verankern.

Das abholen der Mails mit cron funktioniert ohne Probleme, solange ich die DS209 nicht reboote.
Nach einem Reboot hat die crontab allerdings wieder die Defaulteinträge. Alle manuellen Einträge von mir sind nicht mehr vorhanden.

was kann ich machen, damit die crontab mit meinen Einträgen erhalten bleibt?
 

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
Gibt es nicht auch /var/cron/crontabs/USER beim Synology cron? Beim ipkg cron sind die cronfiles auf jeden Fall in /opt/var/cron/crontabs/USER
Das File /etc/crontabs ist normalerweise leer, denn es wird afaik für alle user cronjobs verwendet.
 

goetz

Super-Moderator
Teammitglied
Sehr erfahren
Mitglied seit
18. Mrz 2009
Beiträge
14.020
Punkte für Reaktionen
273
Punkte
393
Hallo,
/etc/crontab ist schon richtig für den System-cron.
Kontrolliere Deinen Eintrag genau, zwischen den Feldern dürfen nur Tabs sein, keine Leerzeichen, nicht mit eien Windows-Editor bearbeiten.

Gruß Götz
 

MaCoM

Benutzer
Mitglied seit
06. Dez 2009
Beiträge
347
Punkte für Reaktionen
0
Punkte
0
hallo Jolumbu

ich hab auch eine 209 und habe (allerdings) für Fengoffice die mailabholung im cron drin - allerdings ist es weiterhin nach einem reboot vorhanden.
wollte damit nur sagen das es nicht an der 209 oder der FW 3.0 liegen sollte dein problem.
 

saultigh

Benutzer
Mitglied seit
20. Sep 2008
Beiträge
23
Punkte für Reaktionen
0
Punkte
0
Hallo,

ich habe mir einfach ein Skript geschrieben, um die System-Crontab beim Shutdown zu sichern und beim Anstarten wieder zurückzuschreiben...

cd /usr/syno/etc/rc.d/

vi S99crontab.sh

Rich (BBCode):
#!/bin/sh
# S99crontab.sh
# restore crontab on startup
# save crontab on shutdown

CONFDIR=/etc
CRONTAB=$CONFDIR/crontab
CRONTABMOD=$CONFDIR/crontab.modified
RCDIR=/usr/syno/etc/rc.d
CRONRCFILE=$RCDIR/S04crond.sh

case $1 in
        start)
                        cp -p $CRONTABMOD $CRONTAB
                        $CRONRCFILE stop
                        sleep 5
                        $CRONRCFILE start
                        ;;
        stop)
                        cp -p $CRONTAB $CRONTABMOD
                        ;;
        *)
                        echo "Usage: $0 [start|stop]"
                        ;;
esac

Ausführungsrechte setzen

chmod 755 S99crontab.sh


HTH
Markus
 

Trolli

Benutzer
Mitglied seit
12. Jul 2007
Beiträge
9.848
Punkte für Reaktionen
1
Punkte
0
Wie Goetz schon sagte - wenn die crontab ordentlich editiert ist (Tabs statt Leerzeichen, Unix Zeilenenden), wird sie auch beim Reboot nicht ersetzt und man kann sich das sparen.
 

Jolumbu

Benutzer
Mitglied seit
30. Sep 2010
Beiträge
2
Punkte für Reaktionen
0
Punkte
0
Gelöst!:)

Ich habe den Eintrag in der /etc/crontab erneut gemacht.
Diesmal aber keine Leertasten, sondern Tabulatoren eingefügt.
Der Eintrag blieb jetzt nach dem reboot erhalten!!


DANKE!!!:D
 

itari

Benutzer
Mitglied seit
15. Mai 2008
Beiträge
21.900
Punkte für Reaktionen
14
Punkte
0
Das Skript 'S99crontab.sh' ist nicht erforderlich.

Ein Tipp am Rande: zu der crontab haben wir verschiedene 3rdparty-apps, die den Umgang einfacher und hübscher machen, u.a. gibt es dazu auch was in meinem AdminTool. Ich mache hier nicht Reklame im Sinne 'ach wie schön'; ich habe so ziemlich alle kleinen und größeren Lösungen, die im Laufe der letzte 2.5 Jahre entstanden sind, da rein gepackt.

Itari
 

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
@itari
Würde das Script deiner Meinung nach überhaupt das machen, was beabsichtigt ist? Ich dachte immer beim Kopieren bräuchte es das -f Flag wenn die Zieldatei bereits existieren würde:confused:
 

itari

Benutzer
Mitglied seit
15. Mai 2008
Beiträge
21.900
Punkte für Reaktionen
14
Punkte
0
@itari
Würde das Script deiner Meinung nach überhaupt das machen, was beabsichtigt ist? Ich dachte immer beim Kopieren bräuchte es das -f Flag wenn die Zieldatei bereits existieren würde:confused:

Wenn die Datei-Berechtigungen es erlauben, geht das auch so. Nur wenn du nicht 'root' bist, keine Rechte vergeben hast, aber Eigentümer bist, dann brauchst - glaube ich - die -f-Option ('if an existing destination file cannot be opened, remove it and try again'). Da ich aber fast nie als Normalo unter Linux herumlaufe, weiß ich das nicht wirklich.

Itari
 

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
Da ich aber fast nie als Normalo unter Linux herumlaufe, weiß ich das nicht wirklich.
Genau das ist auch mein Problem. Da root eh alles darf, weiss ich es auch nicht genau ;)
 

Nixda

Benutzer
Mitglied seit
24. Dez 2011
Beiträge
47
Punkte für Reaktionen
0
Punkte
6
Das Problem mit dem Reset des Crontabs ist bei mir wieder aufgetaucht.

Die crontab Datei ist mit dem Crontab Editor editiert worden, den es in in diversen Paketquellen gibt, und sieht auf den ersten Blick auch gut aus (Tabs statt Leerzeichen).

Noch Ideen?
 

itari

Benutzer
Mitglied seit
15. Mai 2008
Beiträge
21.900
Punkte für Reaktionen
14
Punkte
0
Zeilenvorschübe Linux-gemäß ?

Itari
 
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