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, sowie über einen Musikplayer, der ebenfalls lokal verwendet werden kann.
Softwarevoraussetzungen: Paketverwaltung | LAMP | phpMyAdmin (optional) | Apache Webserver (optional Informationen zum Verständnis) | siehe weiter unten
Schwierigkeitsgrad: Mittel
Ausgetestet mit folgenden Betriebssystemen: Ubuntu | Debian | teilweise auch andere Distributionen
Achtung! sudo:
In dieser Anleitung verdeutlicht der Befehl sudo, dass die folgende Codezeile mit Root-Rechten ausgeführt werden muss.
In normalen Ubuntu Installationen (Root-/VServer siehe Debian) kann dies durch den Befehl sudo erreicht werden.
Bei Debian wird bei der Installation ein Passwort für den Root-Benutzer festgelegt, so kann man sich entweder direkt als Root oder als „normaler“ Benutzer mit Eingabe von su als Root einloggen (Root-Passwort benötigt) → sudo bleibt dann überflüssig!
Diese Anleitung richtet sich immer nach der jeweils aktuellen Version von ownCloud (in diesem Fall 3.0.0).Wenn du eine Anleitung für die veraltete ownCloud Version 1.2 suchst, wirst du im Archiv dieser Anleitung fündig:
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
Laut der offiziellen Anleitung werden folgende PHP-Module benötigt:
- php5-json
- php-xml
- mbstring
In den Paketquellen werden vor diese Module jew. ein php5- oder php- gehängt. Die Pakete (und einige weitere) lassen sich nun so installieren:
user@server:~$ sudo apt-get install php5-json php-pear php-xml-parser
Sollte eines dieser Pakete in den Paketquellen nicht vorhanden sein, so kann dies getrost vernachlässigt werden.
Optionale Pakete
Für ein besseres Scannen der Musikdateien, kann das Paket mp3info installiert werden:
user@server:~$ sudo apt-get install mp3info
Für das OpenID Plugin werden die Pakete curl, libcurl3, libcurl3-dev, und php5-curl benötigt:
user@server:~$ sudo apt-get install curl libcurl3 libcurl3-dev php5-curl
Um mehrere Dateien downloaden zu können (als Archiv) muss zip installiert sein:
user@server:~$ sudo apt-get install zip
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. Anschließend sollte Apache neu gestartet werden:
user@server:~$ sudo /etc/init.d/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 die aktuelle experimental Version von ownCloud herunter und verschiebst den Inhalt in das Webroot:
user@server:~$ sudo apt-get install git-core #Installation von git user@server:~$ cd /tmp user@server:/tmp$ git clone git://gitorious.org/owncloud/owncloud.git #Mittels git die neuste Version "besorgen" user@server:/tmp$ sudo mv owncloud /var/www #Das "besorgte" Verzeichnis ins Webroot verschieben user@server:/tmp$ sudo chown -R www-data:www-data /var/www/owncloud #Anpassen der Rechte im Webroot
Wenn du statt dessen Version 3.0.0 (im Moment empfohlen) verwenden willst, musst du so vorgehen:
user@server:~$ cd /tmp user@server:/tmp$ wget http://c702355.r55.cf3.rackcdn.com/releases/owncloud-3.0.0.tar.bz2 #Version 3.0.0 downloaden user@server:/tmp$ tar xf owncloud-3.0.0.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 die aktuelle stable Version (zur Zeit 3.0.0) verwenden willst, musst du so vorgehen:
user@server:~$ cd /tmp user@server:/tmp$ wget wget http://owncloud.org/go/owncloud-download #Die aktuelle stable downloaden user@server:/tmp$ tar xf owncloud-download #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 statt dessen Version 2.0.1 verwenden willst, musst du so vorgehen:
user@server:~$ cd /tmp user@server:/tmp$ wget http://owncloud.org/releases/owncloud-2.0.1.tar.bz2 #Version 2.0.1 downloaden user@server:/tmp$ tar xf owncloud-2.0.1.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
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. 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 Funktion „AllowOverride“ nur in einem Ordner erlauben willst dann lege ein „Alias“ in default an.
Alias /owncloud "/var/www/owncloud/"
<Directory "/var/www/owncloud/">
Options +Indexes
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 /etc/init.d/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 Erweitert 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
Rechtewählen - Unten auf
Neuen Benutzer hinzufügenklicken - Das Formular wie folgt ausfüllen:
- Anmeldeinformationen
- Benutzername:
owncloud - Host: leer lassen
- Passwort: bei
Passwort generieren:aufGenerierenklicken und generiertes Passwort notieren
- Datenbank für Benutzer
- Haken bei
Erstelle eine Datenbank mit gleichem Namen und gewähre alle Rechte
- Auf
OKklicken
Einstellungen für MySQL
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 3 ist die maximale Uploadgröße bei genutzter .htaccess bereits auf 512MB angehoben, wer diese - aus welchem Grund auch immer - anheben oder senken möchte, muss die .htaccess bearbeiten und die Werte für php_value upload_max_filesize und php_value post_max_size verändern. 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 404 /owncloud/core/templates/404.php <IfModule mod_php5.c> php_value upload_max_filesize 512M #diesen php_value post_max_size 512M #und diesen Wert anheben/senken SetEnv htaccessWorking true </IfModule> Options -Indexes
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/files/webdav.php #ohne SSL (Vorgabe) davs://server.tld/owncloud/files/webdav.php #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/files/webdav.php - 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:
#Mit ownCloud im Webroot: http://server.tld/owncloud/apps/calendar/caldav.php #ohne SSL (Vorgabe) https://server.tld/owncloud/apps/calendar/caldav.php #mit SSL http://server.tld/apps/calendar/caldav.php/principals/username/ #Spezialfall iCal
Adressbuch via CardDAV:
#Mit ownCloud im Webroot: http://server.tld/owncloud/apps/contacts/carddav.php #ohne SSL (Vorgabe) https://server.tld/owncloud/apps/contacts/carddav.php #mit SSL
Musik via Ampache-URL:
#Mit 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 2012/01/14 17:42