Installation d’ownCloud sous Debian

I. Présentation d'OwnCloud

OwnCloud est une application OpenSource de stockage en ligne et de gestion de fichiers, on l’apparente généralement au très connu Dropbox car ownCloud permet de stocker et de synchroniser des fichiers entre un ou plusieurs postes/serveurs et le serveur OwnCloud, remplissant ainsi le rôle de serveur de sauvegarde pour mettre en sécurité les fichiers et de serveur synchronisation. Pour mettre en place ce service vous devez disposer d’un serveur web utilisant PHP et MySQL ou SQLite. Voyons cela ensemble

Parmi les fonctionnalités, on y trouve évidemment la possibilité de partager des fichiers, mais également de lire de la musique directement en ligne grâce au lecteur intégré, un calendrier, une gestion de contacts, la visualisation et l’édition de documents en ligne, la visualisation et le classement de photos dans des galeries, etc. De plus, de nombreux plug-ins sont disponibles afin de greffer de nouvelles fonctionnalités à ownCloud. Vous trouverez plus d'information sur les nouveautés apportées par OwnCloud 8 dans notre article sur les nouveautés d'OwnCloud 8

Dans ce tutoriel, nous allons voir ensemble comment installer OwnCloud sur une machine Debian, avec Apache pour le serveur web couplé à PHP et SQLite.

II. Préparation du serveur web

Avant d’installer l’application ownCloud, le serveur web doit être préparé si vous ne l’avez pas déjà fait. Pour se faire, nous allons installer le serveur web Apache ainsi que PHP et différentes librairies dont OwnCloud a besoin, nous allons saisir les commandes suivantes :

apt-get update
apt-get install apache2 php5 php5-common php5-gd
apt-get install php5-sqlite curl libcurl3 libcurl3-dev php5-curl

Pour information, on installe apache2, php5 et SQLite ainsi que plusieurs modules PHP. Toutefois, pour information, MySQL s'installe automatiquement avec ownCloud lors de l'installation via apt-get.

III. Installation d’ownCloud

Maintenant, continuons avec l’installation d’ownCloud et la fin de la configuration de notre serveur Linux. Voici les commandes que vous devez saisir :

echo 'deb http://download.opensuse.org/repositories/isv:/ownCloud:/community/Debian_7.0/ /' >> /etc/apt/sources.list.d/owncloud.list 
apt-get update
apt-get install owncloud

Ici, nous venons d'insérer une nouvelle ligne vers le dépôt contenant OwnCloud adans notre fichier sources.list puis nous avons mis à jour nos dépôts et installé OwnCloud. Lors de l'installation d'OwnCloud, le service de base de données MySQL s'installe également, il va alors falloir indiquer deux fois  un mot de passe pour l'utilisateur "root" de MySQL :

installation-owncloud-debian-101

Note : Pour information, les paquets PHP5 permettant à PHP de communiquer avec MySQL s'installent également automatiquement lors de l'installation d'OwnCloud. Cela nous facilite donc la tâche 🙂

Nous allons ensuite définir le groupe “www-data” contenant l’utilisateur du même nom utilisé par Apache en tant que groupe propriétaire sur les répertoires utiles au fonctionnement d’ownCloud, nous saisirons pour cela les commandes suivantes :

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

Ensuite, nous allons passer à la modification des permissions sur ces mêmes répertoires, l'option "-R" permet d'avoir une récursivité, c'est-à-dire que les changements de droits vont s'appliquer à tous les sous-répertoires également :

chmod 770 -R owncloud/

Pour qu'OwnCloud fonctionne correctement dans Apache, il faut activer les modules rewrite et headers d’Apache. Rewrite permet la réécriture d’URL, et, headers permet de gérer les en-têtes des requêtes et réponses HTTP :

a2enmod rewrite
a2enmod headers

Pour des questions de sécurité, il faut empêcher l’accès au répertoire « data » d’ownCloud. Pour cela, un fichier .htaccess est déjà présent et préconfiguré dans OwnCloud. Il contient une directive permettant de refuser l’accès à tout le monde et une seconde permettant d’empêcher le listing de tout le contenu du répertoire :

deny from all
IndexIgnore *

Note : « data » est le répertoire des données d’ownCloud

Afin que le fichier .htaccess soit pris en compte, la directive AllowOverride de votre serveur web doit être définie sur « All » et non sur « None » sinon les fichiers .htaccess sont ignorés. Modifiez le fichier « default » situé dans « /etc/apache2/sites-enabled » afin d’obtenir ceci :

<Directory>
   Options -Indexes FollowSymLinks MultiViews
   AllowOverride ALL
   Order allow,deny
   allow from all
</Directory>

Puis, pour finir, nous pourrons redémarrer le serveur Apache :

service apache2 restart

L’accès depuis le navigateur sur les données du dossier data devrait être interdit (pour vérifier, aller sur http://IP_du_serveur/owncloud/data, à la fin de l’installation).

IV. Finalisation de la mise en place

Pour finir, accédez à ownCloud depuis l’interface web pour finir l’installation et créer l’utilisateur « admin ». Puis, allez sur le navigateur web et saisissez l’URL « http://IP_du_serveur/owncloud », voici ce que vous pourrez voir :

installation-owncloud-debian-102

Comme vous pouvez le voir, OwnCloud nous indique que le système de base de données SQLLite sera suffisant pour les installations standards. Si vous ne pensez pas avoir besoin d'un très grand volume pour votre OwnCloud, saisissez simplement l'identifiant et le mot de passe de votre utilisateur administrateur puis cliquez sur "Terminer l'installation".

En revanche si vous savez que votre OwnCloud sera amené à gérer une certaine charge (ce qui sera le cas si vous être dans une entreprise par exemple), cliquez sur "Stockage & base de données" pour accéder à la possibilité d'utiliser d'autres systèmes de base de données. On sélectionnera alors "MySQL/MariaDB".

Si vous utilisez MySQL, il faudra se rendre en ligne de commande sur votre interface MySQL pour y saisir les lignes de commande qui permettront de créer une base de données et un utilisateur dédié à OwnCloud.  On crée l'utilisateur et la base de données :

CREATE USER "owncloud"@"localhost" IDENTIFIED BY "password";
CREATE DATABASE owncloud;

Note : Pensez à remplacer "password" par un mot de passe fort.

On donne tous les droits à l'utilisateur sur la base de données :

GRANT ALL PRIVILEGES ON owncloud.* TO "owncloud"@"localhost";
FLUSH PRIVILEGES ;

Il faudra ensuite renseigner les champs correspondants (user, password, nom de la base de données ..) :

installation-owncloud-debian-103

N'oubliez pas de saisir les identifiants de votre administrateur principal puis cliquer sur "Terminer l'installation".

OwnCloud est fin prêt, tout est fonctionnel. Vous pouvez vous connecter avec l’utilisateur « admin » en allant sur l'URL " http://IP_du_serveur/owncloud" :

installation-owncloud-debian-10Il ne reste plus qu'à vous amuser avec OwnCloud ! Pour rappel, nous avons une catégorie dédiée à OwnCloud qui vous permettra d'aller plus loin dans sa configuration : tutoriels OwnCloud

 

Partagez cet article Partager sur Twitter Partager sur Facebook Partager sur Linkedin Partager sur Google+ Envoyer par mail

Florian BURNEL

Ingénieur système et réseau, cofondateur d'IT-Connect et Microsoft MVP "Cloud and Datacenter Management". Je souhaite partager mon expérience et mes découvertes au travers de mes articles. Généraliste avec une attirance particulière pour les solutions Microsoft et le scripting. Bonne lecture.

Nombre de posts de cet auteur : 5499.Voir tous les posts

26 thoughts on “Installation d’ownCloud sous Debian

  • Bonjour et merci Florian pour ce partage,

    Utilisant Owncloud en SSL avec multi vhost et LDAP, je rencontre depuis un moment un problème majeur et je voudrais connaitre ton point de vue.

    En effet, il semble que la partie Webdav de Owncloud ne prend pas en charge la fonction Lock file. Ce qui cause des gros problèmes tant pour la syncro avec le client mais aussi avec d’autres logiciel Webdav classique (mapping de ficher sans cache par exemple).

    Cela ce traduit pas la corruption de donnée, disparition de donnée ou encore par des modifications qui disparait par magie …

    Bref, j’ai cru comprendre que cette fonction est bien pris en charge via Webdav module de Apache2 mais pas dans le code de Owncloud. Une idée ?

    Merci pour ta réponse,
    Bonne journée,
    OneKid

    Répondre
    • Bonjour,

      Là comme ça je ne serais pas trop te dire… Je n’ai jamais traité ce cas de figure. As-tu des choses dans les logs de ton serveur ? Quel est l’objectif de la fonction Lock File ?

      Je t’invite fortement à créer un sujet dans notre forum pour que plus de personnes soient au courant de ton problème, et, que l’on puisse t’aider. De plus, nous souhaitons traiter les problèmes dans le forum directement.

      Merci.
      Bonne journée à toi aussi
      Florian

      Répondre
  • bonjour a tous et merci pour ce jolie tuto moi jai eu le droit a ca comme probleme

    Erreur

    Error while trying to create admin user: SQLSTATE[HY000] [14] unable to open database file

    je pense que tt simplement vu que je n ai pas trouver le fichier default a modifier dans /etc/apache2/sites-enabled pouvez vous maider svp

    Répondre
  • Hello,

    petit update pour Debian 7 au niveau du owncloud.list

    echo 'deb http://download.opensuse.org/repositories/isv:ownCloud:community/Debian_7.0/ /' >> /etc/apt/sources.list.d/owncloud.list
    

    Ensuite ajouter la clé :

    wget -qO - http://download.opensuse.org/repositories/isv:ownCloud:community/Debian_7.0/Release.key | apt-key add -
    

    Et hop!

    Répondre
  • Bonjour,

    Très bon tutoriel, merci pour le partage !!
    Toutefois, ayant suivant le tutoriel de A à Z, je me retrouve à ne pas pouvoir accéder à Owncloud lords de la dernière étape… Il me met clairement accès refusé. Je pense que c’est une histoire de droit mais je en vois pas laquelle ?
    Un peu d’aide serait la bienvenue,
    Merci par avance.

    Répondre
    • Bonjour,

      Avez-vous bien fait toutes les commandes concernant les droits détaillées dans le tuto ? Vérifiez que les droits que vous avez correspondent à ceux que l’on cherche à obtenir en saisissant les différentes commandes.

      Répondre
  • Salut,

    Bon un pti peu galere car j’avais plus touche de console depuis oula quelques temps 😀 mais bien

    Juste une question je voudrais déplacer le répertoire de stockage vers une autre partie de ma débian en fait je voudrais mettre owncloud en tandem avec mon samba

    Une réinstall toute bête ou tu as une astuce, je regarde aussi les fichiers mais si tu as l’astuce je veux bien prendre

    merci

    Répondre
  • Re
    Bon j’ai trouve si cela te semble utile je pourrais te faire un pti tuto format PDF ou un post à la suite
    Bye

    Répondre
  • Merci pour ce tuto, c’est la deuxième fois que je l’utilise mais cette fois sans avoir au préalable installé le serveur LAMP.
    Résultat: rapide, facile, nickel.

    Il serait tout de même pas mal de mettre à jour l’article, particulièrement pour le passage à la version 7 de debian.

    Un grand merci.

    Répondre
  • Merci Florian, tuto très efficace ! Et quel bonheur de savoir ses données hébergées par son serveur !

    Répondre
  • Bonjour,
    Merci pour ce tuto,

    Je suis sur Ubuntu 14.10 et j’ai installé owncloud de la manière suivante sur xterminal

    sudo sh -c « echo ‘deb download.opensuse.org/repositories/isv:/…unity/xUbuntu_14.10/ /’ >> /etc/apt/sources.list.d/owncloud.list »
    sudo apt-get update
    sudo apt-get install owncloud

    Je me rends compte que que toutes les données vont se stocker sur la partition principale alors que j’ai une seconde partition de 140 Go qui onviendrait pour le stockage

    je crée donc (après avoir utilisé une première fois owncloud) un autre endroit pour le stockage, j’opère de la manière suivante:

    Sudo service apache2 stop

    puis j’ouvre l’éditeur pour modifier le chemin des données qui va se situer sur la nouvelle partition: (ma nouvelle partition porte l’étiquette datas et est accessible dans « /media/gege »

    sudo nano /var/www/owncloud/config/config.php
    et je change la ligne par
    ‘datadirectory’ => ‘/media/gege/datas/owncloud_data’,

    ensuite je tape:
    sudo mv /var/www/owncloud/data /media/gege/datas/owncloud_data

    Le dossier Data est copié sur le nouvel emplacement

    Je redémarre le service apache:
    sudo service apache2 start

    Je lance le navigateur sur « localhost/owncloud »

    et j’ai le message suivant:
    Le répertoire (/media/gege/datas/owncloud_data) est invalide

    Veuillez vérifier que le répertoire de données contient un fichier « .ocdata » à sa racine.

    Je vérifie et le fichier .ocdata est bien présent dans le repertoire /media/gege/datas/owncloud_data

    Qu’elle est la solution ?

    merci pour votre aide

    Répondre
  • Bonsoir je voudrais savoir pourquoi quand je modifie bien tout se qu’il faut pour définir la taille d’upload cela ne fonctionne pas, il reste bloqué à 512M.
    Je cherche de partout sur internet et je ne trouve pas.

    Répondre
    • Bonjour Neijul974,

      Je t’invite à t’inscrire sur notre site puis à créer un nouveau sujet dans le forum, cela permettra à ce que l’on te vienne en aide 🙂

      Merci
      Florian

      Répondre
  • Salut bon tuto,
    j’ai mis un ddns sauf qu’il ne pointe pas vers owncloud mais sur /var/www/index.html que faire pour avoir accès directement a owncloud svp?

    Répondre
    • Salut nico,

      Ajoute /owncloud/ à la fin de ton URL DynDNS pour indiquer que tu souhaites accéder à ce dossier (dans le cas où le dossier d’ownCloud s’appelle bien comme ceci). Si ça ne fonctionne toujours pas, tu peux créer un nouveau sujet dans le forum pour que l’on te vienne en aide ! 🙂

      Merci
      Florian

      Répondre
  • Merci pour ce tutoriel.

    Quelqu’un ici saurait-il me dire si possibilité il y a de changer la fréquence de synchronisation lorsque owncloud détecte un nouveau dossier/fichier ?

    Je m’explique : actuellement owncloud synchronise de suite lorsqu’il détecte un nouveau fichier/dossier. Je souhaiterais allonger ce temps de détection de nouveau fichier/dossiers à 3heures par exemple. Possible ?

    Merci.

    Répondre
  • Bonjour ,
    Est ce que quelqu’un aurai une solution pour supprimer des utilisateurs owncloud . Je m’explique j’appuie sur l’icone corbeille cela supprime l’utilisateur mais quand je rafraichis la page il revient merci d’avance.

    Répondre
  • Merci Florian pour ce tuto remarquablement clair !

    Répondre
  • Bonjour, je suis débutant en BTS SIO et je viens de me lancer dans les solutions libre pour de plus en plus de connaissances et d’expériences.
    Aimant les nouvelles technologies, je suis tombé sur cette solution qui me semble vraiment hyper intéressante. j’ai ne pu m’empêcher de constater de remarquer dans tous les tutos qu’on ne peux prendre qu’un dossier dans le répertoire (var/www/…) dans le stockage interne de l’ordinateur pour espace d’échange du stockage des données cloud. D’où ce qui m’amène à la question; qu’en est-il et comment faire s’il l’on veut prendre un disque dur externe avec son espace de stockage dans sa globalité. C’est à dire que le répertoire « data » contenant les données se trouve dans un disque dur externe et non dans le stockage de mémoire du disque interne du pc(serveur).

    Merci par avance pour la réflexion.

    Répondre
    • Salut Deucalion,
      Pour que tes données soit sur le disque externe, je pense qu’il faudrait que tu copie/déplace le dossier data sur ce disque et que ensuite tu fasse un lien symbolique du dossier data du disque dur externe vers le dossier owncloud du serveur web.
      Normalement ça devrait passer.

      Répondre
  • bonjour j’ai du mal a installer le owncloud sous debian 8.0

    Répondre

Répondre à xhark Annuler la réponse

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.