rsync
zsync
Gibt es ein besseres Synchronisierungs-/Sicherungstool für Linux? Ich habe eine lokale Installation meiner Site, ein Wiki. Ich möchte Änderungen an meiner lokalen Site vornehmen und dann einfach eine Taste drücken :D oder den Befehl über einem Ordner ausführen. Es sollte den Unterschied zwischen meinen lokalen Dateien und den Dateien der Live-Site prüfen und das Nötige in die von mir gewünschte Richtung tun.
Deshalb funktionieren Filezilla/cuteFTP nicht, da sie keinen Unterschied durchführen, sondern sehr ineffizient nur den gesamten Ordner ersetzen. Es wäre großartig, wenn es ein Frontend für rsync/zsync gäbe. Vorzugsweise zsync als Site, es ist für HTTP-Übertragungen optimiert.
Antwort1
SiteCopykönnte eine Lösung sein. Bei mir hat es in einer ähnlichen Situation funktioniert. Leider hat es keine grafische Benutzeroberfläche, aber es wäre einfach genug, eine Verknüpfung zum Ausführen zu erstellen.
Antwort2
Klingt, als ob Sie ein Versionierungstool wie svn
/Subversion oder git
anstelle von rsync verwenden möchten. Es erfüllt Ihre Anforderungen perfekt und bietet den Vorteil eines Rollbacks, wenn eine Bearbeitung etwas durcheinander bringt.
Schauen Sie sich dieSubersion Homepageund/oderGit-Anleitung.
Antwort3
Wikis haben in der Regel eine integrierte Revisionskontrolle und viele sind dateibasiert (im Gegensatz zu in einer Datenbank gespeichert), daher sollte rsync einwandfrei funktionieren. Ich kenne Leute, die dies für „TWiki“ tun, um ihre Installationen auf mehrere Server zu replizieren.
Vielleicht haben Sie nur per FTP Zugriff auf Ihre Wiki-Dateien? Dann könnten Sie „wget“ zum Abrufen von Dateien per FTP (anstatt über die HTTP-Schnittstelle) verwenden und dabei die rekursiven (-r) und Zeitstempel-Flags (-N) setzen, sodass nur „neuere“ Dateien übertragen werden (was eigentlich kein großer Unterschied ist).
Sobald Sie eine „Kopie“ dessen haben, was auf dem FTP-Server ist, markieren Sie irgendwie die Aktualisierungszeit (oft nur mit einem „Touch“ einer bestimmten Markierungsdatei). Sie bearbeiten dann normal über Ihre lokale Installation desselben Wikis, verwenden dann „find $dir --newer touchmarkerfile“, um die Aktualisierungen für FTP zu identifizieren und sie über ein Skript um ein FTP-Übermittlungstool herum zu übertragen.
Ich habe eine solche Lösung schon einmal verwendet (allerdings hatte ich den Vorteil, die Änderungen über „wget“ auf den Hauptserver zurückzuspielen, also habe ich einfach wieder den rekursiven Zeitstempelansatz verwendet).
Im Nachhinein betrachtet, hätte ich, wenn ich SSH-Zugriff gehabt hätte (was nicht der Fall war), einfach „rsync -globtru[n]cv“ verwendet, um die Dateien in jede Richtung zu ziehen (oder zu schieben).
Antwort4
Was ich nicht sehe, ist, in welchem Datenformat Ihr Wiki vorliegt. Wenn Sie ein Datenbank-Backend verwenden, können Sie wahrscheinlich mit einer Art Replikation auskommen. Sowohl MySQL als auch PostgreSQL unterstützen dies standardmäßig, ebenso wie andere.