Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Betriebssysteme (https://www.delphipraxis.net/27-betriebssysteme/)
-   -   dateien fehlerfrei auf ftp kopieren (https://www.delphipraxis.net/114135-dateien-fehlerfrei-auf-ftp-kopieren.html)

geisi 20. Mai 2008 12:51


dateien fehlerfrei auf ftp kopieren
 
hi! muss mehrere tausend dateien von einem linux-rechner (ubuntu 5) auf einen anderen linux-rechner in meinem LAN via FTP kopieren. Wie kann ich die Dateien sicher (mit fehlerüberprüfung) vom einen rechner auf den anderen (debian etch 4.0) kopieren.

Hab mal was von md5-checksums gehört, geht das mit dem? wenn ja, welcher ftp-client und welcher ftp-server kann das?

bin für andere vorschläge auch dankbar!

SirThornberry 20. Mai 2008 13:03

Re: dateien fehlerfrei auf ftp kopieren
 
warum sollten die dateien nicht richtig ankommen? TCP/IP und damit FTP was darauf aufbaut haben doch schon eine integrierte Fehlerprüfung oder nicht? Ich hatte zumindest noch nie das Problem das andere Daten ankommen als ich abgeschickt habe.

himitsu 20. Mai 2008 20:32

Re: dateien fehlerfrei auf ftp kopieren
 
vermutlich weil einige Programme z.B. bei Abbruch des Datentransvers keine Fehlermeldung rausrücken und es einfach stillschweigend ignorieren :x


md5-checksums bringt nur etwas, wenn auf beiden Rechner ein Programm läuft, welches diese Prüfsumme errechen kann und dann nur die Prüfsumme übertragen wird.
Wenn du nur einen FTP-Zugriff hat, dann kann man die Datei auch direkt vergleichen, da sie so, oder so runtergeladen werden müßte.


Einfacher wäre es, wenn das FTP-Programm nach der Übertragung zumindestens nochmal die Dateigröße laden könnte und diese Vergleicht, so fiehlen zumindestens fehlende Datei(teile) auf.

sx2008 21. Mai 2008 02:05

Re: dateien fehlerfrei auf ftp kopieren
 
IMHO ist die einzig sichere Lösung die Datei über FTP nach dem Hochladen wieder herunterzuladen und binär mit der Orginaldatei zu vergleichen.
Dabei werden dann auf Verfälschungen durch einen nicht gesetzten Binary Mode entdeckt.
Nachteil: doppelter Datenverkehr

Andere Möglichkeit:
Datei per FTP hochladen und über einen zusätzlichen HTTP-Server eine Prüfsumme (MD4 oder MD5) holen und mit lokaler Datei vergleichen.

Luckie 21. Mai 2008 07:26

Re: dateien fehlerfrei auf ftp kopieren
 
Zitat:

Zitat von sx2008
IMHO ist die einzig sichere Lösung die Datei über FTP nach dem Hochladen wieder herunterzuladen und binär mit der Orginaldatei zu vergleichen.

Und wenn beim Runterladen ein Fehler auftriit?

franktron 21. Mai 2008 07:43

Re: dateien fehlerfrei auf ftp kopieren
 
Warum nimmste nicht Rsync das ist extar fürs Synchronisieren gemacht worden.

sx2008 21. Mai 2008 22:55

Re: dateien fehlerfrei auf ftp kopieren
 
Zitat:

Zitat von Luckie
Zitat:

Zitat von sx2008
IMHO ist die einzig sichere Lösung die Datei über FTP nach dem Hochladen wieder herunterzuladen und binär mit der Orginaldatei zu vergleichen.

Und wenn beim Runterladen ein Fehler auftriit?

Dann würde die Client-Anwendung melden "Übertragung der Datei xy fehlgeschlagen; wiederholen, abbrechen oder ignorieren ?".

blackdrake 8. Jun 2008 19:23

Re: dateien fehlerfrei auf ftp kopieren
 
Hallo.

Wenn es vom Server her möglich ist, würde ich SMB, also das Samba/NetBIOS Protokoll verwenden. Hier dürfte Windows das CRC32 (16?) des Dateisystems anbieten. Verhält sich dann wie ein Netzlaufwerk.

Aber wenn du FTP brauchst:

Hast du zusätzlich Zugriff auf die Shell, würde ich (auch aus Platz- und Zeitgründen) die mehreren tausend Dateien alle in eine ZIP packen und dann diese hochladen. Anschließend auf dem Server mit dem SSH-Kommando "unzip" entpacken. Dann müsstest du auch nur 1 Datei auf Korrektheit prüfen. Du musst lediglich darauf achten, dass der Übertragungsmodus auf Binary oder Auto steht. Und ich denke, eine exakte Kontrolle der Byteanzahl dürfte als Prüfung genügen, oder? (Programme wie WS_FTP geben dir die Byteanzahl exakt aus, nicht als KB oder MB)

Es gibt beim FTP meines Wissens nach nur 2 Fehlerquellen:
a) Abgebrochener Transfer --> Dateigröße kleiner
b) Binäre Daten über ASCII-Modus

Das unzip Programm würde bei einem Übertragungsfehler darüber hinaus meckern, weil die ZIP dann ihre Integrität verlieren würde. ZIP hat intern auch CRC16 Prüfsummen.

Vielleicht hilft es etwas.

Gruß
blackdrake

Valle 8. Jun 2008 19:38

Re: dateien fehlerfrei auf ftp kopieren
 
In dem Fall würde ich SCP benutzen.
Das ist schnell und sehr einfach zu bedienen. Alles was du dafür brauchst ist einen SSH-Server auf einem der Rechner und einen SSH-Client auf einem anderen Rechner. Geht dann mit dem Befehl sehr leicht:

Code:
scp /meine/daten/* root@10.1.1.2:/dahin/solls/kopiert/werden/
Überprüfen würde ich die Dateien garnicht. Im LAN sollten die Daten alle sicher ankommen, da passiert nichts. Ansonsten kannst du dir ein Script mit den Befehlen "find" und "md5sum" basteln.

Mit freundlichen Grüßen,

Valle


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:23 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz