Todo Verwaltung mit Synchronisierung Android/Linux über eigenen Server

Das war ne harte Nuss! Ich weiss gar nicht wie lange ich auf der Suche nach einer geeigneten ToDo Verwaltung war, welche ich auf meinen Rechnern, aber auch auf den Android Geräten nutzen kann.

Natürlich gibt es eine mittlerweile viel zu große Anzahl von Diensten im Netz.
Aber wie immer: Ich möchte meine Daten selber hosten!

Da ich bisher vergeblich auf der Suche war, habe ich in der Tat bisher immer einen der Online Dienste genutzt.
Die ToDo Verwaltung war bisher auch das letzte Thema, welches ich nicht selber gehostet habe. Aber die Suche hat nun ein Ende… Und das Ergebnis ist gar nichts bahnbrechend neues… Im Gegenteil! :-)

Ich weiss nicht ob ihr schonmal von todotxt gehört habt. Das gibt es schon einige Jahre und ist trivial und GENIAL zugleich.

todo.txt ist nichts anderes als ein Shellscript, welches richtig integriert in eurer Linux System, eure ToDo Verwaltung bildet. Eure ToDo Liste ist nichts weiter als eine Text Datei! Mit dem Shellscript könnt ihr eure ToDos priorisieren, kategorisieren, mit Kontexten erweitern, etc… Ihr habt im Prinzip alle Möglichkeiten offen.

Für todo.txt gibt es zwar einige Möglichkeiten eure Textdatei zu editieren (Ubuntu Paket, HTML Seiten, etc…). Ich persönlich finde
aber die Steuerung über die Konsole absolut intuitiv und geht schneller von der Hand.

Mehr möchte ich auch gar nicht dazu schreiben. Es gibt sehr viele Blogposts zu todo.txt.

Hier habt ihr die sehr ausführliche Dokumentation:
todotxt Doku

Mittlerweile gibt es auch eine Android App: ToDo.txt für Android
Sie kostet zwar 1.50 Euro, ist aber jeden Cent wert.

Die App selber synchronisiert die Textdatei leider im Moment ausschliesslich über Dropbox. Macht aber nichts. :-)

Beim ersten Start der App müsst ihr leider einmalig euren Dropbox Account eingeben. Ja, auch ich haben einen. :-( Habt ihr den Account eingetragen könnt ihr die App normal nutzen.

Ich bin dann allerdings hingegangen und habe den Sync zu Dropbox über das Menü deaktiviert. Die App funktioniert dann weiterhin ohne Probleme. Wie bereits geschrieben werden eure ToDos ausschliesslich in einer Text Datei gepflegt.
Und diese Textdatei liegt auf eurem Androiden unter:

/mnt/sdcard/data/com.todotxt.todotxt/

Auf meinem Server habe ich owncloud installiert und auf meinem Smartphone nutze ich FolderSync für Backups und Synchronisierungsaufgaben.

Nun bin ich hingegangen und synchronisiere das o.g. Verzeichnis auf meinen Server auf dem meine owncloud läuft.

Auf meinen Linuxbüchsen habe ich jeweils den owncloud Client installiert. Somit habe ich die ToDo.txt auf alle Rechnern.
In der Firma habe ich sowieso immer eine Shell offen. Auf den Androiden erledigt FolderSync die Synchronisierung.

Fertig ist meine perfekte ToDo Verwaltung, ohne dass ich meine Daten an irgendwelche Fremdhoster übergeben muss.

Ich weiss gar nicht wie ich vor todo.txt meine Aufgaben organisieren konnte. :-)

Falls ihr Fragen haben solltet einfach melden.

 

Flattr this!

Notizverwaltung mit Synchronisierung (Android/Linux) OHNE Dropbox, Evernote und Co

Dienste für die Verwaltung und Synchronisierung von Notizen gibt es wie Sand am Meer.

Ich halte bekanntlich nicht viel von diesen Diensten, da ich nicht weiss was mit meinen Daten geschieht, bzw. noch schlimmer: manchmal weiss man es sogar sehr genau…

Wie man eine „eigene“ Notizverwaltung hinbekommt inklusiver der Synchronisierung über mehrere Geräte möchte ich in diesem Artikel beschreiben.

Einleitend möchte ich erwähnen, dass für mich eine Notizverwaltung nichts weiter ist, als eine Sammlung von Textdateien in denen ich mir Anleitungen, Gedanken, Ideen, etc… niederschreibe. In dem von mir beschriebenen Vorgehen würden zwar auch Bilder, Tondateien usw. nicht stören, allerdings beschränke ich mich auf die erwähnten Textdateien.

Fangen wir erstmal lokal auf unserem Rechner an.
Ich habe einfach einen Ordner mit Textdateien. Nennen wir den Ordner einfach „Notizen“. Innerhalb des Ordners befinden sich weitere Ordner welche jeweils eine Kategorie abbilden sollen.

Beispiel:

– Notizen
– Android
– Linux
– Blog
– etc…

Nun benötigt man noch ein wenig Webspace. Ich für meinen Teil verwende meine eigene Owncloud Installation.
Entweder man mountet sich den Webspace direkt ins Filesystem, oder nutzt den Owncloud Sync Client, welcher unter Linux sehr gut funktioniert.

Für Dropbox Anhänger kann natürlich auch der Dropbox Client, bzw. die Dropbox Synchronisierung verwendet werden.

Somit hat man die Desktop Variante für die Notizverwaltung bereits erledigt.

Mir persönlich kommen allerdings meistens die Ideen wenn ich gerade mal nicht vor dem Rechner sitze. Also wäre es doch ideal seine Gedanken über sein Android Handy oder Smartphone auch unterwegs erfassen zu können und diese später am Rechner weiterzubearbeiten.

Um die Synchronisierung auch über seine Mobilgeräte auszuweiten gibt es auch recht einfache Lösungen.

Auf meinem Android Gerät habe ich ebenfalls einen Ordner „Notizen“. Diesen synchroniesiere ich, genauso wie an meinem Desktop, mit meiner
Owncloud Installation. Die eigene Owncloud Installation muss auch nicht zwingend im großen weiten Netz stehen. Da wir hier von Textdateien reden und diese
nur ein paar kb groß sind, reicht auch die Owncloud Installation auf eurem NAS.
Um euren Ordner zu synchronisieren gibt es mehrere Wege.
Wenn ihr eure Owncloud nutzt, könnt ihr den entsprechenende Client aus dem Play Store verwenden. Dieser hat allerdings den Nachteil, dass man keine
Ordner synchronisieren kann, sondern lediglich Dateien. Über diesen Weg müsstet ihr dann jede Notizdatei einzeln für die Synchronisierung markieren.

Ich persönlich bevorzuge da eher die App FolderSync aus dem Play Store. Diese App ist speziell, wie der Name schon sagt, für die Synchronisierung von Ordnern gemacht. Der Sync funkioniert gegen alle großen Dienste wie Dropbox, Amazon, Google Drive, usw… Man kann aber auch einfach über Webdav seine Owncloud einbinden. Man erzeugt dafür ein Ordnerpaar. „Lokaler Ordner Notizen“ und „Owncloud Ordner Notizen“. Die Synchronisierung kann zeitlich gesteuert laufen, manuell oder aber auch wenn sich lokal Dateien geändert haben. Ich nutze die Kombination aus zeitlicher Steuerung und Synchronisierung bei Änderung einer Notizdatei.

Hiermit sind wir nun soweit, dass wir die Notizdateien synchronisiert auf unserem Desktop, Webdav Server und Android Gerät haben.

Was jetzt nur noch fehlt ist eine vernünftige App um die Notizen auf dem Smartphone zu verwalten.

Und auch hier gibt es eine wunderbare App, welche sogar kostenlos ist.

Papyrus Ex

Papyrus Ex ist eigentlich „nur“ ein Texteditor, welcher genau für den beschriebenen Usecase gemacht wurde. In der Konfiguration der App stellt man den Ordner mit seinen
Notizdateien ein. Über die App kann durch die Ordner navigiert werden, oder aber auch die Volltextsuche genutzt werden um Notizen wiederzufinden. URLs in Textdateien
können als Link dargestellt werden. Notizen werden als Textdatei gespeichert, wobei der Name aus der ersten Zeile der Notiz gebildet wird. Was ich ebenfalls klasse
finde ist die Möglichkeit Dinge aus anderen Apps an Papyrus Ex weiterzuleiten. Seien es Mails, Links oder Artikel aus eurem RSS Reader.

Für mich ist diese Kombination die perfekte, schnörkellose Notizverwaltung. Vor allem ist die Lösung leicht realisiert, ohne dass meine seine Daten an Dienste
wie Dropbox oder Evernote weitergeben muss.

 

Flattr this!

Eigene(r) Dropbox/Cloud Storage mit Synology NAS und Sparkleshare

Online Speicher ist schon etwas feines. Mittlerweile gibt es auch zig Anbieter, welche Speicherplatz
anbieten (Dropbox, Wuala, Sugarsync, etc…). Meistens bekommt man ein kleines bisschen Speicher sogar kostenlos, was in der Regel für ein paar Dokumente oder Bilder ausreicht. Will man mehr Speicher haben, muss man Geld bezahlen. Egal welcher Dienst, jeder hat seine Vor.- und Nachteile. Alle haben für mich aber etwas gemeinsam:

Jemand „Fremdes“ hat MEINE Daten auf SEINEN Servern.

Und genau damit kann ich mich einfach nicht anfreunden. Aus diesem Grund bin ich schon länger auf der Suche nach einer Lösung um mein NAS als Online Storage zu nutzen. Bis jetzt habe ich die Platten im eigenen Netz über NFS gemounted, sodass ich mit allen Rechnern darauf zugreifen und die Dokumente bearbeiten konnte. Von Unterwegs via
Android Telefon ging das ebenfalls über FTP, etc…

Komfortabler ist es aber die Dateien lokal zu bearbeiten, welche dann nach der Änderung automatisch zurück aufs NAS synchronisiert werden. Bei meiner Suche bin ich natürlich auch über Sparkleshare gestolpert.

Sparkleshare ist ein Open Source Client, welcher serverseitig ein GIT Repository benötigt.

Die folgende Anleitung bezieht sich auf einen Fedora Client und ein Synology NAS als Server. Für andere Systeme sollte es die Kombination an Software allerdings auch geben.

Installationsanleitung:

Einrichten des Synology NAS als Server

Vorbereitend muss das NAS in die Lage versetzt werden auch mit Fremdsoftware bestückt
zu werden.
Hier gibt es ein gutes Tutorial dazu: Installation IPKG

Ist das Paketverwaltungssystem IPKG installiert geht es weiter mit der Installation von git.

Dazu muss man sich als root via ssh oder telnet auf dem NAS anmelden. Danach werden folgende Befehle abgesetzt:

ipkg update
ipkg install git

Nach wenigen Sekunden ist die git Installation abgeschlossen.

Falls man den Connect zum git Repository mit einem speziellen User machen möchte, sollte man diesen nun über das Webinterface (DSM) vom NAS anlegen.

Wichtig ist, dass am NAS SSH Login (DSM Webinterface) aktiviert ist, da Sparkleshare über ssh mit git redet. Damit der zu nutzende User sich dann auch wirklich über ssh anmelden kann muss die Datei

/etc/passwd noch geändert werden. Ich nutze nano also Editor, allerdings spielt der Editor keine Rolle.
Im folgenden
Beispiel nenne ich den User einfach mal „Gituser“. Diesen müsst ihr dann durch den User von euch ersetzen.

nano /etc/passwd

Folgende Zeile muss geändert werden:
ALT:
Gituser:x:1026:100:Git:/var/services/homes/Gituser:/sbin/nologin
NEU:
Gituser:x:1026:100:Git:/var/services/homes/Gituser:/bin/sh

Ihr solltet euch nun testweise mit dem „Gituser“ über ssh anmelden. Wenn die Anmeldung funktioniert geht es weiter.

Als nächstes sollte über das DSM Webinterface ein neuer „Gemeinsamer Ordner“ angelegt werden. In diesem Ordner werden dann später die git Repository angelegt. Ich habe ihn bei mir GIT_REPO genannt. Wichtig ist, dass der User „Gituser“ Schreibberechtigung für diesen Ordner bekommt!

Wenn der Ordner angelegt ist und die Berechtigungen stimmen, können wir nun auch unser erstes leeres Repository anlegen. Dazu melden wir uns als Gituser über ssh an und legen ein neues Unterverzeichnis im GIT_REPO Ordner an.

mkdir -p /volume1/GIT_
REPO/Test

Nun wechseln wir in das Verzeichnis und erzeugen ein leeres Repository:

cd /volume1/GIT_REPO/Test
git init --bare

Damit haben wir unser erstes Repository und auch die ersten Arbeiten auf dem NAS abgeschlossen.

Einrichten von Sparkleshare auf dem Client:

Für Fedora sind folgende Zeilen in einem Terminal abzusetzen:

sudo curl -o /etc/yum.repos.d/sparkleshare.repo http://repos.fedorapeople.org/repos/alexh/sparkleshare/fedora-sparkleshare.repo
sudo yum install sparkleshare

Wie bereits erwähnt beziehe ich mich hier nur auf Fedora. Sparkleshare gibt es aber auch für andere Distributionen.
Die Installation auf dem Client ist damit abgeschlossen. Nun geht es an die Konfiguration.

Sparkleshare installiert sich als Dienst welcher über

sparkleshare start

starten, über

sparkleshare stop

anhalten und über

sparkleshare restart

neustarten
lässt.

Nach dem ersten Start von Sparkleshare wird man aufgefordert seinen Namen und eine EMail Adresse einzugeben. Danach läuft der Dienst, welcher aber noch keine Repositories überwacht.

Wir fügen nun ein Repository hinzu über das Tray Icon von Sparkleshare (Menüpunkt „Füge ein gehostetes Projekt hinzu“. Folgender Dialog erscheint:

Repository einrichten

Da wir unseren eigenen Server nutzen wollen, wählen wir „On My Own Server“.
Als Adresse muss die IP des NAS eingetragen werden. Sparkleshare nutzt per default den Namen git, welcher beim Connect vor die IP gestellt
wird. In unserem Beispiel haben wir aber den User Gituser vorgesehen, somit müsste der Eintrag für die Adresse wie folgt aussehen:

Gituser@IP_VON_EUREM_NAS

Der entfernte Pfad sieht dann so aus (wie in unserem Beispiel angelegt):

/volume1/GIT_REPO/Test

Nun klicken wir auf „Hinzufügen“, warten einen Moment und hoffen, dass eine Erfolgsmeldung kommt.

Damit man nicht immer ein Passwort für den ssh Connect eingeben muss, generieren wir uns nun ein ssh Schlüsselpaar und übetragen den Schlüssel auf das NAS.

Dies erfolgt so:

ssh-keygen
ssh-copy-id Gituser@IP_VON_EUREM_NAS

Auf dem Server entsteht folgende Datei mit den bekannten ssh Schlüsseln:

/volume1/homes/Gituser/.ssh/authorized_keys

Diese öffnen wir mit einem Editor unserer Wahl.

Auf dem Client öffnen wir die Datei:

/EUER_HOMEVERZEICHNIS/.config/sparkleshare/sparkleshare.EURE_EMAIL_ADRESSE.key.pub

In dieser Datei steht der ssh Schlüssel für Sparklshare. Diesen
kopieren wir als neue Zeile in die geöffnete Datei authorized_keys.

Dadurch sollte Sparkleshare sich nun über ssh mit eurem Server verbinden können, ohne dass ihr ein Passwort eingeben müsst.

Das war es dann auch. Ab sofort sollten alle Dateien aus eurem lokalen Ordner im Hintergrund auf das NAS übertragen werden. Will man das Repository auf mehrern Rechnern nutzen, muss die Client Installation und ssh Konfiguration pro Rechner wiederholt werden.

Das ganze funkioniert bei mir auch recht zuverlässig. Der Dienst hat sich zwar schon ein paar Mal verabschiedet, aber ein Datenverlust ist mir bisher nicht entstanden.

Falls ihr Fragen habt oder ich etwas vergessen, meldet euch einfach.

Als nächstes werde ich dann mal owncloud ausprobieren. :-)

Flattr this!

Deinstallation von Dropbox unter Ubuntu

Dropbox wird in der Regel nicht über die normalen Paketquellen installiert, sondern von der Dropbox Homepage runtergeladen.

Falls sich jemand fragt wie man Dropbox wieder sauber vom System bekommt, hier die Lösung:

sudo apt-get remove nautilus-dropbox
rm -rf ~.dropbox
rm -rf ~.dropbox-dist

Und dann natürlich noch den persönlichen Dropbox Ordner aus dem Homeverzeichnis löschen.

Flattr this!

Dropbox macht sich im Moment keine Freunde

Sehr interessanter Artikel. Wird wohl mal Zeit sich nach Alternativen umzuschauen… Im Artikel sind auch ein paar erwähnt.

http://www.netzpolitik.org/2011/neues-feature-bei-dropbox-backdoor-fur-us-behorden/

Flattr this!