Ubuntu 14.04 Trusty Tahr
Ubuntu 12.04 Precise Pangolin
sitecopy ist eine Anwendung für die Kommandozeile, mit der sich leicht und einfach zwei Verzeichnisse per FTP oder WebDAV synchronisieren lassen. Es zielt auf Anwender ab, die 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, automatisch zu erkennen und auch im Zielverzeichnis entsprechend zu verschieben (anstatt sie neu hoch zu laden) und somit Traffic zu sparen.
sitecopy befindet sich in den offiziellen Paketquellen und kann einfach über folgendes Paket installiert werden [1]:
sitecopy (universe)
mit apturl
Paketliste zum Kopieren:
sudo apt-get install sitecopy
sudo aptitude install sitecopy
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 [2] sind. Das Programm verweigert andernfalls die Funktion. Dazu werden folgende Befehle in einem Terminalfenster ausgeführt [3]:
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 [4]:
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 /PFAD local /PFAD username Benutzername2 password Passwort2
In der Manpage von sitecopy werden die einzelnen Schalter nochmals ausführlich beschrieben.
Bevor sitecopy verwendet werden kann, muss beim ersten Programmstart immer eine initialisierende Synchronisierung durchgeführt werden. Dabei werden drei Fälle unterschieden:
Für den Fall, dass die lokalen Daten bereits mit den entfernten Daten synchron (= identisch) 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.
Liegen die Daten nur lokal vor, initialisiert man sitecopy mit
sitecopy --init Seite
Hat man sitecopy initialisiert oder die lokalen Daten bearbeitet und möchte man nun Änderungen 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.
Diese Revision wurde am 5. Februar 2017 18:22 von aasche erstellt.