FTP sichern in sh Datei mit Crontab
FTP sichern in sh Datei mit Crontab
Hallo. Ich habe eine .sh Datei, die eine Datenbank packt und danach auf einen FTP Fileserver hochladen soll. Wenn ich die Datei direkt aufrufe, klappt alles, aber wenn ich das über einen Crontab mache, wird die Datei zwar gepackt, aber das Sichern per FTP findet nicht statt. Kann das an der Laufzeit liegen oder was kann das sein?
Re: FTP sichern in sh Datei mit Crontab
Das Environment für cron-Jobs ist generischer, zBsp Pfade und Variablen.
Du solltest Dein Script daraufhin abklopfen.
Du solltest Dein Script daraufhin abklopfen.
mfg rendegast
-----------------------
Viel Eifer, viel Irrtum; weniger Eifer, weniger Irrtum; kein Eifer, kein Irrtum.
(Lin Yutang "Moment in Peking")
-----------------------
Viel Eifer, viel Irrtum; weniger Eifer, weniger Irrtum; kein Eifer, kein Irrtum.
(Lin Yutang "Moment in Peking")
Re: FTP sichern in sh Datei mit Crontab
Das script sieht wie folgt aus:
Der Cron wird ja auch ausgeführt, da die Datenbank ja gepackt wird, allerdings klappt der FTP per Cron nicht. Bei einem manuellen Aufruf funktioniert es aber
Code: Alles auswählen
#!/bin/sh
DATUM=`date +%d-%m`
tar cvfz /srv/backup/datenbank.$DATUM.xxx.gz /srv/backup/datenbank.$DATUM.xxx.sql
ftp -in <<EOF
open xxx.xxx.xxx
user webx xxxxxxxx
bin
cd /files
put datenbank.$DATUM.xxx.gz
QUIT
EOF
Re: FTP sichern in sh Datei mit Crontab
hi,
da fehlt wohl entweder ein 'cd' oder der absolute Pfad beim put-Befehl:
da fehlt wohl entweder ein 'cd' oder der absolute Pfad beim put-Befehl:
Code: Alles auswählen
put /srv/backup/datenbank.$DATUM.xxx.gz
Beware of programmers who carry screwdrivers.
Re: FTP sichern in sh Datei mit Crontab
cd /files
steht ja darüber. Die Datei, die kopiert werden soll befindet sich im selben Verzeichnis wie die .sh Datei
steht ja darüber. Die Datei, die kopiert werden soll befindet sich im selben Verzeichnis wie die .sh Datei
Re: FTP sichern in sh Datei mit Crontab
jein, "cd" passiert auf dem Ziel-Server, lokal müsste es "lcd" heißen. Außerdem steht die datenbank...gz nicht in /files sondern in /srv/backup.
Dass das Script im gleichen Verzeichnis steht, hilft nur beim manuellen Aufruf. Wenn das Script per Cron gestartet wird, ist das Arbeitsverzeichnis aber undefiniert (wahrscheinlich ist es /, aber das bringt ja auch nichts).
Dass das Script im gleichen Verzeichnis steht, hilft nur beim manuellen Aufruf. Wenn das Script per Cron gestartet wird, ist das Arbeitsverzeichnis aber undefiniert (wahrscheinlich ist es /, aber das bringt ja auch nichts).
Beware of programmers who carry screwdrivers.
Re: FTP sichern in sh Datei mit Crontab
Hatte ich gestern Nacht mal probiert, ist aber wieder nichts übertragen worden.
Re: FTP sichern in sh Datei mit Crontab

normalerweise verschickt cron eine Mail mit den Fehlermeldungen, schau mal nach, notfalls direkt im Mail-Verzeichnis, z.B. /var/mail.
Beware of programmers who carry screwdrivers.
Re: FTP sichern in sh Datei mit Crontab
Warum nimmst Du nicht lftp und legst die Logindaten in ~/.netrc?
Das ganze noch mit dem Script gepaart denke ich wäre der einfachere Weg.
Gruss und Frohes Fest
Das ganze noch mit dem Script gepaart denke ich wäre der einfachere Weg.
Gruss und Frohes Fest
Re: FTP sichern in sh Datei mit Crontab
Da liegt irgendwo die Lösung.
Habe das tatsächlich im Ordner var/mail gefunden.
Mit put /srv/backup/datenbank.$DATUM.xxx Could not create file
Mit put datenbank.$DATUM.xxx.gz local: datenbank.11-12.xxx.gz: No such file or directory
Habe das tatsächlich im Ordner var/mail gefunden.
Mit put /srv/backup/datenbank.$DATUM.xxx Could not create file
Mit put datenbank.$DATUM.xxx.gz local: datenbank.11-12.xxx.gz: No such file or directory