Das N900 mit Online-Speicher synchronisieren

Original-Artikel lesen

Ich arbeite für die Firma STRATO, die das Produkt HiDrive anbietet. Dieser Artikel repräsentiert jedoch lediglich meine Meinung als Privatperson. HiDrive ist nur ein einfach zu administrierendes Beispiel für einen rsync-Server von vielen.

Wie inzwischen den meisten bekannt sein dürfte, ist das aktuelle Internet Tablet von Nokia mit jeder Menge Speicher ausgestattet. Neben den 32 GB die fest eingebaut sind, kann man den Speicher per MicroSD-Karte nochmal um 16 GB erweitern. Das reicht eigentlich für jede Menge Multimediales. Dennoch kann es sinnvoll sein, auf externen Speicher zuzugreifen

  • weil dort eben alle Musikstücke, Fotos und Videos gesammelt abgelegt sind und weit mehr als 48 GB belegen
  • weil man den ganzen Kram auf dem N900 gern extern sichern möchte, um im Falle eines Verlustes oder Defektes darauf zugreifen zu können
  • weil es Daten (Bilder und Videos, gemacht mit der eingebauten Kamera) gibt, die nicht nur auf dem N900 direkt betrachtet werden wollen

Bisher hatte ich für diese Dinge ein kleines Network Attached Storage (NAS) im Wohnzimmer stehen. Genauer gesagt: Die Synology 107e. Diese kleine Kiste beherbergt nun aber lediglich eine Festplatte und bietet keinerlei Redundanz, weshalb es auch hier schön wäre, die Daten “irgendwohin” zu replizieren.

Dieses “Irgendwo” heißt für mich jetzt HiDrive. Das hat sich die mein Brötchengeber, die Firma STRATO, ausgedacht und genau an diesem Produkt als Beispiel möchte ich auch Erklären was möglich ist. Natürlich kann man auch einen eigenen Server nutzen oder auf alternative Anbieter zurückgreifen.

Wichtig ist mir, dass der Zugriff auf den Online-Speicher verschlüsselt erfolgt. Ob die Daten auf der Online-Festplatte ebenfalls verschlüsselt, also zum Beispiel in TrueCrypt-Containern abgelegt werden müssen, sollte jeder für sich entscheiden. Mir genügt es, die Daten verschlüsselt zu übertragen aber unverschlüsselt zu speichern.

Einmal rsync und zurück

Geradezu fantastisch sind die Möglichkeiten, wenn man rsync zum Sichern ganzer Verzeichnisse (samt Unterverzeichnissen) nutzen möchte. Per rsync werden die Inhalte eines Quellordners in einen Zielordner übertragen. Dabei wird immer nur kopiert, was sich noch nicht im Zielordner befindet. Änderungen an den Dateien im Quellordner werden erkannt und berücksichtigt. Um vollständige Gleichheit zwischen Quell und Zielordner herzustellen, kann auch eine Option verwendet werden, die alle Inhalte im Zielordner löscht, wenn sie nicht auch im Quellordner existieren.

Um automatisiert synchronisieren zu können soll ein Schlüssel erzeugt werden, mit dessen Hilfe auch automatisiert auf den Online-Speicher zugegriffen werden kann. Als grafische Benutzeroberfläche soll grsync zum Einsatz kommen, einem inzwischen hervorragend auf dem N900 zu bedienendem Programm. Abgerundet wird das Experiment durch das Programm Alarmed (Achtung! Dieses Programm ist derzeit nur in der Programmbibliothek extras-devel vorhanden und sollte mit entsprechender Vorsicht genossen werden), welches die zeit- und Intervall-gesteuerte Ausführung beliebiger Befehlszeilen erlaubt.

Zunächst gilt es, einen Schlüssel zur Verwendung mit HiDrive (oder dem externen rsync-Server) zu erstellen. Dazu muss OpenSSH installiert sein. Dazu gibt man als root ein:

apt-get install openssh

Während der Installation wird man nach einem Passwort gefragt, das den Zugriff auf das N900 per ssh ermöglicht.

Grsync und alarmed werden ebenfalls installiert:

apt-get install grsync alarmed

Dann wird man wieder normaler Benutzer:

exit

Man wechselt das Verzeichnis:

cd /home/user/.ssh

und generiert dort einen Schlüsselpaar zum Zugriff auf den Online-Speicher:

~ $ cd /home/user/.ssh
~ $ ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/home/user/.ssh/id_rsa): rsynckey
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in rsynckey.
Your public key has been saved in rsynckey.pub.
The key fingerprint is:
af:16:99:df:d7:e8:7c:f3:d1:5b:91:78:9d:6a:fb:ee user@Nokia-N900-51-1
The key's randomart image is:
+--[ RSA 2048]----+
|                 |
|                 |
|                 |
|              . +|
|        So   . =.|
|        +.    o o|
|         o.. o +o|
|        ... o.+.*|
|       ..    +*E+|
+-----------------+

HiDrive als rsync-Server einrichten

Nun gilt es, den öffentlichen Schlüssel rsynckey.pub im HiDrive Konfigurationsbereich zu hinterlegen. Dafür kopiert man die Datei in den Dokumenten-Ordner:

cp rsynckey.pub /home/user/MyDocs/.documents/

Im Browser öffnet man den Konfigurationsbereich unter www.hidrive.strato.com. Dort kann nun im Tab “Einstellungen” -> “Kontenverwaltung” für einen bestehenden Account ein OpenSSH-Schlüssel hinterlegt werden, wie die folgenden Abbildungen verdeutlichen::

Auswahl eines Benutzer-Kontos zum hochaden des öffentlichen Schlüssels

Wurde der Schlüssel ausgewählt und hochgeladen, so befindet er sich anschließend in einer Liste mit verwendbaren Schlüsseln, die im Konfigurationsbereich einsehbar ist.

Der OpenSSH-Schlüssel wurde erfolgreich hochgeladen…

…und taucht nun in der Liste der authentisierten Schlüssel auf.

Ich habe sowohl im HiDrive-Ordner des Benutzers “jukey” als auch im MyDocs-Verzeichnis auf dem N900 jeweils die Ordner tablet2server und server2tablet angelegt. Auf dem N900 kann dazu der Dateimanager verwendet werden oder man gibt in xterm ein:

mkdir /home/user/MyDocs/tablet2server
mkdir /home/user/MyDocs/server3tablet

HiDrive-seitig kann man die Ordner per Weboberfläche (Ebenfalls im Konfigurationsbereich), SMB/CIFS oder auch  SFTP anlegen. Ich gehe davon aus das die Ordner /users/jukey/tablet2server und /users/jukey/server2tablet heißen.

Probebetrieb in xterm

Wer nicht auf die grafische rsync-Oberfläche zurückgreifen möchte, kann auch die beiden folgenden Kommandos in xterm nutzen:

rsync -avz -e "ssh -i /home/user/.ssh/rsynckey" \
/home/user/MyDocs/sync/tablet2server/ \
jukey@rsync.hidrive.strato.com:/users/jukey/sync/tablet2server

(Die Backslashs: “\” sorgen lediglich dafür, dass die nachfolgenden Zeilenumbrüche ignoriert werden)

rsync -avz -e "ssh -i /home/user/.ssh/rsynckey" \
jukey@rsync.hidrive.strato.com:/users/jukey/sync/server2tablet \
/home/user/MyDocs/sync/server2tablet/

Komfortable Nutzung per grsync

Jetzt ruft man grsync auf und legt jeweils ein Profil zum sichern auf dem Server und ein Profil zum Ablegen auf dem Tablet an. Die Nachfolgenden Screenshots verdeutlichen, wie es geht:

GUI für rsync unter maemo5 auf dem N900: Verzeichnisse festlegen

Unter Source wird ein Pfad auf dem N900 ausgewählt, dessen Inhalt samt Unterverzeichnissen auf den Server übertragen werden soll. Danach gibt man unter zusätzlichen Optionen an, wo der Schlüssel für den Zugriff per SSH auf dem Internet Tablet zu finden ist:

GUI für rsync unter maemo5 auf dem N900: Zugriff verschlüsselt per SSH mit Hilfe eines Schlüssels

Gespeichert wird das ganze als Profil namens “tablet2storage”. Nun können beliebige Verzeichnisinhalte vom Tablet in das HiDrive-Verzeichnis “tablet2server” verschoben werden, indem dieses Profil verwendet wird. Im Hauptmenü lassen sich Quelle und Ziel auch umkehren. Ich habe dafür ein Profil storage2tablet angelegt, bei dem alle,s was online im Ordner server2tablet liegt in dem lokalen /home/user/MyDocs/sync/server2tablet Ordner landet.

Automatische, zeitgesteuerte Synchronisation im Hintergrund

Um die Synchronisation regelmäßig automatisiert anzuschieben, kann das seit kurzem verfügbare Programm “alarmed” verwendet werden. Hier können Befehle bequem zur wiederholten Ausführung hinterlegt werden. Man nimmt also die oben beschriebenen Befehlszeilen (ohne die “\”) und fügt sie unter “New Event” -> “Command execution” als Befehlszeile ein.

Intervall-basierte Kommandos ausführen – alarmed erleichtert die Konfiguration

Anschließend gilt es noch, ein Intervall für die Synchronisation zu wählen. Dabei ist es unter anderem möglich, bestimmte Tage pro Woche, den Monats-Ersten oder auch einfach täglich, stündlich oder minütlich zu synchronisieren.

Fazit

Wozu das Ganze? Ich synchronisiere zum Beispiel einmal täglich automatisiert alle Kamera-Verzeichnisse mit dem meiner Online-Festplatte. Sitze ich an einem PC oder Notebook, kann ich auf Kopien der Bilder des N900 zugreifen ohne dieses an den rechner anschließen zu müssen oder per SSH darauf zugreifen zu müssen.

Oder: Der Inhalt des eigenen Musikarchivs im Storage kann täglich aufs N900 synchronisiert werden. Auch hier kann die Musik, nachdem die CD ins mp3-Format umgewandelt wurde, am PC in den Online-Speicher übertragen werden und nach der nächsten rsync-Session kann der Ohrenschmaus auf dem N900 wiedergegeben werden.

Für welche Zwecke setzen meine Leser(innen) rsync auf dem N900 ein? Kommentare sind stets willkommen!

Technorati Tags: , , , , , , , , , , ,


Comments are closed.