Outils pour utilisateurs

Outils du site


owncloud_raspberry_pi

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
Prochaine révisionLes deux révisions suivantes
owncloud_raspberry_pi [2013/05/10 20:25] – [Utilisation] tbruyereowncloud_raspberry_pi [2013/05/26 14:48] didiervillers
Ligne 1: Ligne 1:
-====== Installation de owncloud sur un raspberry pi ! ======+====== Installation de ownCloud sur un Raspberry Pi ! ======
  
-Nous allons voir comment installer owncloud sur le raspberry pi. On utlisera nginx au lieu de apache comme serveur web (([[http://www.hebergement-magento.net/2010/10/13/magento-apache-ou-nginx-part1 | apache vs nginx]])). Il est préféré ici car moins gourmand mais un peu plus difficile à optimiser que son homologue. +Nous allons voir comment installer [[http://owncloud.org/|ownCloud]] sur le Raspberry Pi. On utilisera Nginx au lieu de Apache comme serveur web (([[http://www.hebergement-magento.net/2010/10/13/magento-apache-ou-nginx-part1 | Apache vs Nginx]])). Il est préféré ici car moins gourmand mais un peu plus difficile à optimiser que son homologue. 
-Nous verrons aussi comment mettre owncloud en https.+Nous verrons aussi comment mettre ownCloud en https, la version sécurisée du protocole web http.
  
-===== Définition de owncloud =====+Ce sujet a fait l'objet d'un atelier (20 mai 2013) avec cette présentation :{{:presentation-owncloud-rpi.odp|}} 
 + 
 +===== Définition de ownCloud =====
  
 {{ :artwork:owncloud2-logo.png?nolink&400 |}} {{ :artwork:owncloud2-logo.png?nolink&400 |}}
Ligne 22: Ligne 24:
   * Galerie d'images, qui permet de visualiser ses photos et de les classer en albums.   * Galerie d'images, qui permet de visualiser ses photos et de les classer en albums.
   * ...   * ...
-        
-     
-     
-     
-     
-     
-     
  
 +OwnCloud se positionne en alternative aux solutions de Dropbox, Box.net Google Drive, Ubuntu One, en mettant en avant la flexibilité et la sécurité. 
 +<note important>La partie "cloud" de son nom vient du fait que OwnCloud offre une alternative libre aux solutions propriétaires présentes sur le marché. Lors d'une installation en auto-hébergement, il est nécessaire d'assurer soi-même la sauvegarde et si nécessaire l'archivage des données !</note>
  
 ===== Installation ===== ===== Installation =====
  
-1. On met à jour la base de packages de raspbian+==== 0. Installer Raspbian pour votre Raspberry ==== 
 +Vous trouverez la procédure d'installation de [[http://www.raspbian.org/|Raspbian]] à suivre résumée sur [[raspberry_pi#debian_sur_raspberry_pila_distribution_raspbian|cette page]] ! 
 + 
 +<note tip>Pour la suite de l'installation, il faut disposer des droits d'administration. Cela se fait soit en appliquant d'abord la commande "sudo su" pour passer en mode "super-utilisateur", soit en faisant précéder de "sudo" toutes les commandes décrites ci-après !. 
 +</note> 
 + 
 +==== 1. On met à jour la base de packages de Raspbian : ====
  
 <code> <code>
Ligne 40: Ligne 43:
 </code> </code>
  
-2. On installe les packages nécéssaires+==== 2. On installe les packages nécéssaires====
  
 <code> <code>
Ligne 48: Ligne 51:
 <note important>On choisit **sqlite** comme base de donnée. Si on a moins de 10 utilisateurs, c'est largement suffisant.</note> <note important>On choisit **sqlite** comme base de donnée. Si on a moins de 10 utilisateurs, c'est largement suffisant.</note>
  
-3. On installe php-apc (optimisation des performanceset php5-fpm (nécéssaire à nginx pour renvoyer le résultat de page PHP en HTML)+==== 3. On installe php-apc et php5-fpm ==== 
 +php-apc est nécessaire pour l'optimisation des performances et php5-fpm est nécéssaire à nginx pour renvoyer le résultat de page PHP en HTML
  
 <code> <code>
Ligne 55: Ligne 59:
 </code> </code>
  
-4. On vérifie que nginx est bien lancé par défaut au boot :+====4. Configuration du serveur web ==== 
 +On configure le système pour que le serveur web [[http://wiki.nginx.org/Main|Nginx]] soit lancé par défaut au boot. On commence par désactiver apache2 actif par défaut : 
 +<code>update-rc.d -f apache2 remove</code>
  
-Rem : sur une installation debian il faut ajouter le paquet nginx+(Rem : tester si "update-rc.d apache2 disable" ne suffit pas ??)
  
 +On ajoute le paquet nginx :
 +<code>apt-get install nginx</code>
 +
 +On active Nginx :
 +<code>update-rc.d nginx enable</code>
 +
 +On vérifie que apache2 est bien désactivé et Nginx activé :
 <code> <code>
 service --status-all service --status-all
Ligne 68: Ligne 81:
 </code> </code>
  
-Si ce n'est pas le cas, on l'ajoute : 
  
 +====5. Téléchargement ====
 +On télécharge [[http://owncloud.org/install/|ownCloud]] (tar or zip file) dans le répertoire **/var/www**. En ligne de commande, on peut y arriver comme suit :
 <code> <code>
-update-rc.d nginx enable+cd /var/www 
 +wget http://download.owncloud.org/community/owncloud-5.0.6.tar.bz2
 </code> </code>
 +<note warning>le numéro 5.0.6 correspond à la version disponible le 21/05/2013. Il est à actualiser en consultant le site [[https://owncloud.org/]] !</note>
  
-5On télécharge owncloud +====6Décompression==== 
- +On décompresse l'archive dans **/var/www**
-http://owncloud.org/ +
- +
-6. On décompresse l'archive dans **/var/www**+
  
 <code> <code>
Ligne 84: Ligne 97:
 </code> </code>
  
-7. On change le propriétaire et groupe du répertoire owncloud+====7. On change le propriétaire et groupe du répertoire ownCloud====
  
 <code> <code>
Ligne 90: Ligne 103:
 </code> </code>
  
-8. On crée le répertoire qui va recevoir les certificats pour activer owncloud en https+====8. On crée le répertoire qui va recevoir les certificats pour activer ownCloud en https====
  
 <code> <code>
Ligne 96: Ligne 109:
 </code> </code>
  
-9. On génère les certificats+====9. On génère les certificats====
  
 <code> <code>
Ligne 109: Ligne 122:
 <note important>Attention : Il faut utiliser un mot de passe robuste pour générer le certificat. Le certificat est valable 365 jours. Il faudra en générer un nouveau dans un an :-) </note> <note important>Attention : Il faut utiliser un mot de passe robuste pour générer le certificat. Le certificat est valable 365 jours. Il faudra en générer un nouveau dans un an :-) </note>
  
-10. On supprime les fichiers initules+====10. On supprime les fichiers inutiles====
  
 <code> <code>
Ligne 115: Ligne 128:
 </code> </code>
  
-11. On configure nginx pour charger owncloud. On crée le fichier **/etc/nginx/sites-available/owncloud** (([[https://github.com/owncloud/documentation/blob/master/admin_manual/installation/installation_others.rst | Configuration de nginx]]))+====11. On configure Nginx pour charger ownCloud==== 
 +On crée le fichier **/etc/nginx/sites-available/owncloud** (([[https://github.com/owncloud/documentation/blob/master/admin_manual/installation/installation_others.rst | Configuration de nginx]]))
  
 <code> <code>
Ligne 191: Ligne 205:
 </code> </code>
  
-12. On active le site+====12. On active le site====
  
 <code> <code>
Ligne 197: Ligne 211:
 </code> </code>
  
-13. On modifie php pour permettre l'envoie de fichiers de maximum 900M. On modifie **/etc/php5/fpm/php.ini** (([[http://www.php.net/manual/fr/ini.core.php | Description de php.ini]]))+====13. Paramètres d'envoi de fichiers==== 
 +On modifie php pour permettre l'envoi de fichiers de maximum 900M. On modifie **/etc/php5/fpm/php.ini** (([[http://www.php.net/manual/fr/ini.core.php|Description de php.ini]]))
  
 <code> <code>
Ligne 207: Ligne 222:
 **post_max_size** : Définit la taille maximale des données reçues par la méthode POST. Pour charger de gros fichiers, cette valeur doit être plus grande que la valeur de upload_max_filesize. **post_max_size** : Définit la taille maximale des données reçues par la méthode POST. Pour charger de gros fichiers, cette valeur doit être plus grande que la valeur de upload_max_filesize.
  
-14. On relance nginx et php5-fpm+====14. On relance Nginx et php5-fpm====
  
 <code> <code>
Ligne 213: Ligne 228:
 service php5-fpm restart service php5-fpm restart
 </code> </code>
 +
 ===== Configuration ===== ===== Configuration =====
  
-1. On se connecte sur owncloud. Logiquement nginx va rediriger la requête du port 80 vers le port 443.+====1. On se connecte sur ownCloud==== 
 +Logiquement Nx va rediriger la requête du port 80 vers le port 443.
  
 <code> <code>
Ligne 231: Ligne 248:
 </code> </code>
  
-Lors de du premier accès nous avons le message suivant au sujet de la certification du site web.+Lors du premier accès nous avons le message suivant au sujet de la certification du site web.
  
 {{:selection_091.png?200|}} {{:selection_091.png?200|}}
  
-Nous pouvons passer par "Je comprends les risques" et "Ajouter une execption..." et "Confirmer l'exception de sécurité"+Nous pouvons passer par "Je comprends les risques" et "Ajouter une exception..." et "Confirmer l'exception de sécurité"
  
 Nous voila sur l'écran de login : Nous voila sur l'écran de login :
Ligne 241: Ligne 258:
 {{ :artwork:owncloud_install.jpg?nolink&300 |}} {{ :artwork:owncloud_install.jpg?nolink&300 |}}
  
-On entre un login et un mot de passe. Le premier compte créé aura les droits d'administration dans owncloud.\\ +On entre un login et un mot de passe. Le premier compte créé aura les droits d'administration dans ownCloud.\\ 
-On peut changer l'endroit où sera stocker les données de owncloud. \\+On peut changer l'endroit où seront stockées les données de ownCloud. \\
 Une fois tous les champs remplis, on clique sur "Terminer l'installation".\\ Une fois tous les champs remplis, on clique sur "Terminer l'installation".\\
  
Ligne 254: Ligne 271:
  
  
-2. On sélectionne l'onglet administration.+====2. On sélectionne l'onglet administration====
  
 {{ :artwork:owncloud_install2.png?nolink&800 |}} {{ :artwork:owncloud_install2.png?nolink&800 |}}
Ligne 265: Ligne 282:
 {{ :artwork:owcloud_install3.png?nolink&800 |}} {{ :artwork:owcloud_install3.png?nolink&800 |}}
  
-Pour finaliser le rafraissichement de owncloud en ajoutant cette commande en crontab.+Pour finaliser le rafraîchissement de ownCloud en ajoutant cette commande dans **/etc/crontab**.
 <code> <code>
 */15  *  *  *  * php -f /var/www/owncloud/cron.php >> /var/log/nginx/owncloud.log 2>&1 */15  *  *  *  * php -f /var/www/owncloud/cron.php >> /var/log/nginx/owncloud.log 2>&1
Ligne 271: Ligne 288:
 Cela permet de faire du nettoyage dans la base de donnée + d'autres choses toutes les 15 minutes. Cela permet de faire du nettoyage dans la base de donnée + d'autres choses toutes les 15 minutes.
  
-3. On sélectionne l'onglet utilisateur.+====3. On sélectionne l'onglet utilisateur.====
  
 {{ :artwork:owncloud_install4.png?nolink&800 |}} {{ :artwork:owncloud_install4.png?nolink&800 |}}
Ligne 281: Ligne 298:
 {{ :artwork:owncloud_install5.png?nolink&300 |}} {{ :artwork:owncloud_install5.png?nolink&300 |}}
  
-4. On configure l'envoie d'email par owncloud.+====4. On configure l'envoi d'email par ownCloud.====
  
 Il faut d'abord installer un client pour envoyer un email. Pour cela on utilise ssmtp. ssmtp permet à des applications d'envoyer des courriels via la commande /usr/sbin/sendmail. Il est beaucoup plus facile à mettre en place que sendmail. Il faut d'abord installer un client pour envoyer un email. Pour cela on utilise ssmtp. ssmtp permet à des applications d'envoyer des courriels via la commande /usr/sbin/sendmail. Il est beaucoup plus facile à mettre en place que sendmail.
Ligne 354: Ligne 371:
 [[https://www.youtube.com/watch?v=l0oa_YtVLOc|Démonstration de owncloud]] [[https://www.youtube.com/watch?v=l0oa_YtVLOc|Démonstration de owncloud]]
  
-**Références :**\\ +===== Accès à votre serveur local via internet ===== 
-[[http://pihomeserver.wordpress.com/2012/12/20/raspberry-pi-home-server-etape-14-installer-owncloud-en-https-avec-nginx/ | owncloud sur raspberry pi]]\\+Si votre serveur dispose d'une adresse IP dans votre réseau local et est donc facilement accessible localement, la situation est différente si vous souhaitez y accéder par l'extérieur, via internet. 
 + 
 +Il faut : 
 +  * pouvoir utiliser un nom de domaine plus pratique que l'adresse IPv4 publique régulièrement modifiée du routeur (cas le plus fréquent avec les FAI) : services du type dyndns ou noip 
 +  * s'assurer que les ports serveurs http et https sont ouverts (action à effectuer via le FAI) 
 +  * rediriger les ports vers le serveur ownCloud local (configuration du routeur) 
 + 
 +Ces procédures, plus générales pour d'autres serveurs et pas seulement ownCloud sont expliquées [[config_serveur_auto_heberge|ici]] ! 
 + 
 +=====Problèmes divers===== 
 + 
 +==== Localisation ==== 
 +**Problème** : dans la partie administration vous voyez un message sur la localisation : //Localisation non fonctionnelle Ce serveur ownCloud ne peut pas ajuster la localisation du système en en_US.UTF-8/en_US.UTF8. Cela signifie qu'il pourra y avoir des problèmes avec certains caractères dans les noms de fichiers. Il est vivement recommandé d'installer les paquets requis pour le support de en_US.UTF-8/en_US.UTF8.// 
 + 
 +**Solution** : exécuter la commande 
 +<code>sudo dpkg-reconfigure locales</code> 
 +choisir les locales suivantes : 
 +  * en_GB.UTF-8 
 +  * en_US.UTF-8 
 +  * fr_BE.UTF-8 
 +  * fr_FR.UTF-8 
 +Finalement, indiquer comme défaut pour le système en_US.UTF-8 
 + 
 + 
 +===== Une installation automatique de owncloud ===== 
 + 
 +Le développeur [[http://blog.petrockblock.com/|petRockBlog]] a développé un script pour effectuer l'installation automatiquement de owncloud et des dépendances. 
 + 
 +Vous pouvez trouvez le script ICI : [[https://github.com/petrockblog/OwncloudPie]] 
 + 
 +Procédure d'utilisation : 
 + 
 +  * Installer Raspbian sur votre Raspberry Pi (voir la procédure sur [[http://www.loligrub.be/wiki/raspberry_pi#debian_sur_raspberry_pila_distribution_raspbian|cette page]]) 
 +  * Connectez vous en mode console sur votre Raspberry Pi  
 +    * Vous pouvez également vous connecter via le protocole ssh sur votre raspberry pi avec ssh pi@IP_DU_RASPBERRYPI 
 +  * Après avoir installé le système via l'image, la partition système sur votre carte SD ne fait que 2go. Si vous avez une carte SD de plus grosse capacité, elle n'est pas exploitée complètement. Voici comme agrandir la partition : 
 +<code> 
 +sudo raspi-config 
 +-> choisir : expand_rootfs           Expand root partition to fill SD card 
 +-> Finish + Reboot now 
 +ou bien : sudo shutdown -r now 
 +</code> 
 + 
 +  * En mode console sur votre Raspberry Pi commencer par la mise à jour des paquets 
 + 
 +<code> 
 +sudo apt-get update 
 +sudo apt-get upgrade 
 +</code> 
 + 
 +  * Effectuer l'installation de 2 paquets nécessaire pour l'utilisation du script 
 +    * Git = récupération des sources du script 
 +    * Dialog = système de gestion d'écran en mode console 
 + 
 +<code> 
 +sudo apt-get install -y git dialog 
 +</code> 
 + 
 +  * Ce placer dans le répertoire home de l'utilisateur et lancer la récupération du script via la commande git 
 + 
 +<code> 
 +cd 
 +git clone git://github.com/petrockblog/OwncloudPie.git 
 +</code> 
 + 
 +  * Lancer maintenant le script pour installer owncloud.  
 +    * Ce placer dans le répertoire du script 
 +    * Donner les droits d'exécution à l'utilisateur pour le script 
 +    * Lancer le script ;) 
 + 
 +<code> 
 +cd OwncloudPie 
 +chmod +x owncloudpie_setup.sh 
 +sudo ./owncloudpie_setup.sh 
 +</code> 
 + 
 +  * La procédure d'installation commence par un écran de choix 
 +    * Définir l'url de votre installation 
 +    * Choisir le type d'installation : prendre -> New Instalation, NGiNX based 
 + 
 +{{ :selection_097.png?300 |}} 
 + 
 +  * Attendre que l'installation ce déroule 
 +  * Durant l'installation vous allez devoir créer le certificat pour le ssl 
 +    * Country Name : BE 
 +    * State : Hainaut 
 +    * Locality : Mons 
 +    * Organiaation : Loligrub 
 +    * Organizational : vide 
 +    * Common Name : VOTRE NOM 
 +    * Email : VOTRE EMAIL 
 + 
 +{{ :selection_098.png?300 |}} 
 + 
 +  * La partie logiciel est maintenant installée et le serveur owncloud opérationnel 
 + 
 +{{ :selection_099.png?300 |}} 
 + 
 +  * si vous avez laissé l'url par défaut, vous allez pouvoir accéder à votre serveur via : [[https://url.ofmyserver.com/owncloud]] 
 +    * La remarque au sujet du DNS reste d'application pour cette installation. 
 + 
 +=====Références :===== 
 +  * [[http://pihomeserver.wordpress.com/2012/12/20/raspberry-pi-home-server-etape-14-installer-owncloud-en-https-avec-nginx/ | owncloud sur raspberry pi]] 
 +  * [[https://github.com/petrockblog/OwncloudPie|Script d'auto-installation de owncloud]] 
 +  * ...
  
owncloud_raspberry_pi.txt · Dernière modification : 2017/02/04 15:11 de wap