Zum Inhalt springen

Cronjob eintragen


Empfohlene Beiträge

Wenn du crontab -e eingibst startet er vi und öffnet die datei /etc/crontab, dann musst du i drücken für insert, jetzt kannst du die Datei editieren, und die Zeile(n) eintragen. Wenn du fertig bist, musst du ESC drücken, jetzt :wq (write+quit) eingeben und Enter drücken.

Mit crontab -l kannst du dir die eingetragenen Crontabs ansehen. Ganz nett für die korekkte Syntax ist: http://www.linuxhilfen.org/befehle/crontab.html

Link zu diesem Kommentar
Auf anderen Seiten teilen

Okay zweite Runde:

Ich hab mich scheinbar falsch ausgedrückt :! Also ich möchte per PHP einen Cronjob eintragen. Also mit shell_exec() oder exec(). Nur was muss ich da machen, damit ich den eintragen kann. Denn ich kann crontab -e schlecht bei exec() machen, da sich da ja vi öffnet.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Kenne mich mit php nicht aus, nur mit perl und bash. Da machst du das dann per echo, als beispiel: echo "crontabeintrag" >> /etc/crontab, dann fügt der das unten in die datei ein. Bei perl kann ich mit system ( "/bin/echo "crontabeintrag" >> /etc/crontab" ) machen. Musst aber root sein, da nur root die Datei ändern darf. Ansonsten mit Php den kram in ne Textdatei und dann n' kleines Shellscript, das per cron alle 5 Minuten die Crontab aktualisiert. Ist auch sicherer, da man niemals per PHP mit rootrechten auf dem Server arbeiten sollte. Geht sowieso nicht, aber wäre mit "sudo" möglich.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Also wenn ich dich richtig verstanden habe, liegt dein Problem darin, dass crontab -e den VI öffnet und du das über shell_exec() oder exec() nicht realisieren kannst. Für alle Unix-Befehle, (die ich per shell_exec() über PHP ausführen möchte) wo sich danach ein Editor öffnet zum Eintragen, mache ich es so, dass ich dass, was ich eintragen möchte in eine Dateiumleitung (per > ) mache. Und wenn ich SicherheitsProbs habe (weil man Cronjobs vielleicht als root machen muss), dann mache ich mir ein kleines Shell-Skript, welches einfach den Befehl als Parameter entgegen nimmt und diesen ausführt (und dieses Skript mache ich dann für nobody ausführbar).

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...