sitecopy
Fehlende Vorlage
Das gewünschte Template „Wiki/Vorlagen/InArbeit“ existiert nicht.
Zum Verständnis dieses Artikels sind folgende Seiten hilfreich:
sitecopy ist eine freie Anwendung, mit der sich leicht und einfach zwei Verzeichnisse per FTP oder WebDAV synchronisieren lassen. Es zielt auf Anwender ab, welche eine Website aktuell halten möchten und nur über einen FTP-Zugang verfügen. Anders als zum Beispiel rsync überträgt es veränderte Dateien immer komplett. Dafür versucht es, Dateien die nur verschoben wurden zu erkennen und auch im Zielverzeichnis zu verschieben, anstatt sie neu hochzuladen und somit Traffic zu sparen.
Installation¶
sitecopy befindet sich in den Ubuntu-Quellen und kann einfach über folgendes Paket installiert werden:
sitecopy (universe)
Befehl zum Installieren der Pakete:
sudo apt-get install sitecopy
Oder mit apturl installieren, Link: apt://sitecopy
Konfiguration¶
Zur korrekten Verwendung müssen im Heimverzeichnis zunächst ein Anwendungsverzeichnis und eine Konfigurationsdatei erstellt werden. Es ist wichtig, dass diese nur für den Benutzer lesbar sind, sitecopy verweigert andernfalls die Funktion. Dazu werden folgende Befehle in einer Befehlszeile ausgeführt
mkdir -m 700 ~/.sitecopy touch ~/.sitecopyrc chmod 600 ~/.sitecopyrc
In der Datei .sitecopyrc werden die Einstellungen für jede Seite, die synchronisiert werden soll, gespeichert. Eine Beispielkonfiguration könnte so aussehen
site Seite #Profilname server ftp.Seite.de #Servername username Benutzername #Anmeldename password Passwort #Passwort local /Pfad/zum/lokalen/Verzeichnis #lokaler Verzeichnispfad remote Pfad/zum/entfernten/Verzeichnis #entfernter Verzeichnispfad port XY #Portnummer (optional) proxy-server Proxy-Name #Proxyserver (optional) proxy-port YX #Proxyport (optional) url Seitenadresse # (optional) protocol Protokoll #ftp oder webdav (optional) ftp Option #FTP-Optionen: nopasv, showquit, usecwd|nousecwd (optional), können kombiniert werden (eins pro Zeile) http Option #HTTP-Optionen: expect, secure (optional), können kombiniert werden (eins pro Zeile) safe #Im Zielverzeichnis geänderte Dateien werden erhalten (optional) state Option #checksum|timesize (optional) permissions Option #ignore|exec|all|dir (optional) symlinks Option #ignore|follow|maintain (optional) nodelete #Im Zielverzeichnis wird nicht gelöscht nooverwrite #Es wird nichts überschrieben, nur neue Dateien hochgeladen checkmoved #Ob auf verschobene Dateien überprüft werden soll. Angehängtes renames benennt um tempupload # (optional) exclude Muster #Muster, welches nicht hochgeladen werden soll (z.B. ".ignorieren") (optional) ignore Muster ascii Muster site Seite2 server server2.domain.com remote anderer/Pfad local /wieder/anderer/Pfad username Benutzername2 password Passwort2
In den man-Seiten von sitecopy werden die einzelnen Schalter im Zweifel nochmals ausführlich beschrieben.
Verwendung¶
Bevor sitecopy zur Wartung verwendet werden kann, muss beim ersten Mal immer eine initialisierende Synchronisierung durchgeführt werden. Dabei werden zwei Fälle unterschieden.
Bereits entfernte Dateien vorhanden¶
Für den Fall, dass die lokalen Daten bereits mit den entfernten Daten synchron sind, wird sitecopy mit
sitecopy --catchup Seite
initialisiert.
Liegt die Seite nur auf dem entfernten Server und nicht lokal vor, initialisiert man sitecopy mit
sitecopy --fetch Seite sitecopy --synchronize Seite
Aber vorsicht, dieser Befehl erstellt eine lokale Kopie der entfernten Daten und überschreibt somit bereits vorhandene.
Keine entfernten Daten vorhanden¶
Liegen die Daten nur lokal vor, initialisiert man sitecopy mit
sitecopy --init Seite
Änderungen übertragen¶
Hat man sitecopy initialisiert oder die lokalen Daten bearbeitet und möchte die Änderungen nun auf den entfernten Server übertragen, kann man sich zunächst mit
sitecopy Seite
die zu übertragenden Änderungen anzeigen lassen und sie anschließend mit
sitecopy --update Seite
anwenden lassen.