OwnCloud Logo
Creative Commons Namensnennung - Weitergabe unter gleichen Bedingungen 4.0 International Lizenz

In diesem Tutorial möchte ich Euch zeigen, wie ihr mit einem Raspberry Pi Modell B einen funktionierenden Webserver einrichtet und anschließend OwnCloud als Cloudsystem aufzuspielen. Die Konfiguration des vorgestellten Systems ist für Testzwecke oder Arbeiten im lokalen Netz gedacht, nicht für den professionellen Einsatz im Internet. Ein Einsatz im Internet erfordert nicht nur die Kenntnis des Installierens, zudem noch viele Sicherheitsaspekte. Diese Aspekte werden hier nicht vorgestellt, folgen aber evtl. wenn ich einmal wieder mehr Zeit habe. Kapitel 1: Raspbian installieren  wird anhand von MacOSX vorgestellt, alle weiteren Kapitel funktionieren plattformunabhängig also auch mit Windows. Windows Nutzer dürfen/müssen an dieser Stelle nicht aufhören, ich habe dort einen Link mit geeigneten alternativ Software zur Verfügung gestellt. Ab Schritt 3 bewegen sich alle Systeme wieder am gleichen Strang.



Grundausstattung


Den Unterschied zwischen den Spezifikationen des Raspberry Pis findet ihr hier. Es ist wichtig, dass die Version B erstanden wird, da der Unterscheid, vor allem beim RAM, ausschlaggebend ist. Genauso wichtig ist die Wahl der passenden SD Karte - sie wird später Eure Festplatte und umso besser die Leistung, desto schneller ist das System. Die oben verlinkte SD Karte ist in meiner Sicht der Preis/Leistungssieger. Die Unterschiede bei SD-Karten sind enorm, teilweise sind die Zugriffszeiten 3x schneller oder die Schreibgeschwindigkeit nur 1/5 bei einer vergleichbaren Class 10 Karte. Es wurde vorzugsweise auf schnelle Zugriffszeiten, schnelles zufälliges Lesen und Schreiben, schnelles sequentielles Lesen und Schreibenund eine passable Schreibgeschwindigkeitgeachtet.1 Mein Grundsystem2 mit übertaktetem Raspberry3 benötigt 23 Sekunden zum Hochfahren, damit habt ihr einen Vergleichswert bei der Nutzung von anderen Karten.

Raspbian installieren

Damit das Tutorial komplett abgearbeitet werden kann, sind die oben genannten Bauteile nötig. Es gibt zwei Möglichkeiten zum Start, 1.) Mit Tastatur und Bildschirm oder 2.) alles über Remote (SSH) [Terminal]. Ich habe mich für die zweite Variante entschieden, da einfach weniger Verkabelung und Ausrüstung nötig ist.

Schritt 1: SD-Karte vorbereiten

Das Betriebssystem für den Raspberry Pi (Raspbian Wheezy) muss auf eine SD-Karte gespielt werden. Hierfür benötigt ihr die ISO Datei des Betriebssystems Raspbian Wheezy Image und ein paar kleine Helfer (MAC OSX): Pi Filler,Pi Copier und Pi Finder, diese findet ihr unter: http://ivanx.com/raspberrypi/. Für Windows kann der Win32 Image Writer genutzt werden, zu finden unter: https://launchpad.net/win32-image-writer.

Schritt 2: Raspbian installieren unter MacOSX

Wie ihr nun vorgehen müsst, seht ihr in den nachfolgenden Videos. Zurücklegen und genießen.

Schritt 2: Raspbian installieren unter Windows

Steckt jetzt die SD-Karte in das Kartenlesegerät, ladet das Programm herunter, installiert es anschließend mit der Standardkonfiguration und startet es. Die minimalistische Oberfläche von Disk Imager lässt kaum Fehlerquellen zu, ihr müsst lediglich auf das Ordner Symbol klicken und die heruntergeladene Raspbian Image Datei laden (In den Screenshots und den Videos wird OpenELEC installiert, nehmt anstelle die Raspbian Image).

Win32 Disk Imager Image Datei öffnen auf Ordner klicken rechts

Falls Euch die Datei nicht angezeigt wird, klickt neben dem Dateinamen auf die Dateiformate und wählt *.*4, hiermit werden euch alle Dateitypen angezeigt.

Alle Dateitypen anzeigen falls die OpenELEC Image Datei nicht sichtbar ist

Alle Dateitypen anzeigen Erklärung - Alle Dateitypen anzeigen falls die OpenELEC Image Datei nicht sichtbar ist

Wählt die Image Datei aus und klickt auf öffnen. Neben dem Pfad der Image Datei müsst ihr noch den "Device", sprich das Speichermedium für den Clone Vorgang wählen. Passt hier sehr gut darauf auf, dass ihr den richtigen Laufwerksbuchstaben, und zwar den der Speicherkarte wählt. Seid hier doppelt vorsichtig! Eine Warnung taucht auf, die in etwa dem entspricht, was ich einen Satz vorher geschrieben habe. Bestätigt den Vorgang und wartet ab, bis der Vorgang beendet ist. Voilà! Raspbian ist nun bootfähig auf der Speicherkarte und wartet darauf, in den Raspberry gesteckt zu werden. Falls euch Schritte unklar sind oder zu kompliziert, ein kleines Video zeigt die einzelnen Schritte nochmals genau. Nochmals der Hinweis, dass das Video die Installation von OpenELEC zeigt und nicht von Raspbian. Überspringt das Herunterladen der Image Datei und nehmt Eure geladene Raspbian Image.

Video: Download OpenELEC sowie Download und Installation Win32 Disk Imager unter Windows 8.1:

Video: Clone Vorgang von OpenELEC auf SD-Karte mit Win32 Disk Imager:

Sobald der Transfer der Daten auf die SD-Karte abgeschlossen ist, könnt Ihr die SD-Karte in den Raspberry stecken. Fahrt den Raspberry mit angeschlossenem Monitor und Tastatur hoch. Die Standard Nutzerdaten beim ersten Login heißen: User: pi Passwort: raspberry (falls das Passwort falsch ist, raspberrz oder raspberrx schreiben, wegen falschem Tastaturlayout).
 

Schritt 3: Raspberry Pi konfigurieren

Mit dem Befehl: sudo raspi-config könnt ihr den Burschen genauer unter die Lupe nehmen und an ein paar interessanten Schrauben drehen! Das Video zeigt Euch wie. Im Video sieht man leider nicht welche Tasten ich drücke - also kurz was getan werden muss: Grundsätzlich navigiert ihr mit den Pfeiltasten der Tastatur, aus- oder abwählen mit der Leertaste und zu einem Navigationselement springen (OK oder Finish) funktioniert mit der Tab-Taste.

Schritt 4: Raspbian updaten und upgraden

Ein Reboot macht vieles Gut - bevor wir fortfahren einmal das System neu starten. Hierzu folgenden Befehl in die Konsole hacken:

sudo reboot

Wartet nun etwa 1 Minute und logt Euch über die Konsole über SSH ein. Der Befehl hierfür lautet: ssh pi@ip-adresse-des-pis. Wenn ihr die IP nicht mehr wisst, benutzt das Tool: Pi Finder, damit bekommt Ihr die IP heraus. Alternativ könnt ihr die IP auch direkt am Pi über die Tastatureingabe herausfinden. Gebt dazu ipconfig in die Console ein und lest die IP ab. Wir benötigen nun die Befehle:

sudo apt-get update
sudo apt-get dist-upgrade

Aber was machen diese Befehle eigentlich? Hierzu die Übersicht herannehmen: Übersichtsliste der Linuxbefehle von apt-get

apt-get Linuxbefehle - Übersichtsliste der Linuxbefehle von apt-get

Das Video zeigt Euch wie ihr die Befehle in die Konsole bekommt.

Ein kleiner Tipp noch, wollt Ihr die Dateistruktur des Linux Systems ohne FTP Programm einsehen, könnt Ihr den Midnight Commander (mc) installieren:

apt-get install mc

Starten könnt ihr das Programm mit dem einfachen zwei Buchstaben: mc

Webserver installieren

Einleitung

Im vorherigen Tutorial habt Ihr gesehen, wie Raspbian installiert und konfiguriert wird. Hier folgt erstmal ein kleiner Einschub, da wir nun darauf achten, dass das gesamte Tutorial plattformunabhängig genutzt werden kann. Unter MAC OSX ist die Steuerung des Pi's über das Terminal schnell gemacht - die Windowsianer müssen sich leider erstmal einen kleinen Helfer holen, denn Windows hat mit der UNIX Shell nichts am Hut. Wieso aber der MAC? Macintosh entstand aus Linux und ist sogar (noch) UNIX zertifiziert. So weg vom Exkurs - ab zum Workshop. Damit die nachfolgenden Schritte des Tutorials unter Windows funktionieren, müsst ihr xMing und PuTTYstarten - Anweisungen findet Ihr im Video:

Schritt 1: Apache Webserver installieren

Als erstes müssen wir uns natürlich auf den Raspberry Pi einloggen - ssh pi@ipadresse eingeben, Passwort eintippen und danach den Befehl eingeben:

sudo bash

Puh, jetzt aber Vorsicht! Wir haben nun die "ultimative Macht", alles was wir sagen wird OHNE nachfragen erledigt.

Damit wir den Apachen (Webserver) installieren können, benötigen wir Nutzergruppen – ansonsten schlägt die Installation fehl. Mit den folgenden Befehlen könnt ihr die Standardnutzergruppen für den Apachen anlegen.

sudo groupadd www-data
sudo usermod -a -G www-data www-data

Geschafft? Dann sehen wir mal nach ob mittlerweile neue Updates vorhanden sind:

sudo apt-get update

Nach einem Update bzw. Upgrade sollte Linux, oder der aktualisierte Dienst neu gestartet werden.

sudo reboot

Alles aktuell – sehr schön. Hier kommt der Befehl für die Apachen Installation:

sudo apt-get install apache2 apache2-doc apache2-utils

Nachdem der Installationsvorgang beendet ist, öffnet den Browser – gebt die IP-Adresse Eures Pis ein. It Works!!! Der Webserver läuft. Das Ganze auch noch als Video zum Reinziehen.

Schritt 2: PHP, MySQL und phpMyAdmin aufrüsten

It Works!! Aber viel können wir damit noch nicht anstellen – ein handelsüblicher Webserver bietet einige Features, damit z.B. dynamische Internetseiten, Videostreams etc. überhaupt funktionieren. Wir rüsten nun PHP, MySQL und phpMyAdmin nach, damit Owncloud später auch auf unserem Webserver läuft.

Damit wir wieder vollen Zugriff haben und auch die gewünschten Services installieren können, benötigen wir uneingeschränkte Zugriffsrechte:

sudo bash
apt-get install php5 php5-gd php5-sqlite php5-curl php5-json php5-common php5-intl php-pear php-apc php-xml-parser libapache2-mod-php5 curl libcurl3 libcurl3-dev sqlite

Nun haben wir PHP5 nachgerüstet, damit aber ein CMS wie Owncloud läuft, benötigen wir noch eine Datenbank und die Verknüpfung zu dieser:

apt-get install php5-mysql
apt-get install mysql-server mysql-client

und ein Tool Namens phpMyAdmin, mit dem wir die Datenbank verwalten können:

apt-get install phpmyadmin

Wir haben als Standardpasswort für den Datenbankzugriff iuk gewählt.

Hier wieder alles im Video nachzusehen.

Schritt 3: Installation testen

Damit wir auch sicher sind, ob PHP wirklich mit den ganzen Features vorhanden ist, machen wir einen Check. Das Verzeichnis für die Internetseiten unter Linux ist das /var/www Verzeichnis. Logt Euch in den Pi ein und nutzt folgenden Befehl:

cd /var/www

Mit dem Befehl cd navigieren wir durch die Verzeichnisse und mit dem nachfolgenden Pfad /var/www an den gewünschten Ort. Wir erstellen nun eine Datei mit dem Namen phpinfo.php und tragen dort einen Befehl für das Auslesen der PHP Installation aus:

sudo nano phpinfo.php

Nano steht für den Nano-Editor, mithilfe können wir nun die PHP-Datei beschreiben. Der Befehl für das Auslesen der PHP Installation lautet:

<?php
phpinfo();
?>

Tragt diesen Code in den Nano-Editor ein und speichert mit CTRL+O das Dokument ab, mit CTRL+X könnt Ihr den Editor verlassen.

Jetzt müssen wir natürlich auch noch testen, ob das Ganze Früchte getragen hat. Gebt im Webbrowser die IP des Pis an und schreibt dahinter /phpinfo.php .

Das hat geklappt? Dann weiter mit der Verknüpfung zwischen phpMyAdmin und der SQL Datenbank. Damit wir unsere Datenbank über eine grafische Oberfläche administrieren können, benötigen wir noch eine kleine Einstellung bzw. die Verknüpfung des Diensts phpmyAdmin in unserer Server Konfigurationsdatei apache.conf .

nano /etc/apache2/apache2.conf

Mit den Nano-Editor schreiben wir nun ans Ende der Konfigurationsdatei den Befehl zum Einbinden von phpMyAdmin:

Tipp: Damit Ihr schnell ans Ender der Datei kommt, drückt mehrmals CTRL+V.

Include /etc/phpmyadmin/apache.conf

Als nächstes benötigt OwnCloud gesonderte Rechte, die für den Webserver hinterlegt werden müssen:

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

Sucht nach dem Eintrag:

<Directory /var/www/> Options Indexes FollowSymLinks MultiViews AllowOverride None Order allow,deny allow from all </Directory>

Ändert dort AllowOverride None in AllowOverride All.

Standardmäßig ist die Uploadgröße auf ein paar Megabyte beschränkt, damit größere Projektdateien sowie Mediadateien in die OwnCloud wandern können, müssen wir die maximale Uploadgröße in der php.ini anpassen:

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

Sucht nach den Einträgen:

upload_max_filesize“ und „post_max_size“

Ändert nun den Standardwert in einen Wert Eurer Wahl ab. Ich habe in diesem Fall 2 Gigabyte gewählt:

upload_max_filesize = 2G post_max_size = 2G

Zu guter Letzt, entfernen wir noch die index.html Datei aus dem www Verzeichnis. Auf diese Seite verweist der Webserver automatisch, wenn die URL vom Pi in die Adresszeile des Browsers eingegeben wird.

sudo rm /var/www/index.html 

Überspeichert das Dokument – ihr wisst nicht wie??? Dann nochmals oben nachlesen und merken.

Nun steht die Verbindung – damit sie aber aktiv wird, muss der Apache neu gestartet werden:

/etc/init.d/apache2 restart

Wie immer, nachdem ihr etwas installiert habt, Paketstruktur neu einlesen, upgraden und das System neustarten.

sudo apt-get update
sudo apt-get upgrade
sudo reboot

Schritt 4: phpMyAdmin aufrufen

Wenn alle Schritte erfolgreich absolviert wurden, können wir mittels phpMyAdmin auf die Datenbank zugreifen. Gebt hierzu die Adresse Eures Pis mit einem folgenden /phpmyadmin ein.

Der Standardnutzer der Datenbank lautet root und unser Passwort war iuk.

Erstellt nun eine neue Datenbank und einen Benutzer, in unserem Beispiel haben wir beide owncloud genannt. Falls Ihr keinen Benutzer anlegt, kann auch der Default-User root benutzt werden, standardmäßig hat dieser Nutzer kein Passwort, was natürlich nicht gut ist!

Eine neue Datenbank kann über das Head-Menü: Datenbanken -> Neue Datenbank anlegen -> Anlegen-Button erstellt werden. Nutzt als Datenbankname owncloud, anderenfalls erhaltet Ihr einen Error establishing a database connection Fehler im nachfolgenden Tutorial. Der Fehler besagt, dass die Verbindung zur Datenbank nicht hergestellt werden kann, dass liegt entweder an der nicht vorhandenen Datenbank oder einem falschen Passwort.

OwnCloud Installieren

Erstellt in phpMyAdmin eine neue Datenbank und einen Benutzer, in unserem Beispiel haben wir beide owcloud genannt.

Schritt 1: FTP Zugang herstellen

Standardmäßig verfügt ein Webserver über eine FTP Dienst, zum Austausch von Dateien. Im Terminal könnten wir mittels Eingabe Dateien hochladen, dass ist aber recht mühsam. In den nächsten Schritten, konfigurieren wir einen FTP Zugang, damit ihr Dateien leicht via Drag&Drop verschieben könnt.

Wie gewohnt brauchen wir das Terminal und folgende Befehle:

sudo bash
sudo apt-get install vsftpd

Wir müssen die vsftpd.conf bearbeiten:

nano /etc/vsftpd.conf

Sucht nach den folgenden Einträgen und ändert diese ab, achtet dabei auf die Schreibweise mit YES und NO und dem Kommentarzeichen #. Eine Raute klammert den Befehl aus, wenn ihr bei den unteren Befehlen eine Raute davor seht, entfernt diese.

  • Anonymous_enable=NO
  • Local_enable=YES
  • Write_enable=YES
  • Ascii_upload_enable=YES
  • Ascii_download_enable=YES

Speichert die Datei mit CTRL+O und schließt Sie mit CTRL+X.

So nun müssen wir den Dienst neustarten:

/etc/init.d/vsftpd restart

Wir haben es fast geschafft!

Nun benötigen wir noch die Berechtigung das /var/www Verzeichnis zu beschreiben, hier kommen später unsere Internetseiten hin. Wir befinden uns immer noch im Terminal und wollen nun dem Nutzer: pi besondere Schreibrechte geben:

sudo usermod -a -G www-data pi
sudo chown -R pi /var/www

Das Video zeigt Euch nochmals wie Ihr die Benutzerrechte vergebt und Dateien via FTP transportieren könnt. (Schiebt bitte KEINE Dateien hoch – wir fahren im nächsten Schritt mit der Konsolen-Installation fort.)

Owncloud herunterladen, entpacken und installieren

Mit folgenden Befehlen, ladet ihr das Konfigurationsscript der Owncloud in das Webverzeichnis Eures Webservers:

cd /var/www
wget https://download.owncloud.com/download/community/setup-owncloud.php

Nun müssen wir das WWW-Verzeichnis für uns beschreibbar machen:

chmod 777 /var/www

Keine Sorge, 777 heißt, das jeder Benutzer alles in diesem Verzeichnis machen darf - dies heben wir nach der Installation wieder auf. Ruft nun das Konfigurationsskript im Browser auf, indem Ihr hinter die IP-Adresse des raspberrys /setup-owncloud.php einfügt und bestätigt.

Owncloud Abhängigkeitsübersicht

OwnCloud Abhängigkeitscheck - Owncloud Abhängigkeitsübersicht

Wenn alles richtig konfiguriert wurde, sollte das Bild wie oben erscheinen. Gebt ihr anstelle von owncloud einen anderen Namen ein, wird dies als Verzeichnis gewählt. Gebt ihr einen einfachen . ein, wird OwnCloud direkt im Webverzeichnis installiert. Was ist nun der Unterschied? Wollt Ihr mehrere Anwendungen auf dem Webserver laufen lassen, z.B. noch eine Internetseite, dann ist es sinnvoll für jedes Projekt einen Ordner zu erstellen. Wollt Ihr ausschließlich OwnCloud auf dem Raspberry Pi laufen lassen, legt es mit dem . auf die oberste Ebene ab. Ich habe mich dafür entschieden, OwnCloud im Verzeichnis owncloud zu installieren. Klickt auf "Next" und legt im nächsten Fenster einen Benutzer an. Ich habe mich für User: pi und Password: raspberry entschieden.

Owncloud Administrativen Benutzer anlegen

OwnCloud Administrativen Benutzer anlegen - Owncloud Administrativen Benutzer anlegen

Zu guter Letzt, die Installation mit den Button "Installation abschließen" fertigstellen. Ihr solltet automatisch bei der OwnCloud angemeldet werden. Nun müssen wir das WWW-Verzeichnis wieder schützen und die Schreibrechte anpassen. Tippt nun in die Console folgenden Befehl:

chmod 775 /var/www



1 Benchmarks stammen von Tomshardware.de - die oben getätige Aussage bzgl. der Leistung bezieht sich nicht auf den Test, sondern auf Werte von NoName SD-Karten und Werte aus Benchmark Foren. http://www.tomshardware.de/sdxc-sdhc-uhs-i-Vergleichstest-Performance,testberichte-240844.html Up

2 Grundsystem ist Debian Wheezy mit 16MB Grafikspeicher bereits aktivierem SSH Server und deaktivierter Benutzeroberfläche. Up

3 Medium Voreinstellung im raspi-config Menü unter Overclocking Up

4 *.* bedeutet alle Dateitypen anzeigen. Up


Diesen Beitrag teilen
FaceBook  Twitter  Mixx.mn