Hilfe beim einrichten von Crontab

dehne

New Member
Tag,
ich hab ein Script, welches automatisch ein backup zieht, wenn man es anwählt, aber jetz wollte ich es per crontab im Plesk machen, das dürfte doch eigentlich gehn oder ?

Hab folgendes geschrieben, siehe Sreenshot..
MOD: Bilder bitte immer als Anhang. Danke.

würd mich freun, wenn mir dort jemand helfen kann, ich dachte mir das ich das Script jeden tag um 4 uhr ausführen lassen...


Gruß
dehne
 

Attachments

  • 283844backup.jpg
    283844backup.jpg
    21.5 KB · Views: 658
Last edited by a moderator:
Wo liegt denn das Problem? Bei Stunde '4' und bei Minute '0' eintragen. Der Rest sieht ja schon recht gut aus. Aber Du könntest Dir auch angewöhnen, die ganzen Sachen über die Konsole zu machen (die Du ja ohnehin für die ganzen anderen Administrationsaufgaben wie Online-Updates, die Du nicht mit Plesk erledigen kannst, verwenden musst): Einfach mit "putty" auf dem Server einloggen.
Die für Cron wichtigen Manpages kannst Du mit
Code:
man 5 crontab
man crontab
anschauen. Zum Editieren empfiehlt es sich, die Umgebungsvariable "EDITOR" auf den Namen des Editors Deiner Wahl zu stellen, andernfalls wird "vi" verwendet.
 
Hi,
ja öhm das Problem is das er das nicht macht.
Es bleibt leer, bzw die Datei wird nicht erstellt.
Der Befehl is /usr/bin/php /srv/www/vhosts/domain.tld/subdomains/backup/httpdocs/board/index.php
aber naaja, wenn man direkt drauf klickt macht er das ja auch das backup..

dehne
 
Last edited by a moderator:
Fein, das kann man ja sogar aus der ganzen Welt aus aufrufen ;)
Daten exportiert
Vielleicht solltest Du das Script nicht innerhalb des Webspaces ablegen...

Ansonsten führt wohl kein Weg daran vorbei, dass Du das Script mal von Hand aufrufst, indem Du Dich auf der Console einloggst. Wenn das dann richtig funktioniert, sollte es auch mit cron gehen. Beim Aufrufen erhälst Du dann auch die Fehlermeldungen, warum es nicht geklappt hat (bzw. solltest Du mal schauen, ob die Log-Meldungen, die cron normalerweise per Mail verschickt, nicht alle bei root gelandet sind).
 
hehe danke für die info, nur halt er macht das per plesk crontab net, nur per console und das frage ich mich grad wieso er das macht !
 
Vielleicht ist der Cron Job von Plesk von irgendeinem Benutzer, der nicht die passenden Rechte hat. Hast du mal geguckt, in wessen crontab der von Plesk generierte Job drin steht?
 
Tag,
als unter dem User Root, steht folgendes,

Minute: 0
Stunde: 4
Tag des Monats: 1-31
Monat: Wert eingeben 1-12
Tag der Woche: Wert eingeben 0-6

Befehl: /usr/bin/php /srv/www/vhosts/dacooon.com/subdomains/backup/httpdocs/board/index.php

Aber des macht er halt nicht, das einzige is das wenn man das unter cronjob.de laufn lässt, das es geht, aber das möcte ich nicht unbedingt weils ja eigentlich auch funktionieren sollte vom eigenen Server her..

Der Code der in der php datei steht ist:
PHP:
<?php
system("/usr/bin/mysqldump -uUSER -pPASSWORT -h localhost DATENBANKNAME > ".dirname(__FILE__)."/board.sql", $fp);
if ($fp==0) echo "Daten exportiert"; else echo "Es ist ein Fehler aufgetreten";
?>
Gruß Flo
 
Last edited by a moderator:
Wow, Du verwendest einen Shell-Aufrurf, um ein PHP-Script zu starten, dass einen Shell-Aufruf für ein Programm durchführt. Da reicht doch ein kleines Schell-Script:
Code:
#! /bin/bash

/usr/bin/mysqldump -uUSER -pPASSWORT -h localhost DATENBANKNAME > /srv/www/vhosts/dacooon.com/subdomains/backup/httpdocs/board/board.sql
#

Das ganze packst Du dann manuell auf der Konsole in die root-crontab mit folgendem Format:
Code:
0 4 * * * /pfad/zum/script
mit folgendem Befehl
Code:
crontab -e
dann musst Du folgende Tasten drücken:
Code:
i0 4 * * * /pfad/zum/script <ESC>:wq
Mit dem ersten 'i' wird der Editor in den Eingabe-Modus versetzt, dann folgt die Eingabe, die durch Drücken der ESC-Taste (also nur die eine Taste ohne die <>) verlassen wird. Durch das ":wq" wird die Datei gespeichert und der Editor verlassen. Fertig.
 
Back
Top