Magenta-Cloud unter Linux

Warum eine Cloud?

Warum eine Cloud nutzen? Ich habe einen Dual-Boot Rechner mit Windows 7 und Ubuntu 14.04 LTS. Windows benutze ich zum Beispiel zum Scannen von Dokumenten, da es einfach keine passende Software für meinen EpsonPerfect 3490 Photo unter Ubuntu gibt (was geht, ist sehr rudimentär und kann nicht einmal mit der simplen Epson Standard Software für Windows mithalten). Und in Zukunft will ich eventuell sogar unter Windows Abby Fine Reader nutzen, um meinen Schriftverkehr ganz elektronisch zu machen und zu archivieren. Unter Linux gibt es da wohl auch nichts vergleichbares.

Da ich die gescannten Dokumente natürlich auf allen meinen Rechnern und auch auf mobilen Rechnern auf Reisen nutzen können will, bietet sich eine Cloud als ideale Lösung an. (Bisher habe ich mir die Dokumente immer in ein eigenes Imap Postfach zugemailt und sie dann bei Bedarf dort an meinen anderen Rechnern abgeholt. Umständlich, aber für ein  paar Dokumente ok. Bei der Digitalisierung meines ganzen Archivs natürlich nicht mehr sinnvoll – also Cloud).

Backup in der Cloud

Ein anderer Punkt, der letztlich der eigentliche Anlaß war, ist das Thema Backups. Ich habe vor ein paar Tagen angefangen, mit Gnuradio zu experimentieren und schon bald nicht ganz unkomplizierte Module im Gnuradio Companion konstruiert. Da ich es gewohnt bin, von aktuellen Sachen, an denen ich gerade arbeite, alle 30 Minuten ein Backup zu machen, hieß dies ständiges Hantieren mit dem USB-Stick, den ich diesmal nicht eingesteckt lassen konnte, weil er die Wärmeabfuhr aus meinem RTLSDR-USB-Stick behinderte. Also warum nicht einfach in der Cloud sichern?

Welche Cloud?

Nach einigem Recherchieren (siehe auch die Liste https://wiki.ubuntuusers.de/Cloud-Dienste/ ) blieben noch der Cloud-Dienst von Yandex Yandex Disk und die Telekom Magenta-Cloud in der engeren Auswahl. Letztlich fand ich es dann vorteilhaft, einen deutschen Anbieter zu nutzen, denn der Support läuft auf Deutsch, die Fragen der User sind auf deutsch oder englisch, und es ist vielleicht von Deutschland aus die Anbindung an das zugehörige Server-Rechenzentrum besser. Außerdem sind 10GB kostenlos, ohne jede Vertragsbindung, in meinen Augen kein schlechtes Angebot, Dropbox bietet nur 2GB, Google unterstützt Linux nicht so gut usw. Außerdem nutzt man die Magenta-Cloud gewissermaßen anonym, man muß nicht mal seine Wohnadresse in das Anmeldeformular eintragen.

Magenta-Cloud einrichten

Erster Schritt: Registrieren

Die Einrichtungsprozedur für die Magenta-Cloud ist einfach, man braucht zum Registrieren eine Mail-Adresse <my_email>. Diese wird beim Anmelden angegeben, man wählt dann frei ein Password <my_magenta_cloud_password>. Anschließend kann man sich an der Weboberfläche der Cloud mit username = <my_email> und password = <my_magenta_cloud_password> anmelden. Wenn man Lust hat, kann man gleich im Browser einzelne Dateien hochladen oder zurückkopieren.

Linux/Ubuntu – erste Schritte

Auch unter Linux/Ubuntu/Gnome kann man schon an dieser Stelle über die üblichen Mechanismen des Dateibrowsers und dem WebDav(s) Protokoll mit der Magenta-Cloud Kontakt aufnehmen und Dateien und Verzeichnisse mit Drag and Drop oder Copy/Paste hin und her kopieren. (Siehe auch den entsprechenden Eintrag zur Magenta-Cloud in https://wiki.ubuntuusers.de/Cloud-Dienste/ ) Caveat: Dies ging in Ubuntu 14.04, aber in meinem Scientific Linux (=CentOS = RHEL) 6.5 war es nicht möglich, Verzeichnisse zu bewegen, nur Dateien gingen.

Letztlich ist dies aber ein sehr unbefriedigender Weg, denn Datei Timestamps gehen dabei verloren, man kann nicht im Archivmodus kopieren usw. und natürlich auch nicht rsync nutzen usw.

Linux/Ubuntu – Die Lösung: davfs

Die Lösung wird ausführlich präsentiert in

(1) https://wiki.ubuntuusers.de/WebDAV/

und in etwas rudimentärer Form (nur Root kann mounten) und unklarer Darstellung in

(2) https://telekomhilft.telekom.de/t5/MagentaCLOUD/MagentaCloud-als-Speichererweiterung-in-Linux-einbinden/td-p/2799038

Die Lösung heißt davfs, ein Linux-Filesystem, das seine Operationen über WebDav abwickelt (und damit letztlich zu verschiedensten Cloud-Anbietern, die WebDav nutzen, kompatibel sein dürfte). Ich wußte zuerst nicht, ob das davfs das Problem mit den modifizierten Timestamps lösen würde, und zögerte etwas, die Anleitung abzuarbeiten, habe es dann aber doch getan und wurde mit dem Erfolg belohnt, daß alles wirklich wie gewünscht funktioniert – vor allem kann ich wirklich mit „cp -dpR“ und „rsync -avz“ meine Dateien und Verzeichnisse im Archivmodus sichern und zurückspielen.

(Leider nur ein Wunschtraum: In Wirklichkeit sind diese beiden wichtigen Funktionalitäten leider nicht möglich 🙁 )

 

Davfs einrichten – wie?

Was ist dazu nötig? Es steht zwar alles im Prinzip schon in (1), aber ich habe unten „to serve the public“ noch mal die Schritte im einzelnen in eigenen Worten dargestellt:

Ins Heimatverzeichnis wechseln und einen Ordner ~/magenta anlegen

cd ~
mkdir magenta

Dann das unbedingt nötige Paket davfs2 installieren

sudo apt-get install davfs2

In der Konfigurationsdatei /etc/davfs2/secrets die folgende Zeile am Ende eintragen (drei Elemente getrennt durch Spaces):

https://webdav.magentacloud.de <my_magenta_email> <my_webdav_password>

Man beachte, daß hier das „Webdav“-Passwort genommen werden muß, also nicht das globale obengenannte „Magenta Cloud“-Passwort, mit dem man sich zum Beispiel im Browser in die Cloud überhaupt einloggt. Dieses „Webdav“-Passwort kann man sich erst erstellen, wenn man im Browser den Zugriff auf die Cloud-Funktionen hat (siehe https://cloud.telekom-dienste.de/hilfe#einrichten ).

Warum zwei Passwörter: Technisch verbindet man sich mit dem „Magenta Cloud“-Passwort mit der allgemeinen „Kontrollschicht“ der Magenta-Cloud, zum Beispiel, wenn man die Oberfläche und die Kontrollumgebung im Browser startet. Für die Abwicklung der einzelnen Dateitransfers zwischen dem eigenen Computer und dem Rechner(verbund) auf dem die Magenta-Cloud läuft, ist aber ein Server zuständig, der nach dem (auch in anderen Clouddiensten verwendeten und in seinen Funktionen standardisierten) WebDav-Protokoll arbeitet. Die Magenta-Cloud ist nun so eingerichtet, daß der Kontakt zu diesem Server über ein eigenes Password gesichert ist, das man sich erst nach „Betreten“ der Magenta-Cloud Weboberfläche mit den dann zugänglichen Verwaltungsmöglichkeiten einrichten kann und soll. Warum dies so gelöst ist, weiß ich nicht, vielleicht, damit man das äußere Passwort behalten kann, wenn das innere einmal kompromittiert werden sollte.

Das Editieren eines Owner-Root-Files kann man mit sudo nano machen. (Wer es lieber mit gedit machen möchte, sollte sich https://wiki.ubuntuusers.de/sudo/ durchlesen):

sudo nano /etc/davfs2/secrets

Dann die Kontrolle

sudo cat /etc/davfs2/secrets

Jetzt die nötige Änderung in der fstab

sudo nano /etc/fstab

Die folgenden zwei Zeilen anhängen (Leerzeichen zum Trennen der sechs einzelnen Einträge in der zweiten Zeile können Spaces oder Tabs sein):

#
https://webdav.magentacloud.de /home/juergen/magenta davfs noauto,user,rw 0 0

Die Optionen sind alle wichtig: „noauto“ verhindert, daß beim System-Bootup gleich gemountet wird, denn dann ist ja das Netzwerk noch nicht vorhanden und schlimmstenfalls würde sich bei Fehlen dieser Option das System im Boot aufhängen.  „user“ sagt, daß auch der User mounten können muß. Fehlte diese Option wären unsere im Folgenden erklärten weiteren Aktionen sinnlos. Und „rw“ natürlich, da wir lesen und schreiben wollen.

Wieder die Kontrolle

cat /etc/fstab

Jetzt können wir schon mal probeweise als Root mit sudo mounten

sudo mount /home/juergen/magenta
df
ls -la magenta
sudo umount /home/juergen/magenta
ls magenta

Wir wollen aber auch als normaler User mounten können:

sudo dpkg-reconfigure davfs2
sudo usermod -aG davfs2 juergen

Mit dem oberen Kommando startet man ein Terminalprogramm mit pseudografischer Ausgabe, in dem man die entsprechende Auswahl („Yes“) auf die für solche Programme übliche Weise trifft. Der untere Befehl nimmt den User (bei mir „juergen“) in die Gruppe „davfs2“ auf. Das ist ein üblicher Mechanismus für Programme, die vom Benutzer gestartet, dann mit höheren Rechten/Root-Rechten laufen sollen (suid bit setzen https://de.wikipedia.org/wiki/Setuid ).

Die folgende Kleinigkeit war bei mir noch nötig für ein fehlerfreies Funktionieren:

Mit

gedit ./davfs2/secrets

wieder die folgende, oben schon genante, Zeile am Ende der globalen /etc/davfs2/secrets in die lokalen ~/.davfs2/secrets eintragen:

https://webdav.magentacloud.de <my_magenta_email> <my_webdav_password>

Und dann noch die Rechte passend setzen

chmod 600 ./davfs2/secrets

Jetzt können wir als normaler Benutzer mounten und unmounten:

mount magenta
df
ls -la magenta
umount magenta
df

Als letztes: Ein Backup-Skript

Das folgende kleine Skript in ~/bin sichert mir nun meine Gnuradio-Arbeiten (und anderes):

magsave <savedir>

aufgerufen im Heimatverzeichnis sichert das Directory ~/<savedir> in ~/magenta/archiv-antares/<savedir> als gesplittetes File <savedir_basename>.tgz

(Achtung: <savedir> darf nicht mit einem / enden)

#!/bin/bash

MYHOME=/home/juergen

ARCHIV=archiv-antares

SAVEDIR=$1

FINALSAVEDIR=${SAVEDIR##*/}

SAVEDIRTGZ=$FINALSAVEDIR.tgz

cd $MYHOME

SAVEPATHLOCAL=$MYHOME/temp/$SAVEDIR

SAVEPATHTGZ=$SAVEPATHLOCAL/$SAVEDIRTGZ

mkdir -p $SAVEPATHLOCAL

rm $SAVEPATHTGZ

tar -cvzf $SAVEPATHTGZ ./$SAVEDIR

cd $SAVEPATHLOCAL

rm $SAVEDIRTGZ.*

split -b 1M $SAVEDIRTGZ $SAVEDIRTGZ.

rm -r $MYHOME/magenta/$ARCHIV/$SAVEDIR

mkdir -p $MYHOME/magenta/$ARCHIV/$SAVEDIR

cp $SAVEDIRTGZ.* $MYHOME/magenta/$ARCHIV/$SAVEDIR

diff -r $SAVEPATHLOCAL $MYHOME/magenta/$ARCHIV/$SAVEDIR

Mit dem folgenden

magload <savedir>

werden die einzelnen Split-Blöcke aus ~/magenta/archiv-antares/<savedir> wieder zu <savedir_basename>.tgz zusammengesetzt und ein Vergleich mit dem derzeitigen ~/<savedir> gemacht.

#!/bin/bash

MYHOME=/home/juergen

ARCHIV=archiv-antares

SAVEDIR=$1

FINALSAVEDIR=${SAVEDIR##*/}

SAVEDIRTGZ=$FINALSAVEDIR.tgz

cd $MYHOME


SAVEPATHLOCAL=$MYHOME/temp/$SAVEDIR

rm -rf $SAVEPATHLOCAL

mkdir -p $SAVEPATHLOCAL


SAVEPATHTGZ=$SAVEPATHLOCAL/$SAVEDIRTGZ

cd $SAVEPATHLOCAL

cp $MYHOME/magenta/$ARCHIV/$SAVEDIR/*.tgz.* ./

cat *.tgz.* > $SAVEDIRTGZ

cd $MYHOME

tar -dzf $SAVEPATHLOCAL/$SAVEDIRTGZ ./

 

 

Acer Aspire V5 121

Seit 2013 besitze ich ein Netbook, Acer Aspire V5 121. Die Ausstattung: AMD C 70 1GHz DualCore, 2 GB RAM, 320 GB Festplatte, 11,6″ Bildschirm (1366 x 768). Ausgeliefert mit Windows 8 als Betriebssystem. Der Rechner war mit Windows nie der schnellste und im Lauf der Zeit wurde er eher gefühlt noch langsamer, bis er völlig unbenutzbar war. Habe daher jetzt Ubuntu 14.04LTS installiert (via USB Boot, Legacy Boot mode, und anschließender Installation auf Platte aus dem Netz). Den USB-Stick habe ich noch unter Windows mit dem Windows-Tool Pendrivelinux präpariert. Alles lief (überraschenderweise) bestens, WLAN, Trackpad, Webcam, schlichtweg alles wurde von Ubuntu 14.04LTS (Trusty Tahr) perfekt unterstützt. Die Response-Time des Systems beim Starten von Programmen ist jetzt wieder gut bis erträglich und das System macht wirklich das beste aus der nicht so starken Hardwarebasis. Außerdem ist es eben ein echtes Linux, hat also bei mir schon deswegen Pluspunkte.

Links:

Pendrivelinux