PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : FTP Synchronisations Problem



blacky123
10.04.2010, 22:31
Um mir den Austausch von veränderten Daten von meiner Seite leichter zu machen, versuche ich jetzt schon seit 3 Tagen meinen FTP Ordner mit einem lokalen Ordner zu synchronisieren.
Dazu nutze ich das Tool Fullsync. Leider zeigt es bei fast jeder Datei (oder jeder, schwer zu sagen^^) das der Quellcode geändert wurde, und will die Datei somit neu raufladen. Das Problem ist, dass die Datei gerade erst eben vom FTP auf den lokalen Ordner transferiert wurde und somit 100% aktuell ist.
Liegt das irgendwie an der Uhrzeit vom Server oder so?

Bei Filezilla eingestellt, das wenn Quellcode aktueller die Datei überschrieben werden soll, und auch hierbei wieder das Problem, dass so gut wie alle Datein neu raufgeladen werden.

Wo kann hier das genauo Problem liegen?

MfG
Blacky

Lokutos
10.04.2010, 22:53
warum nutzt du nicht einfach einen editor mit ftp anbindung erspaart viel mist mit diversen programmen.

blacky123
10.04.2010, 22:56
nutze zurzeit eh pspad, doch mir würde das besser gefallen die datein lokal zu bearbeiten.
jeder hat doch seine vorlieben:biggrin1:

eaxo
10.04.2010, 23:04
Ich gehe mal von unterschiedlichen Dateisystemen aus. Die meisten einfachen Programme vergleichen schlicht die Dateigrößen, kümmern sich also nicht wirklich um den Inhalt. Die unterschiedlichen Dateisysteme von Linux und Windows lassen aber meines Wissens vollkommen identische Dateien unterschiedlich groß werden.

Ich habe recht erfolgreich mit dem TotalCommander nach Zeit synchronisieren lassen. Ich meine mich zu erinnern das ich dazu zunächst die kompletten Dateien auf meinem Windows mit dem Zeitstempel der Linuxdateien versah.

eaxo

blacky123
10.04.2010, 23:09
Und wie versehe ich die mit einem Zeitstempel?

MfG

eaxo
10.04.2010, 23:29
Grad nochmal nachgeschaut:
Im TotalCommander die beiden entsprechenden Ordner öffnen und dann Befehle > Verzeichnisse synchronisieren... anklicken.
Im sich daraufhin öffnenden Fenster (wenn erforderlich) den Unterschied zur Serverzeit einstellen, Unterverzeichnisse anschalten, zunächst Datum ignorieren einschalten und auf Vergleichen klicken.
Die gefundenen Pärchen markieren, per Rechtsklick auf eine der markierten Dateien Setze lokales Dateidatum auf entferntes Datum anweisen.
Ab jetzt kannst du Datum ignorieren anhaken und nach Zeit synchronisieren lassen.
Schau mal in den Einstellungen nach, mich dünkt dort kann man den Commander anweisen beim normalen Dateitransfer das entfernte Datum grundsätzlich zu übernehmen.

eaxo

blacky123
10.04.2010, 23:35
Also wirkt deine Idee nur mit dem TotalCommander?
Eine andere Möglichkeit gibt es nicht das dauerhaft ohne den zu machen?

MfG

eaxo
10.04.2010, 23:56
Ich habe dir nur einen Weg erklärt und woran es liegt das einfache SyncTools bei unterschiedlichen Dateisystemen evtl. versagen.

Natürlich kannst du


dir Webspace mit WebDAV zulegen oder
einen eigenen Server per VPN in dein Betriebssystem einbinden oder
einen Dateimanager mit Hashfunktion/Inhaltsvergleich nutzen oder
auf Linux umsteigen
oder oder oder.


Hier führen viele Wege zum Ziel.

eaxo

blacky123
11.04.2010, 00:04
WebDAV würde doch die Datein nicht lokal speicher sonder immer abfragen oder?

Einen eigenen Server auf meinem Pc. Eher nicht^^

Nenn mir doch solche Dateimanger? Irgendwie kann der Total Commander bei mir keine FTP Verbindung herstellen.

Linux ist auf einem Macbook (Ich bin dennoch unter Windows) immer so eine Sache. Hatte mir damit mal das System zerstört^^.

oder oder oder? Was gibst denn noch?

Muss doch irgendeine Möglichkeit geben die einfach das mit dem Datum regelt. Blödes Windows :frusty::biggrin1:

eaxo
11.04.2010, 00:37
WebDAV würde doch die Datein nicht lokal speicher sonder immer abfragen oder?Ja, denke schon
Einen eigenen Server auf meinem Pc. Eher nicht^^Bei mir frisst die virtuelle Maschine 3 GB Platz und 256MB RAM
Nenn mir doch solche Dateimanger? Irgendwie kann der Total Commander bei mir keine FTP Verbindung herstellen.FileZilla hat bei mir kein Problem mit dem Datum (sofern man die Zeitdifferenz im Servermanager definiert), WiseFTP oder CuteFTP (einer von beiden sicher, vielleicht beide) bieten in den Bezahlversionen Inhaltsvergleiche.
[...]oder oder oder? Was gibst denn noch?Deine lokale Zeit auf die des Servers anpassen :rolleyes:
Direkt auf dem Server arbeiten :target:
Muss doch irgendeine Möglichkeit geben die einfach das mit dem Datum regelt. Blödes Windows :frusty::biggrin1:Ich denke nicht das Windows das Problem ist...

eaxo

blacky123
11.04.2010, 00:44
Zeitdifferenz im Servermanager definiert: Wie macht man das denn in Filezilla und wie finde ich die Serverzeit heraus, damit ich überhaupt eine Differenz bilden kann?

Lokale Zeit anpassen wäre das gleiche Problem wie Differenz^^. Ich weiß die Serverzeit nicht.

Direkt auf dem Server arbeiten hatten wir doch schon. PSPad zum Beispiel.

Windows ist aber das Problem. Weil wenn ich Linux hätte gäbe es ja keines:biggrin1:.

Will mich noch bedanken, dafpr das du mir hier so ausführlich hilfst.
Danke:thumb:

Edit:
Ok Zeit mit dem
echo date("d.m.Y H:i:s",time()+7200);
befehl gecheckt
Uhrzeit sollte stimmen.

das plus 7200 weg, mein fehler^^

eaxo
11.04.2010, 00:56
Jetzt gehe ich nur auf die erste Frage ein:

(gugel 3.Treffer bei +javascript +serverzeit)
http://www.tutorials.de/forum/javascript-ajax/282719-fortlaufende-serverzeit.html
(http://www.tutorials.de/forum/javascript-ajax/282719-fortlaufende-serverzeit.html)

und

Datei > Servermanager... > [Deinen Server markieren] > Kartenreiter Erweitert > unten Zeitzonenabweichung des Servers anpassen:

Jetzt aber...
eaxo


EDIT:
Also wenn

echo date("d.m.Y H:i:s",time()+7200);
mit deiner Systemzeit übereinstimmt stelle bitte den Filezilla auf +2 Stunden :suspicious:

blacky123
11.04.2010, 01:02
Habe es schon Editiert, beim Test hatte ichs ohne gemacht^^.
Serverzeit und lokale Zeit sollten eigentlich stimmen.

eaxo
11.04.2010, 01:10
Jetzt brauchst du doch eigentlich nur noch den lokalen Ordner auf deinen Server schieben und in der Sicherheitsabfrage Überschreiben wenn Quelldatei aktueller auswählen.

Immer davon ausgehend das die hochzuladene Datei lokal auf Funktion geprüft und die zu ersetzende Datei wiederherstellbar ist.

blacky123
11.04.2010, 01:19
Also:

1. Die Zeit hatte doch nicht gestimmt. Da waren 5 Sekunden Unterschied. Habe jetzt nachgestellt, aber so genau weiß ich ja nicht das es nur 5 Sekunden waren, schwer genau zu überprüfen. Und Uhrzeit synchronisieren funktioniert bei mir leider nicht.

2. Wenn die Uhrzeit richtig gewesen wäre, was sie ja jetzt doch nicht ist, hätte es vorher auch klappen sollen mit dem Quelldatei aktueller, und das hat ja nicht geklappt. Er lädt alles nochmal rauf.

Puh, was kann ich nun machen?

MfG

eaxo
11.04.2010, 01:45
Irgendwie artet das hier grad zu Programmsupport aus...

Auf die 5s brauchst du nicht zu achten.
Wenn Zuletzt geändert lokal jünger ist als online wird natürlich alles erneut hochgeladen.
Beispiel: Du holst dir das VMS, installierst es auf deinem Webspace, stellst fest das es läuft und installierst es dann lokal in Xampp - schon sind alle Dateien aktueller als die auf dem Server.

Um das zu verhindern wirst du um inhaltsbasierte Vergleiche nicht herumkommen...

Muss jetzt weiterarbeiten, viel Erfolg
eaxo

blacky123
11.04.2010, 03:34
So Danke nochmal.
Mit Total Commander hats geklappt, ich werde mir den wahrscheinlich kaufen.
Nur kurze Frage noch:
Du hast mir die Vorgangsweise in einem Vorpost erklärt. Muss ich da jedes mal "Setze lokales Datum auf entferntes Datum" bei allen Datein machen?
Finde unter den Einstellungen nichts.

Direkt nach dem erfolgreichen Upload setzt die Synchronisier-Funktion Datum und Zeit der lokalen Datei auf Datum/Zeit der entfernten Datei. Nun sehen die 2 Dateien identisch aus! Dies kann jedoch andere Probleme hervorrufen: Sie können dieses Verzeichnis nicht mit einem anderen Verzeichnis oder einem zweiten FTP-Server synchronisieren, weil sich bei jedem Upload Datum/Zeit der lokalen Datei ändern! Deshalb ist es wichtig, falls Sie Synchronisieren mit einem FTP-Server verwenden, dass Sie die Funktion nicht mit mehreren Zielverzeichnissen verwenden! Neu: Total Commander ändert das Datum der lokalen Dateien NICHT, wenn die Option "Datum ignorieren" markiert ist!

Laut dieser Stelle in der Anleitung würde es sich dann ja garnichts bringen Datum ignorieren anzukreuzen oder?

MFG

jpwfour
11.04.2010, 11:21
Evtl. käme auch SVN in Frage, find' ich ja extrem praktisch, sofern es sich überwiegend um Textdateien handelt...

eaxo
11.04.2010, 13:10
Entschuldigung, in obiger Vorgehensweise hat sich ein Fehler eingeschlichen. Nach dem ersten Vergleich und dem ändern der lokalen Zeit muss natürlich Datum ignorieren ausgeschaltet werden.

[...]Muss ich da jedes mal "Setze lokales Datum auf entferntes Datum" bei allen Datein machen?[...]Wenn du einen quasi identischen Datenbestand hast, dann aber kokal eine Datei veränderst hat diese doch eine neuere Zeit. Lädst du die dann hoch erhalten beide Dateien die Uploadzeit und werden bei späteren Multiuploads ausgelassen. Obige Vorgehensweise machst du nur bei dem ersten Komplettabgleich, dem eigendlich ersten Upload.
[...]Laut dieser Stelle in der Anleitung würde es sich dann ja garnichts bringen Datum ignorieren anzukreuzen oder?[..]jep, mein Fehler.
eaxo