Raspberry Pi mit OwnCloud als Dropbox-Clone einrichten

Raspberry Pi und OwnCloud

Mit Hilfe von OwnCloud können Daten einfach auf einem eigenen Server gespeichert werden. Ähnlich wie bei anderen großen Cloud-Diensten reicht schon ein Browser als Client, jedoch mit dem großen Unterschied, dass es sich um eine freie und quelloffene Software handelt. Aber auch bei Einsatz eines entsprechenden Clients kann dieser automatisch mit einem lokalen Verzeichnis in die Cloud synchronisieren. So kann auch von mehreren Rechnern auf einen konsistenten Datenbestand zugegriffen werden.

Im Folgenden wird gezeigt wie OwnCloud auf einem Raspberry Pi aufgesetzt werden kann, um über sein eigenes Cloud-Service, ähnlich zu Dropbox, zu verfügen. Somit hat man jederzeit Zugriff auf seine Daten und hat dennoch die volle Kontrolle über Server und seine Daten.

Vorraussetzungen

Netzwerkeinstellungen

Zunächst wird dem Raspberry eine fixe IP-Adresse zugewiesen, indem das Netzwerkinterface angepasst wird.

sudo nano /etc/network/interfaces

Die geöffnete Datei wird wie Folgt geändert. Je nach Netzwerkkonfiguration können die IP-Adressen unterschiedlich sein.

auto eth0
iface eth0 inet static
address 192.168.1.118
gateway 192.168.1.1
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.1.255

Nachdem die Datei gespeichert wurde muss das Netzwerk neugestartet werden:

sudo /etc/init.d/networking restart

Für OwnCloud vorbereiten

Nun wird der Raspberry aktualisiert und die, für OwnCloud, benötigten Pakete installiert.

sudo apt-get update

Benötigt wird unter Anderem Apache mit SSL, PHP5 und PHP APC:

sudo apt-get install apache2 php5 php5-json php5-gd php5-sqlite curl libcurl3 libcurl4-openssl-dev php5-curl php5-gd php5-cgi php-pear php5-dev build-essential libpcre3-dev php5 libapache2-mod-php5 php-apc gparted

Konfiguration von PHP und Apache

Die heruntergeladenen Pakete müssen noch konfiguriert werden, beginnend mit PHP APC um eine beschleunigte Ausführung von PHP-Scripten zu ermöglichen:

sudo pecl install apc
sudo nano /etc/php5/cgi/conf.d/apc.ini

In die apc.ini werden folgende Zeilen hinzugefügt:

extension=apc.so
apc.enabled=1
apc.shm_size=30

Als nächstes muss die maximale Dateigröße für die hochzuladenen Dateien in der php.ini Datei angepasst werden.

sudo nano /etc/php5/apache2/php.ini

Die Datei ist ziemlich groß und zunächst gilt es den Wert upload_max_filesize zu finden und den Wert auf 1024M zu ändern, um die maximale Dateigröße für einen Upload auf ein Gigabyte zu erhöhen. Selbiges gilt für den Wert post_max_size, welcher auf 1200M geändert werden sollte.

Letzten Endes muss noch der Bereich mit extension= gefunden werden und extension=apc.so hinzugefügt werden.

Danach kann die Datei gespeichert werden.

Als nächstes wird der Apache konfiguriert. Dazu wird folgende Datei geöffnet:

sudo nano /etc/apache2/sites-enabled/000-default

In jedem Directory-Tag sollte ein AllowOverride stehen. Diese müssen von AllowOverride None auf AllowOverride All geändert werden.

Weiters wird die Verwendung von SSL konfiguriert:

sudo a2enmod rewrite
sudo a2enmod headers

Mit folgendem Befehl wird das Zertifikat für die SSL Verbindung erstellt:

sudo openssl genrsa -des3 -out server.key 1024; sudo openssl rsa -in server.key -out server.key.insecure;sudo openssl req -new -key server.key -out server.csr;sudo openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt;sudo cp server.crt /etc/ssl/certs;sudo cp server.key /etc/ssl/private;sudo a2enmod ssl;sudo a2ensite default-ssl

Nach der Ausführung muss Apache neugestartet werden:

sudo service apache2 restart

Download und Installation von OwnCloud

Da nun der Apache und PHP erfolgreich installiert und konfiguriert wurde, kann nun die eigentliche Installation von OwnCloud beginnen. Alternativ zu der nachfolgenden Anleitung kann auch der Web-Installer verwendet werden, welcher hier zu finden ist, ansonsten wird zuerst die aktuelle Version heruntergeladen:

wget https://download.owncloud.org/community/owncloud-8.1.0.tar.bz2

Wenn der Download erfolgreich beendet wurde, kann das Archiv entpackt werden:

sudo tar -xjf owncloud-8.1.0.tar.bz2

Die entpackten Dateien werden nun in den Web-Root Ordner kopiert.

sudo cp -r owncloud /var/www

Danach müssen dem Webserver noch die Zugriffsrechte in das OwnCloud Verzeichnis gewährt werden:

sudo chown -R www-data:www-data /var/www/owncloud/

In der .htaccess Datei müssen die selben Änderungen vorgenommen werden wie zu Beginn in der php.ini Datei. Dazu wird diese geöffnet und die Werte upload_max_filesize und post_max_size auf 1024M bzw. 1200M geändert.

sudo nano /var/www/owncloud/.htaccess

OwnCloud Konfiguration

Der leichteste Weg auf dem Raspberry Pi ein externes Laufwerk mittels gparted einzurichten ist über eine grafische Oberfläche:

startx

Über ein Terminal kann danach gparted ausgeführt werden, um das externe Laufwerk beziehungsweise einen USB-Stick zu partitionieren und zu formatieren:

sudo gparted

Eine ausführliche Anleitung für gparted kann hier gefunden werden.

Wenn dies abgeschlossen ist, müssen dem Webserver nur noch die Rechte auf das Verzeichnis gewährt werden:

sudo chown -R www-data:www-data /media/owncloud

Die restliche Konfiguration kann direkt über einen Web Browser eingerichtet werden. Dazu muss lediglich die Adresse https://127.0.0.1/owncloud auf dem Raspberry, bzw. mit der Anfangs eingerichteten statischen IP-Adresse von jedem anderen Gerät, aufgerufen werden.

Nachdem ein Benutzer eingerichtet wurde, muss unter den erweiterten Einstellungen das zuvor berechtigte Verzeichnis des externen Laufwerks angegeben werden. In diesem Fall /media/owncloud.

Nachdem die Änderungen gespeichert wurden, sollte es nun möglich sein, Dateien hochzuladen. Um Videos abspielen zu können, müsste noch der Video Player aktiviert werden.

Tagged with:     , , ,

About the author /


Einst gelernter Werkzeugbautechniker, habe ich vor etlichen Jahren mein Leben der Informatik verschrieben. Zur Zeit studiere ich noch Informatik auf der Fachhochschule Technikum Wien und beschäftige mich am liebsten mit Java, Android und Elektronik.

Related Articles

Post your comments

Your email address will not be published. Required fields are marked *

*

Unterstütz uns!

Folgt uns!

Diese Seite

wurde erstellt mit Ehrgeiz, Liebe und viel Koffein. Bei der Erstellung kamen keine jar-Dateien zu Schaden. Das Logo wurde erstellt von Star-seven.at.