Nachdem ich heute schon einiges zu dem Dienst BitTorrent Sync geschrieben habe, wollte ich eine Synchronisation zwischen meinem Desktop-PC und einem kleinen Raspberry Pi mit installiertem Raspbian einrichten.
Für Raspbian auf ARM-Basis gibt es leider noch kein Paket im APT-Repository, sodass man die Installation manuell vornehmen muss.
Da ich hauptsächlich meinen privaten PC mit meinem geschäftlichen Notebook synchronisiere, ergibt sich das Problem, dass beide idR nie zur gleichen Zeit eingeschaltet und online sind. Eine Synchronisation würde so – quasi – nie zustande kommen.
Bisher löse ich das über meinen kleinen Debian-RootServer, der ebenfalls eine Kopie der BTSync-Ordner hält. Wenn ich auf Arbeit bin, synchronisieren sich die Daten zum Root-Server, und sobald ich zu Hause bin, holt sich mein privater PC die Daten vom Root-Server und umgedreht.
Mit dieser kleinen Raspberry-Lösung, die die kommenden Wochen als kleine NAS-Lösung in den elterlichen Haushalt wandert, umgehe ich das datenschutzrechtliche Problem mit den „ausgelagerten Daten“ im Rechenzentrum.Ich habe gerade den Raspberry Pi frisch mit der aktuellen Raspbian-Distribution mittels win32DiskImager bespielt und per raspi-config die Grundeinstellungen (Hostname, Passwörter, etc.) gesetzt.
Nun wechseln wir ins Home-Verzeichnis des Users pi:
1 |
cd /home/pi |
Und laden das aktuelle BTSync-ARM-Build herunter:
1 |
wget http://download-lb.utorrent.com/endpoint/btsync/os/linux-arm/track/stable |
Dann entpacken wir das „stable„-File und löschen es im Anschluss:
1 2 |
tar xzvf stable rm stable |
Jetzt erstellen wir einen neuen Ordner unter /etc/ indem der Dienst zukünftig liegt, setzen einige Berechtigungen und verschieben das entpackte Binary dorthin:
1 2 3 4 5 6 |
mkdir /etc/btsync chmod 777 /etc/btsync mv btsync /etc/btsync/ cd /etc/btsync sudo chown root:root btsync sudo chmod 755 btsync |
Daraufhin erstellen wir eine Konfigurationsdatei sync.conf mit den Standardwerten:
1 |
./btsync --dump-sample-config > sync.conf |
Diese Datei müssen wir nun bearbeiten. Ich verwende dazu den Editor vi:
1 |
sudo vi sync.conf |
Es müssen folgende Werte geändert/angepasst werden:
- „device_name“ : Tragt hier den Gerätenamen ein. Ich verwende den Hostnamen (in meinem Fall ‚raspi02‘)
- „storage_path“ : Muss mit zwei // am Anfang der Zeile auskommentiert werden
- „login“ : Den Benutzernamen für das Webinterface
- „password“ : Das Passwort für das Webinterface
Mittels „😡“ im Editor vi wird die Datei gespeichert und geschlossen.
Damit das Programm BTSync als Dienst mitläuft und automatisch beim Booten mitgeladen wird muss nun noch ein Start/Stop-Script angelegt werden.
Dafür erstellen wir die Datei btsync im Verzeichnis /etc/init.d:
1 |
sudo vi /etc/init.d/btsync |
Und füllen Sie mit folgendem Inhalt, gefolgt von „😡“ zum speichern + schließen:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
#! /bin/sh # /etc/init.d/btsync # # BT-Sync Daemon starten / stoppen case "$1" in start) /etc/btsync/./btsync --config /etc/btsync/sync.conf ;; stop) pkill btsync ;; *) echo "Usage: /etc/init.d/btsync {start|stop}" exit 1 ;; esac exit 0 |
Jetzt müssen wir das Script noch ausführbar machen:
1 |
sudo chmod +x /etc/init.d/btsync |
Damit BTSync beim Starten des Raspbian automatisch mitgestartet wird müssen wir es in die entsprechenden RunLevel eintragen:
1 |
sudo update-rc.d btsync defaults |
Dabei erscheinen zwei Meldungen, die ihr getrost ignorieren könnt:
1 2 |
update-rc.d: using dependency based boot sequencing insserv: warning: script 'btsync' missing LSB tags and overrides |
Nun können wir zum ersten mal BTSync als Dienst starten:
1 |
/etc/init.d/btsync start |
Hat alles geklappt quittiert BTSync den erfolgreichen Start durch Angabe einer PID:
1 |
BitTorrent Sync forked to background. pid = 4042 |
Ab nun lässt sich das Webinterface per Browser ansteuern. Es horcht standardmäßig auf Port 8888 (der Port lässt sich in der /etc/btsync/sync.cfg ändern) und ist zunächst in englischer Sprache:
Über den Punkt Preferences oben rechts lässt sich die Sprache auf Deutsch umstellen:
Per SSH habe ich zuvor den Ordner /home/pi/BTSync/BoxCryptor angelegt, den ich oben rechts über den Punkt „Ordner hinzufügen“ per Secret und Pfad mit zwei Klicks hinzufüge:
Danach erscheint auf der Startseite der neue Ordner-Sync, inkl. der Ordnergröße, welche Clients den Ordner noch synchronisieren und die verbleibende Datenmenge, bis das Verzeichnis synchron ist:
Dabei rackert sich der Raspi tatsächlich etwas ab; während des Syncs habe ich mal einen Screenshot der top-Ausgabe erstellt. Man sieht, dass die CPU mit knapp 70% gut beansprucht wird:
[…] kurzem habe ich davon berichtet, wie ich meine Daten zwischen meinem Arbeitsplatz und meinem Heim-PC über BitTorrent Sync synchron […]
Danke für die super Anleitung, hat perfekt geklappt.
Welche Punkte von oben muss man den ausführen um auf eine neue Version von BTSync „upzudaten“ ?
Hallo,
das ist eine gute Frage 🙂 Ich nutze BTSync leider momentan nicht mehr – habe da gerade keinen konkreten Anwendungsfall und das nicht weiter verfolgt.
Wenn du etwas findest, gib mir doch hier in den Kommentaren bescheid.