Android rsync App

Aus Cactus Howto
Wechseln zu: Navigation, Suche

Cactus Rsync App

Einrichten der Cactus Rsync App

Vor der ersten Benutzung der Cactus Rsync App müssen gewisse Einstellungen vorgenommen werden.


RsyncSettings.png

Screenshot: Einstellungen des Apps

Local syncfolder: Der Ordner auf dem Speicher des Android Gerätes (SD oder intern) in den alle Dateien synchronisiert werden sollen. Dieser darf NICHT schon exestieren !

Server syncfolder: Der Ordner auf dem Server der synchronisiert werden soll. Dieser muss beim ersten Einrichten schon vorhanden sein !

Username: Der Username der zum einloggen per SSH benötigt wird.

Server IP: Die IP des Servers mit dem Synchronisiert wird.

SSH key path: Der Pfad des ssh dropbear keys relativ zu der SD oder dem internen Speicher des Geräts.

Einrichten des Servers

Zur Benutztung der App mit einem Server, benötigt dieser Server einen laufenden SSH-Server und rsync.

Einrichten von SSH auf Ubuntu Installieren von Rsync

sudo apt-get install rsync

Die App verwendet einen dropbear SSH key, bei Nutzung von openssh muss der key entsprechend umgewandelt werden

sudo apt-get install dropbear
dropbearconvert openssh dropbear openssh.key dropbear.key

und dann auf den internen Speicher des Gerätes kopiert werden. In den Einstellungen muss dann der Pfad eingegeben werden.

Ablauf der App

Die Synchronisierung per rsync verläuft in 4 Schritten:

Die genaue Funktion der hier benutzten rsync-Befehle können in der rsync Dokumentation nachgelesen werden.

1.) Löscht die auf dem Client gelöschten Dateinen ebenfalls auf dem Server.

rsync -rvlz --stats --progress --existing --ignore-existing --delete --include-from=FILE_TO_DELETE_LIST --exclude=*\
-e "ssh -i SSH_KEY -y" SYNC_DIR REMOTE_USER_IP:REMOTE_DIR

2.) Synchronisiert veränderte Dateien vom Client auf dem Server

rsync -rvtlz --stats --progress --checksum --update --ignore-non-existing\
-e "ssh -i SSH_KEY -y" SYNC_DIR REMOTE_USER_IP:REMOTE_DIR

3.) Synchronisiert neue, veränderte und gelöschte Dateien vom Server auf den Client

rsync -rvlz --stats --progress --checksum --update --delete\
-e "shh -i SSH_KEY -y" REMOTE_USER_IP:REMOTE_DIR

4.) Fügt neue Datein (vom Client) auf den Server hinzu

rsync -rvtlpz --stats --ignore-existing --progress --chmod=ug=rwx --chmod=o=rx\
-e "ssh -i SSH_KEY -y" NEW_FILES_LIST REMOTE_USER_IP:REMOTE_DIR


Das Log-Fenster von CactusRsync:

RsyncLog.png