Inhaltsverzeichnis
ownCloud
ownCloud ermöglicht es dir über WebDAV sowie über ein Webinterface Dateien in deiner persönlichen Cloud zu speichern. Diese sind, wenn der Server von überall erreichbar ist, auch von überall zugänglich. Das Verzeichnis kann über WebDAV lokal eingebunden werden und somit zur Synchronisation von Dateien dienen. Außerdem verfügt ownCloud über die Möglichkeiten, Kalender und Adressbücher zu synchronisieren.
Softwarevoraussetzungen: Paketverwaltung | LAMP | phpMyAdmin (optional) | Apache Webserver (optional Informationen zum Verständnis) | siehe weiter unten
Schwierigkeitsgrad: Mittel
Ausgetestet mit folgenden Betriebssystemen: Ubuntu (Precise hat für ownCloud 8 eine zu alte PHP-Version!) | Debian | teilweise auch andere Distributionen
Archiv: Diese Anleitung richtet sich an ältere Versionen von ownCloud (5.0.19, 6.0.8, 7.0.12 bzw. 8.2.2). Dabei wird auf die Installationsweise Manual
, d.h. Download des Quelltextes und Verschieben in das Webroot eingegangen. Alternativ existieren auch Pakete für zahlreiche Distributionen, Appliances und ein Web-Installer.
Voraussetzungen & Hinweise
- In meinem Test lies sich ownCloud nicht im PHP-Safemode mit aktivierter Sandbox installieren. In einer Standardinstallation dürften diese Einstellungen zum Glück nicht vorhanden sein. Falls du sie trotzdem aktiviert hast, deaktiviere sie für die Dauer der Installation und überprüfe danach, ob ownCloud auch mit diesen Einstellungen funktioniert.
- Eine extra HTTP-Authentifizierung durch Apache ist überflüssig. Wenn die Benutzername von ownCloud nicht mit denen der HTTP-Authentifizierung übereinstimmt, ist ein lokales Einbinden des WebDAVs nicht möglich!
Installation der benötigten Pakete
ownCloud 7 & 8
Zusätzlich zu einem LAMP, der in dieser Anleitung bereits vorausgesetzt wird, werden noch weitere PHP-Module als Abhängigkeiten benötigt. Die in Lucid (Ubuntu 10.04 LTS) enthaltene PHP Version reicht nur noch für ownCloud 5, da ownCloud 7 ein moderneres PHP (>= 5.3.8, minimum recommended 5.4
) benötigt! ownCloud 8 benötigt eine noch aktuellere PHP Version (>= 5.4
), wofür auch die in Precise (Ubuntu 12.04 LTS) enthaltene Version zu alt ist. Für ownCloud 8 müssen Ubuntuuser also zu Trusty (14.04 LTS) greifen.
Die weiteren Abhängigkeiten können hier eingesehen werden und sind hier nochmal mit dem jew. Paket zusammengefasst. Die Pakete können dann z.B. mit apt
(sudo apt-get install PAKET
) installiert werden.
Die folgenden Abhängigkeiten müssen erfüllt sein bzw. sind empfohlen:
- PHP module GD:
php5-gd
- PHP module JSON:
php5-json
bzw.php-services-json
- PHP module libxml:
php-xml-parser
- PHP module curl (highly recommended, some functionality, e.g. http user authentication, depends on this):
php5-curl
- PHP module intl (increases language translation performance):
php5-intl
- PHP module mcrypt (increases file encryption performance):
php5-mcrypt
user@server:~$ sudo apt-get install php5-gd php5-json php5-curl php5-intl php5-mcrypt php-xml-parser
Diese Pakete werden für einige Apps und Zusatzfeatures benötigt:
- PHP module ldap (for ldap integration):
php5-ldap
- smbclient (for SMB storage):
smbclient
- PHP module ftp (for FTP storage):
php-net-ftp
- PHP module gmp (for SFTP storage):
php5-gmp
- PHP module imagick
php5-imagick
- avconv or ffmpeg:
libavtools
oderffmpeg
- OpenOffice or libreOffice:
libreoffice-base
(?)
user@server:~$ sudo apt-get install php5-ldap smbclient php-net-ftp php5-gmp php5-imagick ffmpeg
Ggf. kann noch einer der folgenden PHP-Beschleuniger verwendet werden (APC empfohlen):
- PHP module apc:
php-apc
- PHP module apcu
- PHP module xcache:
php5-xcache
user@server:~$ sudo apt-get install php-apc
ownCloud 6
Auch hier wird neben einem LAMP (bereits vorausgesetzt) noch weitere PHP-Module als Abhängigkeiten benötigt. Bitte stelle sicher, dass dein Webserver die hier einsehbaren Abhängikeiten erfüllt und rüste Fehlende ggf. nach. Für ownCloud 6 reicht die in Lucid (Ubuntu 10.04 LTS) enthaltene PHP Version ebenfalls nicht mehr aus!
ownCloud 5 und älter
Laut der offiziellen Anleitung müssen folgende Abhängigkeiten erfüllt sein:
- php5 (>= 5.3)
- php5-gd
- php-xml-parser
Da in dieser Anleitung ein LAMP bereits vorausgesetzt wird, müssen nur noch die zusätzlichen PHP-Module installiert werden. Dies geschieht wie folgt:
user@server:~$ sudo apt-get install php5-gd php-xml-parser
Hinweis: In älteren Versionen wurden noch weitere Module vorausgesetzt: php5-json php-pear
Optionale Pakete
Für einige Apps werden die Pakete php5-intl
, curl
, libcurl3
und php5-curl
benötigt (in älteren ownCloud-Versionen zusätzlich libcurl3-dev
):
user@server:~$ sudo apt-get install php5-intl curl libcurl3 php5-curl
Sollen später SMB Netzwerkfreigeben eingebunden werden, wird das Paket smbclient
benötigt:
user@server:~$ sudo apt-get install smbclient
In älteren ownCloud-Versionen musste man, um mehrere Dateien downloaden zu können (als Archiv) zusätzlich zip
installieren:
user@server:~$ sudo apt-get install zip
Für ein besseres Scannen der Musikdateien (ebenfalls nur für ältere ownCloud-Versionen), kann das Paket mp3info
installiert werden:
user@server:~$ sudo apt-get install mp3info
SQLite
Soll nachher statt MySQL
oder PostgreSQL
SQLite
verwendet werden, müssen die Pakete sqlite
und php5-sqlite
installiert sein:
user@server:~$ sudo apt-get install sqlite php5-sqlite
Dies erspart später etwas Konfigurationsaufwand, bringt aber eine schlechtere Performance mit sich. Anschließend sollte Apache neu gestartet werden:
user@server:~$ sudo service apache2 restart
Installation der Webanwendung
Auch hier gehe ich davon aus, dass du den Standard-V-Host von Apache verwendest. Demnach läge das Webroot direkt in /var/www
. Sollte dies bei dir nicht der Fall sein, musst du in den folgenden Befehlen /var/www
auf dein Webroot anpassen.
Download der Webanwendung
In diesem Schritt lädst du dir Version 8.2.2 herunter und verschiebst den Inhalt in das Webroot:
user@server:~$ cd /tmp user@server:/tmp$ wget https://download.owncloud.org/community/owncloud-8.2.2.tar.bz2 # Version 8.2.2 downloaden user@server:/tmp$ tar xvf owncloud-8.2.2.tar.bz2 # Das Paket entpacken. Evtl muss noch "bzip2" installiert werden user@server:/tmp$ sudo mv owncloud /var/www # Das heruntergeladene Verzeichnis ins Webroot verschieben user@server:/tmp$ sudo chown -R www-data:www-data /var/www/owncloud # Anpassen der Rechte im Webroot
Es steht auch noch Version 7.0.12 zur Wahl:
user@server:~$ cd /tmp user@server:/tmp$ wget https://download.owncloud.org/community/owncloud-7.0.12.tar.bz2 # Version 7.0.12 downloaden user@server:/tmp$ tar xvf owncloud-7.0.12.tar.bz2 # Das Paket entpacken. Evtl muss noch "bzip2" installiert werden user@server:/tmp$ sudo mv owncloud /var/www # Das heruntergeladene Verzeichnis ins Webroot verschieben user@server:/tmp$ sudo chown -R www-data:www-data /var/www/owncloud # Anpassen der Rechte im Webroot
Alternativ kannst du auch die Version 6.0.8 verwenden:
user@server:~$ cd /tmp user@server:/tmp$ wget https://download.owncloud.org/community/owncloud-6.0.8.tar.bz2 # Version 6.0.8 downloaden user@server:/tmp$ tar xvf owncloud-6.0.8.tar.bz2 # Das Paket entpacken. Evtl muss noch "bzip2" installiert werden user@server:/tmp$ sudo mv owncloud /var/www # Das heruntergeladene Verzeichnis ins Webroot verschieben user@server:/tmp$ sudo chown -R www-data:www-data /var/www/owncloud # Anpassen der Rechte im Webroot
Die etwas ältere Version 5.0.19 steht ebenfalls noch zur Auswahl:
user@server:~$ cd /tmp user@server:/tmp$ wget https://download.owncloud.org/community/owncloud-5.0.19.tar.bz2 # Version 5.0.19 downloaden user@server:/tmp$ tar xvf owncloud-5.0.19.tar.bz2 # Das Paket entpacken. Evtl muss noch "bzip2" installiert werden user@server:/tmp$ sudo mv owncloud /var/www # Das heruntergeladene Verzeichnis ins Webroot verschieben user@server:/tmp$ sudo chown -R www-data:www-data /var/www/owncloud # Anpassen der Rechte im Webroot
Wenn du stattdessen die Entwicklerversion von ownCloud (siehe auch: ownCloud Seite) verwenden willst, musst du wie folgt vorgehen:
user@server:~$ sudo apt-get install git-core # Installation von git user@server:~$ cd /var/www user@server:/var/www$ sudo git clone https://github.com/owncloud/core ./owncloud # Mittels git die neuste Version "besorgen" user@server:/var/www$ sudo git clone https://github.com/owncloud/apps user@server:/var/www$ sudo git clone https://github.com/owncloud/3rdparty user@server:/var/www$ sudo chown -R www-data:www-data owncloud apps 3rdparty # Anpassen der Rechte im Webroot
Konfiguration von Apache
Damit die .htaccess
von ownCloud von Apache akzeptiert wird, muss die AllowOverride
Direktive des jeweiligen V-Hosts (mehr zu V-Hosts) auf All
gesetzt werden.
Hinweis: Wenn du statt Apache Version 2.2 Aapche 2.4 verwendest (siehe Ausgabe von apache2 -v
), ändert sich die Konfiguration leicht:
<Directory /var/www/> Options Indexes FollowSymLinks MultiViews AllowOverride All Require all granted </Directory>
bzw.
<Directory /var/www/owncloud/> Options Indexes FollowSymLinks MultiViews AllowOverride All Require all granted </Directory>
Normalerweise ist dies schon der Fall. Hier ein Beispiel:
<Directory /var/www/> Options Indexes FollowSymLinks MultiViews AllowOverride All Order allow,deny allow from all </Directory>
Wenn du die Direktive AllowOverride
nur in einem Ordner auf All
setzen willst, kannst du dies wie folgt tun:
<Directory /var/www/owncloud/> Options Indexes FollowSymLinks MultiViews AllowOverride All Order allow,deny allow from all </Directory>
Dieses Code-Beispiel ist natürlich nicht bindend, es ist nur wichtig, dass folgende Einstellung für das verwendete Verzeichnis gilt:
AllowOverride All
Die Konfigurationsdatei für den default
V-Host findet sich normalerweise in /etc/apache2/sites-available/default
und kann folglich so bearbeitet werden:
user@server:~$ sudo nano /etc/apache2/sites-available/default
Falls Mod Rewrite noch nicht aktiviert ist, muss dies nun erledigt werden:
user@server:~$ sudo a2enmod rewrite # Mod Rewrite aktivieren user@server:~$ sudo service apache2 restart # Apache neu starten
Ausführen des Assistenten
Besuchen des Webinterfaces
Hierzu besucht man die die Adresse des V-Hosts mit einem Webbrowser, an die man hinter einem /
den Pfad owncloud
anhängt:
http://Adresse_des_V-Hosts/owncloud # Syntax http://server.tld/owncloud # Beispiel https://server.tld/owncloud # Beispiel mit HTTPS http://192.168.5.10/owncloud # Beispiel mit IP
Sollte man statt dem Konfigurationsassistenten einen 500er („Internal Server Error“) bekommen, muss überprüft werden ob die AllowOverride
Direktive des V-Hosts auf All
gesetzt und Mod Rewrite wirklich aktiviert wurde.
Administrativer Benutzer
Im ersten Abschnitt Admin-Konto anlegen.
der Konfiguration, werden die Zugangsdaten für den Admin Account festgelegt. Diese können beliebig gewählt werden.
Datenbankeinstellungen
Mit einem Klick auf Fortgeschritten
können u.a. Datenbankeinstellungen vorgenommen werden. Die einfachste Möglichkeit ist die Verwendung von SQLite
. Alternativ kann auch MySQL
oder PostgreSQL
verwendet werden.
SQLite
Es muss sichergestellt werden, dass die Pakete sqlite
und php5-sqlite
installiert sind (siehe Installation der benötigten Pakete, SQLite. Sollte dies der Fall sein dürfte SQLite
automatisch von ownCloud ausgewählt worden sein. Die Verwendung von SQLite
ist wesentlich Aufwands-ärmer als die von MySQL
und sollte deshalb wenn möglich präferiert werden.
MySQL
Sollte aus irgendwelchen Gründen SQLite
auf dem System nicht vorhanden sein oder soll aus anderen GründenMySQL
bevorzugt werden, so kann selbstverständlich auch MySQL
verwendet werden.
Anlegen der MySQL-Datenbank
Diese muss hier von Hand oder über phpMyAdmin angelegt werden. Hier eine Schritt-für-Schritt Anleitung mit installiertem phpMyAdmin:
- Aufrufen von phpMyAdmin im Webbrowser (siehe phpMyAdmin)
- Einloggen als root
- Oben in der Toolbar
Rechte
wählen - Unten auf
Neuen Benutzer hinzufügen
klicken - Das Formular wie folgt ausfüllen:
- Anmeldeinformationen
- Benutzername:
owncloud
- Host: leer lassen (sollte der neu angelegten mySQL-User nachher nicht funktionieren, hier
localhost
eintragen) - Passwort: bei
Passwort generieren:
aufGenerieren
klicken und generiertes Passwort notieren
- Datenbank für Benutzer
- Haken bei
Erstelle eine Datenbank mit gleichem Namen und gewähre alle Rechte
- Auf
OK
klicken
Einstellungen für MySQL
Im ownCloud Installationsassistenten im Abschnitt Erweitert
→ Datenbank einrichten
müssen nach einem Klick auf MySQL
nun die Benutzerdaten für den vorher via phpMyAdmin angelegten Benutzer eingegeben werden:
- Datenbankbenutzer:
owncloud
- Datenbankpasswort: in phpMyAdmin generiertes Passwort
- Datenbankname:
owncloud
- Host:
localhost
Speichern & Erster Login
Mit einem Klick auf Installation abschließen
werden die Datenbanken angelegt und die Konfiguration gesichert. Wurden alle oberen Einstellungen richtig vorgenommen, erscheint anschließend die Weboberfläche von ownCloud
Konfiguration
Die Grundeinstellungen sind nach dem Login im Webinterface durch einen Klick auf Einstellungen
(Zahnrad unten links) möglich. Hier lohnt es sich die einzelnen Reiter nach interessanten Funktionen zu durchforsten.
Uploadgröße
In ownCloud ist die maximale Uploadgröße bei genutzter .htaccess
bereits auf 512MB angehoben, wer diese - aus welchem Grund auch immer - anheben oder senken möchte, kann dies zum einen über das Webinterface erledigen oder diese Einstellung manuell vornehmen, indem die .htaccess
bearbeitet wird und die Werte für php_value upload_max_filesize
und php_value post_max_size
verändert wrerden. Die .htaccess
befindet sich im ownCloud Ordner im Webroot. Mit nano
könnte man jene so öffnen:
user@server:~$ sudo nano /var/www/owncloud/.htaccess
Die von ownCloud generierte .htaccess
sieht nun etwa so aus:
ErrorDocument 403 /core/templates/403.php ErrorDocument 404 /core/templates/404.php <IfModule mod_php5.c> php_value upload_max_filesize 513M php_value post_max_size 513M php_value memory_limit 512M <IfModule env_module> (...)
Wie in den Kommentaren erklärt müssen nun die Werte für php_value upload_max_filesize
und php_value post_max_size
verändert werden - hier ein Ausschnitt mit 700MB:
(...) php_value upload_max_filesize 700M # hier php_value post_max_size 700M # und hier wurden die Werte verändert (...)
ownCloud nutzen
ownCloud kann wie ein normales WebDAV-Verzeichnis eingebunden werden. Der Pfad hierzu lautet:
# Mit ownCloud im Webroot: webdav://server.tld/owncloud/files/webdav.php # ohne SSL (Vorgabe) webdavs://server.tld/owncloud/files/webdav.php # mit SSL
Nautilus (Gnome & Unity)
Über die Adressleiste
Um diese Freigabe in Nautilus einzubinden muss web
weggelassen werden:
# Mit ownCloud im Webroot: dav://server.tld/owncloud/remote.php/webdav # ohne SSL (Vorgabe) davs://server.tld/owncloud/remote.php/webdav # mit SSL
Diese Adresse kann direkt in die Adressleiste von Nautilus, die über [STRG] + L
erreichbar ist, eingegeben werden und muss nur noch mit der [Eingabetaste]
bestätigt werden. Anschließend wird man nach einem Benutzernamen und dem dazugehörigen Passwort gefragt, dazu nimmt man die Logindaten für das ownCloud-Webinterface.
Über "Mit Server verbinden"
Den Assistenten für Serververbindungen findet man unter Datei
→ Mit Server verbinden
. Der Inhalt der Maske muss wie folgt ausgefüllt werden:
- Dienste-Typ: ohne SSL (Vorgabe) →
WebDAV (HTTP)
; mit SSL →Sicheres WebDAV (HTTPS)
- Port: kann leer gelassen werden
- Ordner: in unserem Beispiel →
/owncloud/remote.php/webdav
- Benutzername: der ownCloud Benutzer
- Lesezeichen: optional
Weitere Clients
Hierfür finden sich Anleitungen auf der offiziellen Seite von ownCloud:
Viele weiteren Betriebssysteme unterstützen WebDAV hierzu muss unter anderem die Dokumentation der jew. Distribution/ des jew. OSes herangezogen werden. Der Pfad zum WebDAV der ownCloud Installation kann wie bereits erwähnt dem Webinterface in der Fußzeile entnommen werden.
Kalender, Kontakte und Musik
Kalender via CalDAV (siehe auch in der offiziele Dokumentation):
# Mit ownCloud im Ordner owncloud im Webroot: http://server.tld/owncloud/remote.php/caldav # ohne SSL (Vorgabe) https://server.tld/owncloud/remote.php/caldav # mit SSL http://server.tld/owncloud/remote.php/caldav/principals/username/ # Spezialfall Apple iCal http://server.tld/owncloud/remote.php/caldav/calendars/USERNAME/CALENDARNAME # Spezialfall Mozilla Lightning
Adressbuch via CardDAV (siehe auch in der offiziele Dokumentation):
# Mit ownCloud im Ordner owncloud im Webroot: http://server.tld/owncloud/remote.php/carddav # ohne SSL (Vorgabe) https://server.tld/owncloud/remote.php/carddav # mit SSL
Musik via Ampache-URL (nicht ownCloud 6+, siehe auch in der offiziele Dokumentation):
# Mit ownCloud im Ordner owncloud im Webroot: http://server.tld/owncloud/apps/media/ # ohne SSL (Vorgabe) https://server.tld/owncloud/apps/media/ # mit SSL
Diese URLs kann man sich auch unter Einstellungen
→ Persönlich
anzeigen lassen.
— chrisge 2018/05/26 01:27