AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Windows-Ordner mit FTP synchronisieren
Thema durchsuchen
Ansicht
Themen-Optionen

Windows-Ordner mit FTP synchronisieren

Ein Thema von Codehunter · begonnen am 21. Nov 2016 · letzter Beitrag vom 22. Nov 2016
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von Codehunter
Codehunter

Registriert seit: 3. Jun 2003
Ort: Thüringen
2.272 Beiträge
 
Delphi 10.4 Sydney
 
#1

Windows-Ordner mit FTP synchronisieren

  Alt 21. Nov 2016, 10:41
Moin!

Ich suche eine gute Lösung zum Synchronisieren eines Windows-Ordners mit einem FTP-Ordner. Dabei ist Windows IMMER die Quelle und FTP ist IMMER das Ziel. Eine Kreuzaktualisierung von Dateien findet nicht statt. Alle Änderungen am Windows-Ordner (Neue Datei, Ändern, Umbenennen, Verschieben, Löschen) sollen auf dem FTP wiederholt werden. Die Windows-Seite ist ein Server 2008 R2.

Ich habe schon zweimal Geld ausgegeben für eine kommerzielle Lösung (GoodSync und SyncBack). Beide Male ein Griff ins Klo. Entweder funktionierte die Unattended-Synchronisation als Systemdienst nicht oder aber die FTP-seitige Kopie war nicht identisch mit dem Windows-Original, es wurden Änderungen übersehen und Dateien nicht übertragen, die sich nur am Zeitstempel, nicht jedoch in der Dateigröße geändert hatten.

Wenn ich jetzt zum dritten Mal zum Chef dackeln und um Geld für ein FTP-Sync betteln darf, dann möchte ich wenigstens eine funktionierende Lösung. Darum würde ich mich über Vorschläge eurerseits freuen.

Grüße
Cody
Ich mache grundsätzlich keine Screenshots. Schießen auf Bildschirme gibt nämlich hässliche Pixelfehler und schadet der Gesundheit vom Kollegen gegenüber. I und E zu vertauschen hätte den selben negativen Effekt, würde aber eher dem Betriebsklima schaden
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.184 Beiträge
 
Delphi 12 Athens
 
#2

AW: Windows-Ordner mit FTP synchronisieren

  Alt 21. Nov 2016, 11:19
Verschieben wird bisschen schwerer zu erkennen ... also einfach als Löschen+Neuerstellen ansehn.

Delphi Starten, neuen Service erstellen, eine TIdFTP und 'nen TTimer draufpappen, die System.IOUtils einbinden und dann einfach in 'ner rekursiven Schleife über das Verzeichnis und den FTP iterieren, bei Abweichungen übertragen.
Sollte in 'ner einfachen/ausreichenden Version bestimmt in 'ner Stunde fertig sein.

Kann man auch noch mit Delphi-Referenz durchsuchenVerzeichnis überwachen aufmotzen.



Eventuell auch einfach das FTP als Verzeichnis/Laufwerk ins Windows einbinden?
Direkt nutzen oder jedes x-beliebige SyncTool drauf loslassen. (falls da nicht grade Terrabyte übers Netz wandern)
$2B or not $2B

Geändert von himitsu (21. Nov 2016 um 11:22 Uhr)
  Mit Zitat antworten Zitat
mm1256

Registriert seit: 10. Feb 2014
Ort: Wackersdorf, Bayern
642 Beiträge
 
Delphi 10.1 Berlin Professional
 
#3

AW: Windows-Ordner mit FTP synchronisieren

  Alt 21. Nov 2016, 11:20
Hallo,

was spricht gegen selber programmieren? Die einzige (etwas schwierige aber zu lösende) Aufgabe dürfte darin bestehen, geöffnete Dateien im Read-Only-Modus zu öffnen. Der Rest ist in weniger als einer Stunde zu machen.

PS: Überschneidung mit himitsus Beitrag
Gruss Otto PS: Sorry wenn ich manchmal banale Fragen stelle. Ich bin Hobby-Programmierer und nicht zu faul die SuFu zu benutzen
  Mit Zitat antworten Zitat
Benutzerbild von Codehunter
Codehunter

Registriert seit: 3. Jun 2003
Ort: Thüringen
2.272 Beiträge
 
Delphi 10.4 Sydney
 
#4

AW: Windows-Ordner mit FTP synchronisieren

  Alt 21. Nov 2016, 11:46
was spricht gegen selber programmieren?
Akuter, um nicht zu sagen katastrophaler Zeitmangel. Mit einer Stunde ist sowas sicher nicht getan, wenn man sich in puncto Indy+FTP nicht zufällig blind auskennt, was bei mir nicht der Fall ist.
Ich mache grundsätzlich keine Screenshots. Schießen auf Bildschirme gibt nämlich hässliche Pixelfehler und schadet der Gesundheit vom Kollegen gegenüber. I und E zu vertauschen hätte den selben negativen Effekt, würde aber eher dem Betriebsklima schaden
  Mit Zitat antworten Zitat
Der schöne Günther

Registriert seit: 6. Mär 2013
6.176 Beiträge
 
Delphi 10 Seattle Enterprise
 
#5

AW: Windows-Ordner mit FTP synchronisieren

  Alt 21. Nov 2016, 11:49
Also in 60 Minuten würde ich das sicher auch nicht hinbekommen. Ein "Schau mal, es kompiliert und es passiert sogar was" sicher schon. Aber nicht in dem Zustand dass ich mich für irgendein Server-Backup verbürgen könnte und ruhig schlafen kann
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.184 Beiträge
 
Delphi 12 Athens
 
#6

AW: Windows-Ordner mit FTP synchronisieren

  Alt 21. Nov 2016, 11:51
Das ist dann natürlich etwas ungünstig.

Die einzige (etwas schwierige aber zu lösende) Aufgabe dürfte darin bestehen, geöffnete Dateien im Read-Only-Modus zu öffnen.
Backup-API oder VolumeShadowService ODER ganz einfach die Datei merken und später nochmal versuchen (man könnte auch warten, bis die Datei frei ist, aber wenn die dann paar Tage offen bleibt ...)
$2B or not $2B
  Mit Zitat antworten Zitat
Benutzerbild von Codehunter
Codehunter

Registriert seit: 3. Jun 2003
Ort: Thüringen
2.272 Beiträge
 
Delphi 10.4 Sydney
 
#7

AW: Windows-Ordner mit FTP synchronisieren

  Alt 21. Nov 2016, 12:55
VolumeShadowService
Huh? Mit FTP? Wär mir neu ^^

Zur Präzisierung: Auch wenn die Beschreibung so klingt, es geht nicht um ein Backup im Sinne von Datensicherheit. Vielmehr ist das Ziel ein so genannter Exposed Host, die Quelle befindet sich im sicheren Netzbereich. Der EH ist eine Linuxmaschine, da bekommt man Dateien nur per FTP, SFTP oder SSH hin geschubst. Leider kein Rootzugriff und damit auch ein Samba in Sicht.
Ich mache grundsätzlich keine Screenshots. Schießen auf Bildschirme gibt nämlich hässliche Pixelfehler und schadet der Gesundheit vom Kollegen gegenüber. I und E zu vertauschen hätte den selben negativen Effekt, würde aber eher dem Betriebsklima schaden
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.184 Beiträge
 
Delphi 12 Athens
 
#8

AW: Windows-Ordner mit FTP synchronisieren

  Alt 21. Nov 2016, 13:00
Nein, aber zum Auslesen der lokalen Verzeichnisse, bevor die Dateien zum FTP wandern.

Pssst, du meinst bestimmt "kein Samba".




Für den Anfang reicht da bestimmt die lokalen Dateien/Verzeichnisse alle x Zeit durchzugehn, mit dem Verzeichnis auf dem FTP querzuvergleichen und die Änderungen blind zu übertragen.
FindFirst/FindNext gibt es sowohl lokal, als auch im FTP.

* FindFirst+FindNext oder TDirectory.GetFiles + TDirectory.GetLastWriteTime
* TIdFTP.ExtListItem
* beides vergleichen (Dateinamen und Datum/Größe)
* TIdFTP.ChangeDir, TIdFTP.MakeDir, TIdFTP.Put+TIdFTP.SetModTime, TIdFTP.Delete
$2B or not $2B

Geändert von himitsu (21. Nov 2016 um 13:13 Uhr)
  Mit Zitat antworten Zitat
mm1256

Registriert seit: 10. Feb 2014
Ort: Wackersdorf, Bayern
642 Beiträge
 
Delphi 10.1 Berlin Professional
 
#9

AW: Windows-Ordner mit FTP synchronisieren

  Alt 21. Nov 2016, 13:12
Nein, aber zum Auslesen der lokalen Verzeichnisse, bevor die Dateien zum FTP wandern.
Ja genau, so würde ich es auch machen. Dann noch den Kopier-Teil sourcemäßig (eigene Klasse) sauber trennen und schon ist es ziemlich egal, ob die Dateien jetzt per FTP, und später mal durch irgend eine andere Variante, auf das eigentliche Ziel transportiert werden
Gruss Otto PS: Sorry wenn ich manchmal banale Fragen stelle. Ich bin Hobby-Programmierer und nicht zu faul die SuFu zu benutzen
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.184 Beiträge
 
Delphi 12 Athens
 
#10

AW: Windows-Ordner mit FTP synchronisieren

  Alt 21. Nov 2016, 13:30
Da es billig und schnell gehen muß:
Eine Prozedur "KopiereVerzeichnis", das vom Timer und rekursiv von sich selber aufgerufen wird.
$2B or not $2B
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:58 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz