ownCloud: Redis Cache und Transactional File Locking bei uberspace

Nach der Installation werden im Administrationsbereich von ownCloud auf dem eigenen uberspace folgende Hinweise angezeigt:

Transactional file locking is using the database as locking backend, for best performance it’s advised to configure a memcache for locking. See the documentation ↗ for more information.
Es wurde kein PHP Memory Cache konfiguriert. Konfiguriere zur Erhöhung der Leistungsfähigkeit, soweit verfügbar, einen Memory Cache. Weitere Informationen finden Sie in unserer Dokumentation.

Beides lässt sich mit einigen kurzen Eingaben erledigen. Zunächst mit Putty (oder vergleichbaren Client) den eigenen uberspace kontaktieren. Im Beispiel wird davon ausgegangen, dass die ownCloud-Installation im Ordner /var/www/virtual/username/html/owncloud liegt. username und hostname sind im Zweifelsfall im Datenblatt zu finden. Zuerst wird die Cache-Datenbank Redis installiert:

test -d ~/service || uberspace-setup-svscan
uberspace-setup-redis
svc -du ~/service/redis
uberspace-install-pecl redis

Im Anschluss wird die config.php im Verzeichnis /var/www/virtual/username/html/owncloud/config/ bearbeitet.

<?php
$CONFIG = array (
 // Weitere Konfigurationsparameter sind hier ausgespart, jedoch nicht löschen!
 // Achtung: username ersetzen nicht übersehen!
  'filelocking.enabled' => 'true',
  'memcache.locking' => '\OC\Memcache\Redis',
  'memcache.local' => '\OC\Memcache\Redis',
  'redis' => array(
        'host'      => '/home/username/.redis/sock',
        'port'      => 0,
        'timeout'   => 0.0 
    ),
);

Feed-Reader: selfoss auf dem uberspace installieren

selfoss ist ein unter freier Lizenz stehender Feed-Reader vom Münchner Software-Entwickler Tobias Zeisig. Neben der Websoftware gibt es Apps für Android und iOS. Bereits vor knapp zwei Jahren wurde an dieser Stelle über selfoss berichtet. In diesem Beitrag soll es um die Installation auf einem uberspace gehen.

Zuerst mit Putty (oder vergleichbaren Client) den eigenen uberspace kontaktieren. Im Beispiel wird davon ausgegangen, dass selfoss im Ordner /var/www/virtual/username/html/selfoss installiert werden und unter f.domain.tld erreichbar sein soll. username und hostname sind im Zweifelsfall im Datenblatt zu finden. Nach dem Verbinden wechseln wir in das html-Verzeichnis und erstellen dort einen Ordner selfoss. Danach wechseln wir in diesen Ordner.

cd ~/html
mkdir selfoss
cd ~/html/selfoss

Jetzt wird selfoss heruntergeladen und danach entpackt. Dafür ggf. die URL zur aktuellsten Version anpassen.

wget https://github.com/SSilence/selfoss/releases/download/2.17/selfoss-2.17.zip
unzip selfoss-2.17.zip

Über username.hostname.uberspace.de/selfoss ist selfoss nun zu erreichen. Damit ein komfortabler Zugriff möglich ist, wird noch ein Verweis für eine Subdomain angelegt. Dazu zunächst in das Hauptverzeichnis wechseln.

cd /var/www/virtual/username/

Dann eine Verknüpfung anlegen (am Beispiel der auf uberspace hinterlegten Adresse domain.tld):

ln -s /var/www/virtual/username/html/selfoss f.domain.tld

Damit selfoss auch unter der Subdomain läuft muss die .htaccess im Ordner selfoss bearbeitet werden. Zeile 3 wird verändert von

#RewriteBase /selfoss

in

RewriteBase /

Zum Schluss wird die defaults.ini in config.ini umbenannt und einige Einstellungen sind möglich. Auf der Website des Entwicklers sind alle Konfigurationsmöglichkeiten erklärt. Fürs Erste wird die Sprache in Deutsch geändert:

language=de

Wer selfoss vor Dritten schützen will, kann unter f.domain.tld/password ein gehashtes Passwort erstellen, dass in der config.ini dann der Variable password zugeordnet wird. Das sieht dann so ähnlich wie hier aus:

username=uberspacer
password=V5MsHymHBTRTvhbab3sWX23pr3wt6hXSdAaLYn

Zum Schluss kann eine bestehende OPML-Datei aus einem anderen Feed-Reader unter f.domain.tld/opml importiert werden.

Webmail-Alternative: rainloop auf dem uberspace betreiben

Auf der Suche nach Alternativen zu roundcube, dass beispielsweise immer noch keine native CardDav-Synchronisation mit sich bringt, ist während dem Warten auf mailpile das Projekt rainloop aufgetaucht. Die Webmail-Software steht unter CreativeCommons-Lizenz (BY-NC-SA) und ist für den privaten Einsatz kostenlos. Die Form der Lizenzierung ist ungewöhnlich, und rainloop damit auch nicht wirklich freie Software, selbst wenn die Entwicklung auf github nachvollzogen werden kann. Aber bei einem ersten Test der Online-Demo weckt es Begeisterung und mit folgenden Schritten läuft es nach wenigen Minuten auf dem eigenen uberspace. Einige der Pluspunkte von rainloop sind:

  • schlanke Weboberfläche
  • mehrere E-Mail-Konten und/oder Identitäten in einem Account verwalten
  • CardDav-Synchronisation der Kontakte z. B. mit der eigenen ownCloud

So wandert rainloop auf den eigenen uberspace. Zuerst mit Putty (oder vergleichbaren Client) den eigenen uberspace kontaktieren. Im Beispiel wird davon ausgegangen, dass rainloop im Ordner /var/www/virtual/username/html/rainloop installiert werden soll. username und hostname sind im Zweifelsfall im Datenblatt zu finden. Nach dem Verbinden wechseln wir in das Zielverzeichnis.

cd /var/www/virtual/username/html/rainloop/

Jetzt wird die neuste Version von rainloop in das Verzeichnis geladen.

wget http://repository.rainloop.net/v2/webmail/rainloop-latest.zip

Zum Schluss wird die Zip-Datei entpackt.

unzip rainloop-latest.zip

Über username.hostname.uberspace.de/rainloop ist Rainloop nun zu erreichen. Damit ein komfortabler Zugriff möglich ist, kann noch ein Verweis für eine Subdomain angelegt werden. Dazu zunächst in das Hauptverzeichnis wechseln.

cd /var/www/virtual/username/

Dann eine Verknüpfung anlegen (am Beispiel der auf uberspace hinterlegten Adresse domain.tld):

ln -s /var/www/virtual/username/html/rainloop mail.domain.tld

Rainloop ist nun unter mail.domain.tld erreichbar. Zunächst sollten unter mail.domain.tld/?admin einige Einstellungen vorgenommen werden. Der Standardzugang admin mit dem Passwort 12345 sollte als erstes geändert werden. Unter Domains kann etwa der uberspace-Mailserver eingetragen werden. Dazu auf Add Domain gehen und die Daten eintragen. Im Anschluss sollte das Anmelden unter mail.domain.tld mit den bei uberspace eingerichteten E-Mail-Adressen möglich sein.

Übrigens: Bereits standardmässig sind Yahoo, Outlook.com oder Google Mail eingerichtet. Wer erstmal nur die Funktionen ausprobieren möchte, meldet sich einfach mit der bei einem dieser Anbieter registrierten an. Das in der Einleitung versprochene Feature der CardDav-Synchronisation gibt es nach Aktivierung der Adressbuchfunktion und eben der Synchronisation unter Contacts im Administrationsbereich. Als letzter Hinweis sei angebracht, dass rainloop in einem nutzbaren, aber nicht stabilen Entwicklungsstatus ist.

ownCloud 6.0.3 veröffentlicht

Die Version 6.0.3 der Software ownCloud wurde veröffentlicht. Neben einigen Sicherheitsfixes und Ausbesserungen bei Funktionen der Cloud-Lösung, wurde die Performance der LDAP-Schnittstelle verbessert. Das Update war mit dem hier beschriebenen Vorgehen bei uberspace kein Problem.

Update von owncloud bei uberspace

So lief die Aktualisierung von owncloud bei uberspace bei mir ohne Probleme:

Zunächst mit Putty (oder vergleichbaren Client) den eigenen uberspace kontaktieren (username.hostname). Im Beispiel wird davon ausgegangen, dass die owncloud-Installation im Ordner /var/www/virtual/username/html/owncloud liegt. username und hostname sind im Zweifelsfall im Datenblatt zu finden.

Anschließend in das Verzeichnis wechseln in dem der owncloud-Ordner liegt:

cd /var/www/virtual/username/html

Zuerst wird eine Sicherungskopie erstellt (bei Verwendung einer MySQL-Datenbank diese zunächst sichern, z.B. über adminer oder phpadmin, zugänglich über das Datenblatt):

rsync -a owncloud/ owncloud_backup/

Die neuste Version von owncloud auf den Server kopieren:

wget http://download.owncloud.org/community/owncloud-5.0.11.tar.bz2

Die Versionsnummer im Dateinamen muss in diesem und auch im nächsten Schritt entsprechend angepasst werden. Im Anschluss wird die Datei auf dem Server entpackt:

mkdir owncloud_latest; tar -C owncloud_latest -xjf owncloud-5.0.11.tar.bz2

Im Anschluss werden die Dateien im owncloud-Ordner aktualisiert:

rsync --inplace -rtv owncloud_latest/owncloud/ owncloud/

Im nächsten Schritt die eigene owncloud-Installation im Browser aufrufen. Die Aktualisierung wird nun durchgeführt und – wenn alles geklappt hat – mit „Please reload this page“ quitiert. Daraufhin die Website aktualisieren und das Update sollte abgeschlossen sein.

Zu guter letzt wird auf dem Server aufgeräumt.

rm -rf owncloud-5.0.11.tar.bz2 owncloud_latest/

Sollte alles rund laufen, kann auch noch das Backup gelöscht werden:

rm -rf owncloud_backup/

Grundlage dieses Vorgehens war die Anleitung im offiziellen owncloud-Administratorenhandbuch.

Sollte doch mal etwas schief gehen, hilft folgende Eingabe, die ursprüngliche Version wiederherzustellen:

rsync --inplace -rtv owncloud_backup/ owncloud/

Web-Update ab Version 7

Seit Version 7 scheint die Update-App von ownCloud rund zu laufen und eine Aktualisierung über den Administrationsbereich möglich zu machen.

  1. Backup der ownCloud erstellen (Dateiensicherung über den obigen Weg möglich; Datenbank nicht vergessen)
  2. Administration auswählen
  3. Unter Updater auf Update Center klicken
  4. Dort Update durchführen auswählen und auf Update klicken
  5. Die Seite aktualisieren und weiteren Anweisungen folgen

Sollte das Update Center nicht verfügbar sein muss die Updater-App zunächst im Apps-Menü aktiviert werden. Detailierte englischsprachige Informationen in der ownCloud-Dokumentation.