ownCloud auf dem Raspberry Pi

Obwohl ich ownCloud bereits bei 1und1 eingerichtet habe, habe ich mich dazu entschlossen, eine weitere Instanz von ownCloud auf dem Raspberry Pi zu installieren. Ausschlaggebend dafür waren mein Wunsch nach Unabhängigkeit von Dropbox und Co., die Tatsache, dass  ich als KabelBW-Kunde faktisch eine permanente IP-Adresse habe und deshalb keinen Dyndns-Dienst brauche, Größe, Geräuschlosigkeit und geringer Stromverbrauch des Pi und nicht zuletzt ein Artikel in der Mac&i Nr. 10.

Das heisst allerdings nicht, dass ich mich von Dropbox, Skydrive, Teamdrive … gleich verabschieden werde. Zum einen sind diese Dienste deutlich performanter als ownCloud, zum anderen bieten inzwischen viele Programme/Apps die Integration gängiger Dienste wie Dropbox, Skydrive u.a. an. Auf diese Bequemlichkeit will ich nicht verzichten. Durch meine persönliche ownCloud verringere ich jedoch die Abhängigkeit von diesen Diensten und bin zumindest hier der Herr meiner Daten in der Wolke (na ja, so weit das überhaupt möglich ist …).

Raspbian installieren

Als Basis für ownCloud dient das „Standardbetriebssystem“ Raspian des Rasperry Pi, eine angepasste Version von Debian Wheezy.

Die ersten ersten beiden Schritte erfolgen auf dem Mac, ab Schritt 3 geht es auf dem Pi weiter.

  1. Raspian herunterladen und entpacken.
    Raspian herunterladen und mit dem Archivierungsprogramm entpacken. In meinem Fall ergab das die Datei 2013-02-09-wheezy-raspbian.img.
  2. Das Raspian-Image auf eine SD-Karte schreiben.
    Das Image muss nun auf eine ausreichend große (mindestens 4 GB) und FAT-formatierte SD-Karte geschrieben werden. Ich habe das mit Pi Filler gemacht, einem Mini-Programm, das auf diese Aufgabe spezialisiert ist. Wer will, kann natürlich auch auf die Kommandozeile gehen und dd anwerfen. Windows-Nutzer sollten den Win32 Disk Imager verwenden.
  3. Die SD-Karte in den Pi einlegen.
    Für die folgenden Schritte habe ich den Pi mit einem Monitor und einer Tastatur/Maus verbunden. SD-Karte einlegen, den Pi an den Strom hängen und warten. Nach einer Weile landet man im Konfigurationsprogramm raspi-config.
    raspi-config
    Hier wird das Tastatur-Layout, die Sprache, die Zeit usw. angepasst. Ich habe außerdem expand_rootfs (voller Speicherplatz der SD-Karte wird genutzt), change_pass (neues Passwort für den Benutzer pi), overclock (moderates Overclocking), ssh (Zugang ermöglichen) und boot_behavior (kein grafischer Desktop beim Start) ausgewählt.
    Zum Abschluss am besten den Pi neu starten mit „sudo shutdown -r now“.

Raspian einrichten, aktualisieren und anpassen.

Jetzt wird der Netzzugang eingerichtet und Raspian für die Installation von ownCloud vorbereitet.Auf der Desktop-Oberfläche („startx“ eingeben) gibt es ein Programm für die Einrichtung des WLAN-Zugangs. Dort kann der WLAN-Adapter ausgewählt (wlan0) und nach dem WLAN gescannt werden. Dann die Zugangsdaten eingeben – fertig. Aber Achtung: Es kann sein, dass keine Verbindung zum WLAN zustande kommt. Dann gibt es wahrscheinlich ein Problem mit dem WLAN-Passwort. In diesem Fall zu /etc/wpa_supplicant/wpa_supplicant.conf gehen, mit einem Texteditor das richtige WLAN-Passwort eintragen und das Desktop-Programm erneut aufrufen. Jetzt kommt der Pi ins Internet.
Nun müssen noch einige Programme und Dienste mit „apt-get“nachinstalliert werden, in erster Linie der Webserver Apache2 und die Skriptsprache PHP:

sudo apt-get update
sudo apt-get upgrade
sudo apt-get install apache2 php5 php5-gd php-xml-parser php5-intl
sudo apt-get install php5-sqlite php5-mysql smbclient curl libcurl3 php5-curl
sudo apt-get install php-pear php-apc

Kurz noch die Funktion des Webservers vom Mac aus testen (die IP-Adresse ist nur ein  Beispiel):

192.168.1.50/index.html
(Es sollte "It works" angezeigt werden).

Der Pi ist jetzt für die Installation von ownCloud vorbereitet.

ownCloud installieren

Ich bin so vorgegangen:

  1. ownCloud herunterladen, entpacken und kopieren
    Am Mac owncloud herunterladen und entpacken. Ergebnis ist ein Ordner „owncloud“. Mit Filezilla eine Verbindung zum Pi herstellen und den Ordner ins Verzeichnis /var/www/ kopieren. Das Resultat sieht so aus:
    zilla_pi
    Update: Damit der ownCloud-Ordner erfolgreich kopiert werden kann, muss das Verzeichnis /var/www/ vorübergehend beschreibbar gemacht werden:

    sudo -R chmod a+w /var/www/  oder
    sudo -R chmod 777 /var/www/
  2. ownCloud anpassen und zum ersten Mal aufrufen
    Als erstes müssen die Rechte des owncloud-Ordners durch die Eingabe von“sudo  chown -R www-data:www-data owncloud“ angepasst werden. Danach kann man die Weboberfläche von owncloud im Mac-Browser durch die Eingabe von „192.168.1.50/owncloud“ aufrufen. ownCloud konfiguriert sich jetzt selbsttätig.
  3. Sonstige Anpassungen
    In der Voreinstellung können höchstens 2 MB große Dateien zu ownCloud hochgeladen werden. Das ist zu wenig. Ich habe den Wert auf 500 MB erhöht. Die Werte sind in /etc/php5/apache2/php.ini anzupassen.  Ich mache solche Änderungen am liebsten mit dem Midnight Commander, einem Dateimager, der vieles (sehr vieles!) kann. Mit „sudo apt-get install mc“ kommt er auf den Pi. In „php.ini“ nach „upload_max_filesize“ suchen und dort den höheren Wert eingeben, z.B. 100M. Dann nach „post_max_size“ suchen und dort einen etwas höhren Wert eingeben, z.B. 150M. Damit die Änderungen wirksam werden den Apachen mit „sudo /etc/init.d/apache2 restart“ neu starten.
    Damit sich die IP des Pi nicht nach jedem Neustart ändert, habe ich in /etc/network/interfaces folgendes eingetragen (für den Dauerbetrieb habe ich mich für eine Kabelverbindung entschieden):
    auto eth0
    iface eth0 inet static
    address 192.168.1.50
    netmask 255.255.255.0
    gateway 192.168.1.1
  4. Weiterleitung im Router
    Damit ownCloud aus dem Internet erreichbar ist, muss im Router eine Portweiterleitung auf die IP Adresse des Pi eingerichtet werden. Die Wahl des Ports ist frei. Damit der Apache weiss, auf welchem Port er ownCloud „anbieten“ soll, ist /etc/apache2/sites-enabled/000-default zu bearbeiten. Gleich in der ersten Zeile ist der Eintrag <VirtualHosts *:80> durch  <VirtualHosts *:80 *:1234> zu ergänzen. Statt 1234 ist der selbst gewählte Port für Owncloud einzutragen.
    Wer von seinem Provider eine dynamische IP-Adresse bekommt (die sich spätestens alle 24 Stunden ändert), muss darüber hinaus noch einen Dyndns-Dienst einrichten.

Update: Man kann ownCloud auch mit Hilfe des Webinstallers auf dem RPi installieren. Einfach der Anleitung folgen …

 Synchronisieren

Das Desktop-Client-Programm für den Mac erlaubt es, einen lokalen Ordner „owncloud“ auf dem Mac anzulegen, dessen Inhalt mit ownCloud synchronisiert wird.  In der Voreinstellung werden alle Dateien und Ordner, welche in /owncloud/clientsync liegen, synchronisiert. Das kann man auch ändern.

Die Weboberfläche von ownCloud reagiert im Browser sehr langsam; zum Glück brauche ich diesen Zugang nur selten. Die Synchronisation selber läuft relativ flott, auch an meinem Zugang mit nur wenig mehr als 1 MBit/s Upload-Geschwindigkeit. Abgesehen von der regelmäßigen Synchronisation zwischen dem Mac und ownCloud greife ich noch über den iOS-Client auf ownCloud zu. Auch das funktioniert problemlos.

owncloud-sync

Neben der Synchronisation von Dateien beherrscht ownCloud auch den Abgleich von Kalendern und Kontaktdaten. Wie das im einzelnen funktioniert beschreibt ausführlich ein Beitrag in der c’t 11/2013, S. 128f. Leider ist es nach den Erfahrungen der c’t Redakteure nicht möglich, Kalender und Kontakte gleichzeitig mit ownCloud und Google zu synchronisieren, sondern nur in einem „Doppelschritt“.

Dieser Beitrag wurde unter Allgemein veröffentlicht. Setze ein Lesezeichen auf den Permalink.

7 Antworten zu ownCloud auf dem Raspberry Pi

  1. Jörg Maliers sagt:

    Hallo und Danke für die Anleitung,

    ich habe allerdings das Problem, dass ich beim Kopieren des owncloud-Ordners per filezilla ein Rechteproblem habe. Ich bekomme beim Prozess nur Fehlermeldungen ohne Ende, dass ich keine Schreibrechte auf /var/www habe. Ist ja auch im root-Verzeichnis.
    Das gleiche Problem habe ich auch wenn ich versuche, die Dateien lokal zu kopieren, also direkt auf dem pi geladen und entpackt.
    Macht es Sinn, diesem Ordner User-Rechte zuzuordnen, wenn ja, wie hast du das gelöst?

    Vielen Dank, Jörg

    • Uli Bauer sagt:

      Hallo,

      stimmt – ich hatte auch Rechte-Probleme beim Kopieren mit Filezilla. So weit ich mich erinnern kann, habe ich /var/www/ vorübergehend für alle schreibbar gemacht, dann den owncloud-Ordner kopiert und zum Schluss die Rechte wieder angepasst. Ganz genau weiss ich das leider nicht mehr 🙁

      Ich werde einen Hinweis in der Artikel aufnehmen.

      • Jörg Maliers sagt:

        Hi.
        Gut, dass du es im Artikel aufgenommen hast. Vielleicht solltest du noch ergänzen, wie das ganze vorübergehend wird. Also wie man die Änderung rückgängig machen kann.
        Schönen Gruß

  2. Manu sagt:

    Hab ins LXTerminal folgendes eingeben: “ sudo chmod 777 /var/www “ (ohne die anführungszeichen versteht sich! dann hat es geklappt! über Filezilla rechtklick „dateiantribute“ hat bei mir nicht geklappt!
    LG Manu

  3. Manu sagt:

    sudo chown -R www-data:www-data owncloud
    da komm bei mir das es dass nicht findet!
    „sudo: chown: command not found“

Schreibe einen Kommentar zu Uli Bauer Antworten abbrechen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert