Archiv verlassen und diese Seite im Standarddesign anzeigen : Suse12.1 cron.daily
Hallo zusammen,
habe Suse12.1 als Server. Möchte nun meinen täglichen Shutdown, den ich in crontab eingetragen habe, in cron.daily eintragen. doch wie gehe ich da vor ? habe schon mal eine ausführbare test datei mit dem vi erstellt, und so eingetragen wie bei crontab. doch wie muß ich die cron.daily aktivieren, dass das system dort sucht ??
Das Script ins Verzeichnis cron.daily legen und gut.
Dann sollte es auch abgearbeitet werden.
das tut es halt seltsamerweise nicht. habe die datei mal testweise nur "test" genannt und für root ausführbar gemacht, liegt da evtl der fehler ? muß die datei test.sh heißen ?
Was steht in /etc/crontab und was sagt dir:
systemctl status cron.service
Deine genannte Zeile sagt mir nichts. In Crontab steht:
SHELL=/bin/sh
PATH=/usr/bin:/usr/sbin:/sbin:/bin:/usr/lib/news/bin
MAILTO=root
#
# check scripts in cron.hourly, cron.daily, cron.weekly, and cron.monthly
#
#cron.daily
-*/15 * * * * root test -x /usr/lib/cron/run-crons && /usr/lib/cron/run-crons >/dev/null 2>&1
30 00 * * * root /sbin/shutdown -h now
Deine genannte Zeile sagt mir nichts.
Ähm ... du solltst das mal als root in 'ner Shell eingeben und das Ergebnis posten ;)
achso.
systemctl status cron.service
cron.service - Command Scheduler
Loaded: loaded (/lib/systemd/system/cron.service; enabled)
Active: active (running) since Sun, 11 Dec 2011 10:44:32 +0100; 11h ago
Main PID: 592 (cron)
CGroup: name=systemd:/system/cron.service
â 592 /usr/sbin/cron -n
Dann könnte es noch am Script selbst liegen.
Sind die darin verwendeten Befehle im $PATH von cron enthalten:
PATH=/usr/bin:/usr/sbin:/sbin:/bin:/usr/lib/news/binWenn nicht, dann trage die Befehle im Script mit vollständigem Pfad ein.
Und ich würde dem Script einen anderen Namen geben ... weil es einen Befehl gibt, welcher test heißt ;)
opk, versuch ich morgen mal. die zeile steht nicht drin.
opk, versuch ich morgen mal. die zeile steht nicht drin.
Die Zeile muss nicht drin stehen!
Du weißt nicht wirklich, was ich meine bzw. was $PATH ist.
Beispiel:
Solltest du in deinem Script den Befehl ls verwenden, dann steht er in /bin
=> nach der Zeile in /etc/crontab, der PATH-Variable von cron, ist /bin enthalten
PATH=/usr/bin:/usr/sbin:/sbin:/bin:/usr/lib/news/bin
=> der Befehl ls wird gefunden und ausgeführt.
In welchem Verzeichnis ein Befehl steht bzw. welchen Pfad zum Befehl führt, sagt dir:
which <befehl>
~> which ls
/bin/ls
hast recht, ich versteh es nicht. ich möchte eigentlich in meinem script nur den einen befehl verwenden:
30 00 * * * root /sbin/shutdown -h now
In /etc/cron-daily müssen echte Skripte liegen, keine Crontab-Einträge. Außerdem eignet sich cron-daily nicht dazu, um einen Server Zeitgesteuert runterzufahren. Dafür ist ein Croneintrag von root besser geeignet.
hast recht, ich versteh es nicht. ich möchte eigentlich in meinem script nur den einen befehl verwenden:
30 00 * * * root /sbin/shutdown -h now
Das hättest du können auch schon mal eher sagen ;)
Und wie drcux schon erwähnte ... dafür ist dann die root-Crontab da.
Als root in einer Shell eingeben:
crontab -eund deinen Eintrag da hinein.
Powered by vBulletin® Version 4.2.5 Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.