Wie lasse ich ein Script mit cron starten ?

D

DrSilver

Grünschnabel
Hallo Leutz,

Ich habe ein Script zur Datensicherung geschrieben (save_it.sh). Funktioniert
auch wunderbar. Aber ich krieg es mit "cron" nicht gestartet !

Ich habe folgendes in die crontab eingetragen:

0 18 * * * * ./sicherung/save_it.sh

Das Script soll halt jeden Tag um 18 Uhr ausgeführt werden.

Was mache ich falsch ? hab mit cron vorher praktisch noch nie gearbeitet und kenne die syntax nicht so gut.

Danke schonmal im Voraus

VG DG
 
versuche mal
0 18 * * * * sh /home/username/sicherung/save_it.sh

also ein sh plus lehrstelle davor und den kompletten pfad.
im script muß auch jeder befehl mit kompletten pfad stehen z.b. /bin/echo statt echo.
geht es nun?
 
Hallo dosenfleisch,

Deine Aussage stimmt nicht so ganz. Mann muss nicht zwangsläufig den kompletten Pfad zu einer Binary mitgeben. Denn das hast du ja mit dem Befehl "sh" in deinem Beispiel auch nicht gemacht.

Wie dem auch sei, ich mache mir in jede CRON TAB immer folgende Einträge rein:

Code:
root@betor root# crontab -l
##
##  crontab for root
##

##  field          allowed values
##  -----          --------------
##  minute         0-59
##  hour           0-23
##  day of month   0-31
##  month          0-12 (or names)
##  day of week    0-7 (0 or 7 is Sun, or use names)

PATH=/sbin:/usr/sbin:/bin:/usr/bin
SHELL=/bin/bash
RSYNC_RSH='ssh -c blowfish'
MAILTO=meine@e-mailadresse.de
ftp_proxy=http://wwwcache:3128/
http_proxy=http://wwwcache:3128/
root@betor root#

Dadurch kann ich mir auch dann den kompletten Pfad sparen (zu echo, time, ifconfig usw...).

Allerdings ist das in deinem Beispiel, DrSilver, ein anderes Problem.
0 18 * * * * ./sicherung/save_it.sh

Denn "./" geht auf jedenfall nicht :-). Bei einem eigenen Script muss entweder der komplette Pfad angegeben werden, oder du schreibst den Pfad in den PATH Variabel dazu.

Havoc][
 
Hallo

Das ist dann Nummer 4 dieser Frage .
Nur einen Thread darunter steht die gleiche Frage -> sogar mit Antwort.
Zwei Threads weiter die Nächste...

Gruß Wolfgang
 
So,

habe jetzt die Crontab abgeändert.
Sieht nun aus wie folgt:

PATH=/sbin:/usr/sbin:/bin:/usr/bin
SHELL=/bin/bash
14 12 * * * sh /sicherung/save_it.sh

wollte es sofort testen (12:14 Uhr) aber cron
führt es nicht aus. Wenn ich "cron" eingebe erscheint
die Fehlermeldung:
"cron: can't lock /var/run/cron.pid, otherpid may be 13527:
Resource temporarily univailable". Toll

Ich will doch nur dieses Script automatisch starten lassen
einmal am Tag !! :)

VG DG
 
Hi nochmal,

also hab's jetzt hingekriegt. Habe den Cron-Dämon neu gestartet und die crontab anschließend minimal abgeändert:

von so:

PATH=/sbin:/usr/sbin:/bin:/usr/bin:/
SHELL=/bin/bash
14 12 * * * sh /sicherung/save_it.sh

auf so:

PATH=/sbin:/usr/sbin:/bin:/usr/bin:/sicherung
SHELL=/bin/bash
14 12 * * * save_it.sh

jetzt führt cron das script aus. Danke an alle
 

Ähnliche Themen

NAS-Drive Mount in Bash-Script über crontab

crontab: Meldungen umleiten auf den Bildschirm ?

Variablen in Cronjob = Problem?

Backup-Script per Cron

Server-Monitoring mit RRDTool

Zurück
Oben