sims
Goto Top

FTP Server Daten alle paar Tage automatisch sichern (Backup)

Hallo Leute,
ich habe ein Frage da ich mit Google und CO nicht so wirklich weiter gekommen bin! face-smile

Und zwar besitze ich einen Webspace wo ich ein Forum laufen habe - jetzt würde ich gerne als Backup meine DATEN via FTP gern alle paar TAGE automatisch downloaden auf meinen RECHNER!

Gibt es einen Software/Möglichkeit die das macht - sprich sich automatisch via FTP anmeldet und einen bestimmten Ordner dann downloadet und anschließend die Sitzung wieder beendet?


Besten DANK für eure hilfe


PS: die Datenbank vom Server sichere ich mit Mysqldumper!

Content-Key: 182553

Url: https://administrator.de/contentid/182553

Printed on: April 16, 2024 at 04:04 o'clock

Member: Lochkartenstanzer
Lochkartenstanzer Mar 25, 2012 at 13:50:26 (UTC)
Goto Top
Eine Batchdatei (bash oder cmd) mit folgendem Inhalt erzeugen, ggf. noch Pfadparatemer hinzufügen:

 wget -r ftp:://username:passwort@server/ftp-verzeichnis-pfad

und das Ganze per cron oder "geplante Aufgaben" starten.

lks
Member: kaiand1
kaiand1 Mar 25, 2012 at 13:55:57 (UTC)
Goto Top
Denk aber auch an den Mysql Dump....
Member: Lochkartenstanzer
Lochkartenstanzer Mar 25, 2012 at 14:05:17 (UTC)
Goto Top
Der landet doch irgendwo auf dem Server per cronjob denke ich . dann wird der mit dem wget einfach mitgezogen, wenn das verzeichnis paßt.

lks
Member: sims
sims Mar 25, 2012 at 14:10:01 (UTC)
Goto Top
Besten DANK für die schnelle Antwort.

Jetzt muss ich noch fragen ob es möglich wäre bei jedem Download/Backup dem Ordner der auf den Rechner dann entsteht einen Zeitstempel aufzudrücken

z.B. wenn ich eine Geplante aufgabe mache die das am MO und DI ausführt dann hätte ich gerne am lokalen rechner dann bei mir zwei Ordner die ungefähr so aussehen

FORUMHAUPTORDNER_28_03_2012
FORUMHAUPTORDNER_01_04_2012

mir geht es darum das die Batchdatei nicht wieder immer denn selben Ordner überschreibt sonder das ich immer wieder ein neues Backup vom aktuellen gewünschten tag habe!


danke euch

mfg
Member: kaiand1
kaiand1 Mar 25, 2012 at 14:13:36 (UTC)
Goto Top
$(date "+%d_%m_%Y")
dranhängen und freuen face-smile
Member: sims
sims Mar 25, 2012 at 14:19:39 (UTC)
Goto Top
entschuldige die FRAGE aber wo dranhängen ??

so?
wget -r ftp:://username:passwort@server/ftp-verzeichnis-pfad $(date "+%d_%m_%Y")


was ich noch nicht verstehe ist wo gebe ich dem batch an wo er das zeug bei mir am rechner abspeichern soll?


ich habe es gerade über die CMD getestet und wenn ich es ausfürhre dann kommt folgender fehler:
Der Befehl "wget" ist entweder falsch geschrieben oder
konnte nicht gefunden werden.


danke für eure schnelle hilfe
Member: Lochkartenstanzer
Lochkartenstanzer Mar 25, 2012, updated at Jul 19, 2013 at 12:14:23 (UTC)
Goto Top
wget

und so anhängen (für bash)
     wget -r ftp:://username:passwort@server/ftp-verzeichnis-pfad -P Pfad_$(date "+%d_%m_%Y")

Unter Windows ist es sowas ähnliche wie (gerade nicht ausprobiert mangels cmd.exe)

     wget -r ftp:://username:passwort@server/ftp-verzeichnis-pfad -P Pfad_ ('DATE/T')

lks
Member: steini84
steini84 Mar 25, 2012 at 14:42:02 (UTC)
Goto Top
Hi,

bei Windows gibt es kein wget.

Du kannst es aber unter http://gnuwin32.sourceforge.net/packages/wget.htm herunterladen.

mFg steini
Member: sims
sims Mar 25, 2012 at 14:44:08 (UTC)
Goto Top
Hallo steini,
danke für die info - das hab ich schon gemacht !

aber irgendwie bekomm ich das noch nicht zum laufen! face-wink
Member: sims
sims Mar 25, 2012 at 15:09:23 (UTC)
Goto Top
Hallo Leute,
ich hab es jetzt mal zum laufen gebracht!

so sieht es unter windows 7 aus:

"C:\Programme\GnuWin32\bin\wget.exe" -P"D:\_sicherung" ftp://Benutzername:Passwort@FTPServer/Ordnername/ -m


Das einzige was jetzt nicht funktioniert ist der Zeitstempel $(date "+%d_%m_%Y")

kann mir da noch wer weiterhelfen ??

besten dank


mfg
Member: sims
sims Mar 25, 2012 at 15:24:35 (UTC)
Goto Top
So jetzt hab ich es geschafft!

Hier die LÖSUNG für Windwos - falls es mal wer brauchen sollte!

1. wget aus dem Internet downloaden (http://gnuwin32.sourceforge.net/packages/wget.htm) und installieren
2. Batch Datei erstellen mit folgendem Inhalt:

 
"C:\Programme\GnuWin32\bin\wget.exe" -P"D:\_sicherung_(%DATE%)" ftp://Benutzername:Passwort@FTPServer/Ordnername/ -m  

back-to-topkurze beschriebung des Codes:

"C:\Programme\GnuWin32\bin\wget.exe"   
--> Zeigt den Pfad zu wget (je nachdem wo ihr es installiert habt)
-P"D:\_sicherung_(%DATE%)"   
--> erstellt einen Ordner auf der D:\ Partition mit dem Aktuellen DATUM
ftp://Benutzername:Passwort@FTPServer/Ordnername/ 
--> gibt die anmeldedaten an den ftp server weiter
-m 
--> macht einen genau spiegelung des ordners


ich hoffe es hilft euch weiter


mfg

PS. natürlich den gelpanten Task nicht vergessen sonst wird da gar nix automatisch gemacht! face-wink
Member: aqui
aqui Mar 25, 2012 at 16:03:56 (UTC)
Goto Top
Wenn du jetzt noch freundlicherweise den "code und /code Tag (Klick auf "Formatierungshilfe --> Quellcode") benutzen würdest dann können wir auch alles sauber lesen und nicht dieses URL Kauderwelscch oben !! face-sad
Member: sims
sims Mar 25, 2012 at 16:17:12 (UTC)
Goto Top
So jetzt aber!

Ich hoffe es hilf wem weiter!

Und DANKE nochmals für die schnelle Hilfe!

mfg
Member: Yezariael
Yezariael Jul 19, 2013 at 12:09:55 (UTC)
Goto Top
Genail, genau was ich gesucht habe!
Danke für die Anleitung.
Member: TheGamingM
TheGamingM Jan 01, 2018, updated at Jan 06, 2018 at 22:43:47 (UTC)
Goto Top
Hallo,
Ich weiß das ist etwas spät, doch ich will hier noch einmal "wget" für Windows vereinfachen.
Ich beziehe mich hierbei auf den Beitrag von "Sims" mit diesem Code:
"C:\Programme\GnuWin32\bin\wget.exe" -P"D:\_sicherung_(%DATE%)" ftp://Benutzername:Passwort@FTPServer/Ordnername/ -m  
Der Code ist einwandfrei. Ich möchte bloß wget vereinfachen, also aus so:

"C:\Programme\GnuWin32\bin\wget.exe"** -P "D:\_sicherung_(%DATE%)" ftp://Benutzername:Passwort@FTPServer/Ordnername/ -m  

So:
wget -P "D:\_sicherung_(%DATE%)" ftp://Benutzername:Passwort@FTPServer/Ordnername/ -m  

machen.
Das macht man indem man auf: http://gnuwin32.sourceforge.net/packages/wget.htm geht und sich das neuste Setup herunterlädt. Die Beschreibung von dem Download ist " Complete package, except sources" (Das hier ist die letzte Version von wget: https://netix.dl.sourceforge.net/project/gnuwin32/sed/4.2.1/sed-4.2.1-se ... [Stand 01.01.2018]). Wenn du es dann heruntergeladen hast, öffnest du die .exe und klickst dich weiter bis du zu "Select Components" kommst. Dort wählst du Binaries und Documentation aus und klickst auf "Next". Wenn die Installation erfolgreich war schließt du einfach das Fenster und drückst die Windows-Taste und R. Nun tippst du in die Zeile "sysdm.cpl" und drückst Enter. nun öffnet sich ein neues Fenster, doch jetzt öffnest du den Explorer und gehst du zu dem Pfad:
C:\Program Files (x86)\GnuWin32\bin
und schaust nach ob der Pfad existiert. Wenn ja, gut. Wenn nicht, dann Installiere wget neu. Nun kopierst du den Pfad und gehst auf das Fenster das sich vorhin geöffnet hat. Dort gehst du auf:
Erweitert -> Umgehungsvariablen... -> Systemvariablen -> klickst auf Path -> Bearbeiten... -> Neu 
und gibst nun den Pfad ein. Jetzt klickst du auf OK, dann wieder auf OK und zum letzten mal nochmal auf OK. Nun kannst du in der CMD wget benuten, viel Spaß damit.

Ich hoffe Ich konnte dem ein oder anderen helfen.

MFG Maris
Member: Lochkartenstanzer
Lochkartenstanzer Jan 01, 2018 updated at 15:59:33 (UTC)
Goto Top
Zitat von @TheGamingM:

Ich weiß das ist etwas spät, ...

Stimmt,

Pfade korrekt zu setzen lernt man schon im Kindergarten, nichtverst im Adminforum.

Und vor allem lernt man, daß man in skripten oder cronjobs das executable mit Pfad angibt, um Malware dran zu hindern, sich in den Pfad einzuschmuggeln oder um schlicht und einfach sicherzustellen, daß man das richtige binary benutzt.

lks