Banana Pi: Nextcloud installieren

Aufgrund der vielen Anfragen bezüglich einer Anleitung zur Installation von Nextcloud auf dem Banana Pi, folgt hier die Schritt-für-Schritt Anleitung. Wer sich noch nicht sicher ist, ob und welche Cloud Anwendung er installieren möchte, dem empfehle ich meinen Artikel Nextcloud vs. Seafile.
Diese Anleitung bezieht auf Nextcloud Version 12 und kann mit neueren Versionen möglicherweise nicht funktionieren. Viel Spaß 😉

 

Schritt 1 – Abhängigkeiten installieren

Diese Anleitung ist für Bananian 16.04 mit Kernel 4.4 konzipiert. Bitte nocheinmal sicherstellen, dass der neuste Kernel installiert ist! Dies lässt sich überprüfen mit:

uname -r

Sollte die hier angezeigte Version nicht 4.4.XX-bananian entsprechen, bitte Kernel 4.4 nachinstallieren und neustarten:

apt-get install linux-image-4.4-bananian && reboot

Nun geht es aber wirklich an die Abhängigkeiten. Hinweis: Maria-DB wird nach einem root Passwort für die Datenbank fragen. Hier bitte ein sicheres Passwort wählen. Klick mich um ein sicheres Passwort zu generieren.

apt-get install nginx mariadb-server unzip
apt-get install php5 php5-mysql php5-curl php5-intl php5-mcrypt php5-apcu php5-imagick libapache2-mod-php5

 

Schritt 2 – Nginx konfigurieren

Zu Erst deaktivieren wir Apache:

/etc/init.d/apache2 stop
update-rc.d apache2 disable

Nun deaktivieren wir die Nginx default page …

rm /etc/nginx/sites-enabled/default

… und erstellen eine neue Datei für Nextcloud. In die Datei bitte diesen Inhalt einfügen.

nano /etc/nginx/sites-available/nextcloud

Abschließend muss die „Seite“ noch aktiviert werden:

ln -s /etc/nginx/sites-available/nextcloud /etc/nginx/sites-enabled/nextcloud

 

Schritt 3 – SSL Zertifikat erstellen

Diese Prozedur sollte euch bekannt sein. Kurz-um: Es wird ein Ordner erstellt und in diesem Wiederrum ein 4096-bit langer Schlüssel, aus dem wir ein selbst signiertes Zertifikat mit einer Gültigkeit von 10 Jahren erzeugen.

mkdir /etc/nginx/ssl
cd /etc/nginx/ssl
openssl genrsa -out nextcloud.key 4096
openssl req -new -sha512 -key nextcloud.key -out nextcloud.csr
openssl x509 -req -sha512 -days 3650 -in nextcloud.csr -signkey nextcloud.key -out nextcloud.crt

Um die Einstellungen anzuwenden, Nginx und PHP neu starten:

/etc/init.d/nginx restart && /etc/init.d/php5-fpm restart

 

Schritt 4 – Datenbank einrichten

Im letzten Schritt erstellen wir nun noch eine Datenbank für Nextcloud.
Dafür mittels:

mysql -uroot -p

einloggen. Ihr müsst nun das gewählte root Passwort aus Schritt 1 eingeben.
Jetzt noch die Datenbank erstellen und wieder mit einem sicheren Passwort absichern: (password durch euer Passwort ersetzten)

CREATE USER 'nextcloud'@'localhost' IDENTIFIED BY 'password';
CREATE DATABASE IF NOT EXISTS nextcloud;
GRANT ALL PRIVILEGES ON nextcloud.* TO 'nextcloud'@'localhost' IDENTIFIED BY 'password';

Abschließend die Konfiguration mit exit verlassen.

Es sollte jetzt möglich sein, das Webinterface von Nextcloud zu erreichen und die Konfiguration abschließen. (TODO: Screenshots)

 

Zusätzliche Schritte zur Optimierung

Theoretisch ist eure Nextcloud Installation bereit zum Einsatz. Wem das ganze jedoch zu langsam läuft, der wird hier bei den Optimierungen fündig.
Wichtig: Ich bitte euch, falls ihr die Optimierungen durchführen wollt, alle hier aufgelisteten Schritte auszuführen.

Hinweis für alle Anfänger: Dateien unter Linux lassen sich mit nano bearbeiten.
Z.B. nano /etc/testdatei mittels „strg + x“, „j“ und „enter“ lassen sich alle Änderungen speichern.

 

… in /etc/php5/fpm/php.ini folgendes auskommentieren („#“ entfernen)

opcache.enable=1
opcache.enable_cli=1
opcache.interned_strings_buffer=8
opcache.max_accelerated_files=10000
opcache.memory_consumption=128
opcache.save_comments=1
opcache.revalidate_freq=1
in /etc/php5/fpm/php.ini

… folgendes zu /var/www/nextcloud/config/config.php hinzufügen:

'memcache.local' => '\OC\Memcache\APCu',
'memcached_servers' => array(
array('localhost', 11211),
),

… in /etc/php5/fpm/pool.d/www.conf folgendes auskommentieren:

env[HOSTNAME] = $HOSTNAME
env[PATH] = /usr/local/bin:/usr/bin:/bin
env[TMP] = /tmp
env[TMPDIR] = /tmp
env[TEMP] = /tmp

… in /etc/nginx/nginx.conf den Eintrag „worker_processes“ auf „auto“ setzten.

Abschließend den Banana Pi neu starten:

shutdown -r now

 

Viel Spaß mit Nextcloud 😉

Schreibe einen Kommentar

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