AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Delphi-PRAXiS - Lounge Betriebssysteme dateien fehlerfrei auf ftp kopieren
Thema durchsuchen
Ansicht
Themen-Optionen

dateien fehlerfrei auf ftp kopieren

Ein Thema von geisi · begonnen am 20. Mai 2008 · letzter Beitrag vom 8. Jun 2008
Antwort Antwort
geisi

Registriert seit: 19. Sep 2003
449 Beiträge
 
Delphi 6 Professional
 
#1

dateien fehlerfrei auf ftp kopieren

  Alt 20. Mai 2008, 12:51
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!
mfg geisi
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#2

Re: dateien fehlerfrei auf ftp kopieren

  Alt 20. Mai 2008, 13:03
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.
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

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

Re: dateien fehlerfrei auf ftp kopieren

  Alt 20. Mai 2008, 20:32
vermutlich weil einige Programme z.B. bei Abbruch des Datentransvers keine Fehlermeldung rausrücken und es einfach stillschweigend ignorieren


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.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
Benutzerbild von sx2008
sx2008

Registriert seit: 15. Feb 2008
Ort: Baden-Württemberg
2.332 Beiträge
 
Delphi 2007 Professional
 
#4

Re: dateien fehlerfrei auf ftp kopieren

  Alt 21. Mai 2008, 02:05
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.
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#5

Re: dateien fehlerfrei auf ftp kopieren

  Alt 21. Mai 2008, 07:26
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?
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
franktron

Registriert seit: 11. Nov 2003
Ort: Oldenburg
1.446 Beiträge
 
Delphi 10.2 Tokyo Enterprise
 
#6

Re: dateien fehlerfrei auf ftp kopieren

  Alt 21. Mai 2008, 07:43
Warum nimmste nicht Rsync das ist extar fürs Synchronisieren gemacht worden.
Frank
Tux sein Lieblingsquellcode
While anzfische<TuxSatt do begin
Fisch:=TFisch.Create; Tux.EssenFisch(Fisch); Fisch.Free;inc(anzfische); end;
  Mit Zitat antworten Zitat
Benutzerbild von sx2008
sx2008

Registriert seit: 15. Feb 2008
Ort: Baden-Württemberg
2.332 Beiträge
 
Delphi 2007 Professional
 
#7

Re: dateien fehlerfrei auf ftp kopieren

  Alt 21. Mai 2008, 22:55
Zitat von Luckie:
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 ?".
  Mit Zitat antworten Zitat
blackdrake

Registriert seit: 21. Aug 2003
Ort: Bammental
618 Beiträge
 
Delphi 10.3 Rio
 
#8

Re: dateien fehlerfrei auf ftp kopieren

  Alt 8. Jun 2008, 19:23
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
Daniel Marschall
  Mit Zitat antworten Zitat
Benutzerbild von Valle
Valle

Registriert seit: 26. Dez 2005
Ort: Karlsruhe
1.223 Beiträge
 
#9

Re: dateien fehlerfrei auf ftp kopieren

  Alt 8. Jun 2008, 19:38
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
Valentin Voigt
BOFH excuse #423: „It's not RFC-822 compliant.“
Mein total langweiliger Blog
  Mit Zitat antworten Zitat
Antwort Antwort


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:03 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