Dateien von externem FTP Server nach Lokal kopieren

  • Ab sofort steht euch hier im Forum die neue Add-on Verwaltung zur Verfügung – eine zentrale Plattform für alles rund um Erweiterungen und Add-ons für den DSM.

    Damit haben wir einen Ort, an dem Lösungen von Nutzern mit der Community geteilt werden können. Über die Team Funktion können Projekte auch gemeinsam gepflegt werden.

    Was die Add-on Verwaltung kann und wie es funktioniert findet Ihr hier

    Hier geht es zu den Add-ons

Status
Für weitere Antworten geschlossen.

OliBü

Benutzer
Registriert
25. Aug. 2017
Beiträge
5
Reaktionspunkte
0
Punkte
0
Hallo Zusammen

Ich suche eine Möglichkeit um von einem FTP Server bestimmte Dateien auf mein Synology zu kopieren. Dies sollte täglich einmal geschehen. Gibt es eine Möglichkeit?

Falls Ja, Wie muss ich dies bewerkstelligen?

Vielen Dank für Eure Mithilfe

Gruss Oli
 
Vielen Dank

Gibt es auch eine Möglichkeit dies mit einem Skript in den Aufgaben zu bewerkstelligen?
 
Ich bin da zwar nicht ganz so bewandert was die script Schiene angeht, aber wenn du in der Filestation die FTP Verbindung zum entfernten Server einbindet (Remote Ordner), dann sollte das bestimmt gehen.
 
Leider kein Erfolg

Ich kann in der Filstation kein FTP auswählen. Nur CIFS ist Möglich.

Ich suche eine Möglichkeit um täglich ein Logfile von einem FTP Server zu kopieren und im NAS abzulegen.

Vielen Dank für Eure Mithilfe

Gruss Oli
 
Hallo!

Bei mir auf der DS ist lftp vorhanden. Mit diesem kannst Du auch per Bash einen Datei runderladen.

Beispiel für eine Bash (z.B. testftp.sh):
#!/bin/bash
username="ftpuser"
password="ftppassword"
host="url oder ip"
ftppfad="/httpdocs/"
datei="dateiname"

lftp -u $username,$password $host << EOF

cd $ftppfad
get $dateiname

bye
EOF

Ich bin auch ein Bash-Experte. Ggf. noch vor dem Aufruf von lftp den lokalen Pfad setzen.
Wichtig: Die Datei muss nach dem Erstellen noch als ausführbare Datei "chmod 774 testftp.sh".

Viel Spass beim Testen,
gruß
Lux007
 
Vielen Dank für die Information. Ich stehe immer noch auf dem Schlauch.

Was ist "IFTP"? Muss ich da noch was nachinstallieren?
Ich habe eine DS115J.

Ich habe eine Datei mit dem Namen "testftp.sh" erstellt und deinen Vorschlag hineinkopiert. Die Variabeln habe ich korrekt ausgefüllt.
Ich sehe aber nicht, wohin mir meine Logdatei kopiert wird.

Ich habe meine "testftp.sh" Datei in den Ordner "/volume1/logdateien" kopiert und in den Aufgaben diesen Pfad angegeben.
Leider ohne Erfolg.


Pfad der zu kopierenden Logdatei:
ftp://192.168.25.220/log/test.log

Ziel der Datei:
volume1/Logdateien/

Vielen Dank für Eure Hilfe

Gruss Oli
 
"lftp" (nicht "LFTP") sollte auch auf der 115j verfügbar sein. Probiere doch bitte einmal, es direkt auf der Shell zu starten.
 
Hallo!

Die Datei wird beim Aufruf von der Console im aktuellen Verzeichnis abgelegt. Beim Aufruf über den Aufgabenplaner weiss ich nicht, wo die Datei landet...

Den "Ablage"-Pfad im Script kannst Du oberhalb des lftp-Aufrufes durch einen entsprechenden Aufruf anpassen:

cd /volume1/Logdateien

lftp -u $username,$password $host << EOF

Für den Test mit den Pfaden (auch auf dem FTP-Server) am besten einmal über die Console "manuell" durchgehen.
z.B.
lftp -u username,passwort hostadresse
cd /log
ls (zeigt dir den Inhalt im aktuellen Verzeichnis auf dem FTP-Server)
get dateiname
bye (zum beenden)

Die Schritte, die auf der Console geklappt habe, sollten dann auch in die Bash-Datei. Beim Testen über die Consolen-Eingabe sieht man direkt, ob irgendwelche Aufrufe ggf. nicht passen...

Gruß
Lux007
 
Hier mal als Beispiel mein Script, welches ich seit Anfang an verwende und mit dem ich die Datenbank(en) meiner Foren draußen kopiere, per ftp reinhole und bei mir auf der Syno wieder installiere/überschreibe:

Code:
#!/bin/sh
#
PATH=/opt/bin:/opt/sbin:$PATH
export PATH
cd /volume1/web/dump/
cat zugang1.ftp | lftp -u ftp-master,password -p 21 www.***.de/dump
sleep 5
gzip -d *dump-***.gz
mv /volume1/web/dump/*dump-*** /volume1/web/dump/dump-***.sql
/usr/bin/mysql -uroot -password -hlocalhost db-*** < /volume1/web/dump/dump-***.sql
 
Vielen Dank an Alle

Das kopieren habe ich mit folgendem Skript hinbekommen:
wget -b -N -q --directory-prefix=/volume1/lox ftp://User:Passwort@192.168.xxx.xxx/log/test.log

Anschliessend bekommt die Datei einen neuen Namen:
mv /volume1/lox/test.log /volume1/lox/FZW_$(date '+%y_%m_%d').txt

Leider habe ich es noch nicht geschafft, die Uhrzeit mit im Dateinamen anzuzeigen. Hat mit jemand noch einen Tip.

Gruss Oli
 
Status
Für weitere Antworten geschlossen.
 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat