installer OwnCloud sur le raspberry Pi
Comme j’ai pas mal galérer pour le faire (j’ai peu de connaissance linux, mais j’ai progressé du coup), je partage cette expérience….
PS: Grand merci et bravo à TropFacile.net pour son site.
Pré-requis
- Avoir installé la distribution raspbian sur le raspberry
- Connecté au raspi un HUB USB (avec alimentation car le raspi ne peux pas alimenter seul un DD) connecté à un disque-dur externe USB, formaté en NTFS
- Avoir monté à la sauce Linux ce disque-dur
- Avoir installé un serveur Web (j’ai pris lamp que je trouve plus simple que Nginx) et ces dépendances (PHP, SQL…)
- Avoir un Putty configuré pour accéder à son raspi
- Avoir quelques bases sur les commandes Linux
installer OwnCloud
télécharger l’archive (ça va à la base du raspi, dossier /home/pi)
sudo wget http://download.owncloud.org/community/owncloud-5.0.9.tar.bz2
sudo tar -vxjf owncloud-5.0.9.tar.bz2
sudo mv owncloud /var/www
donner des droits au dossier www
sudo chown -R www-data:www-data /var/www
Dans mon cas, le disque-dur est monté dans un dossier DD500, dans /media/
Préparer le disque NTFS à recevoir OwnCloud
Le dossier « data », que OwnCloud va utiliser, à besoin de droits chmod 770 et doit laisser l’utilisateur www-data (apache) y avoir accès.
MAIS la ou c’est chiant, (et ou tous les tutos du net vous parle de modifier les droits via des commandes Linux chmod et chown) c’est que ces commande ne marche pas sur un disque formaté en NTFS, même avec le paquet ntfs-3g. Il faut donc impérativement fixer ces droits via le fichier /etc/fstab, dans la ligne qui monte le disque-dur.
De plus, il faut créer un groupe dédié au disque-dur en y incluant www-data.
Vérifier que le groupe www-data (et du coup son utilisateur du même nom) est bien présen.
cat /etc/group
sudo groupadd dd500
cat /etc/group |grep dd500
sudo usermod -a -G dd500 pi sudo usermod -a -G dd500 www-data
Editer le fstab, tout est sur une ligne. Valider par Ctrl+O, fermer par Ctrl+X
sudo nano /etc/fstab
auto, pour le montage du disque au boot du raspi
gid, avec le numéro du groupe
umask, qui permet d’avoir des droits 770 sur le disque
locale, pour la prise en charge du Français
0 0, je ne me rappel plus
Redémarrer le raspi
sudo reboot
Vérifier, au cas ou, que le disque-dur est bien dans le groupe dd500
stat /media/DD500
ou en ligne de commande
sudo mkdir /media/DD500/owncloud/data
Démarrer l’installation de Owncloud
Allons voir ça !
régler certains problèmes
Activer HTACCESS
sudo nano /etc/apache2/sites-enabled/000-default
A la rubrique Directory /var/www/
AllowOverride doit être All
Activer le mod_rewrite
a2enmod rewrite
ou, si pas de réponse
sudo /etc/httpd/httpd.conf
et mettre mod_rewrite sur enable
Modifier la limitation d’upload
Par défaut, l’envoie de fichier dans OwnCloud est limité à 2M.
J’ai vu beaucoup de tuto qui parlait souvent de modifier le fichier php.ini dans apache2 MAIS ça je changeait rien.
la ruse est de modifier le fichier .htacces (et donc de l’avoir activé) du dossier owncloud
sudo nano /var/www/owncloud/.htaccess
et de mettre 1024 M pour un upload de 1Go par exemple.
…
php_value upload_max_filesize 1024M
php_value post_max_size 1024M …
Redémarrer Apache
service apache2 restart
Accès en réseau via Windows (samba)
Si le disque-dur à été attribué au serveur web Apache, il ne sera pas accessible sur un réseau Windows par exemple.
Pour remédier à ça, il faut rajouter dans la configuration du partage samba, de forcer l’utilisateur www-data.
Sudo nano /etc/samba/smb.conf
Ajouter
force user = www-data
force group = www-data
Trucs en plus
Fixer son adresse IP
Par défaut, l’adresse IP du raspi est déterminé par le serveur DHCP de votre box.
En gros, il y a un certain nombre d’IP disponible par votre box et chaque appareil qui s’y connecte prend la première de la liste.
Il est donc logique, pour un appareil destiné à rester branché d’avoir une IP fixé définitivement.
Editer le fichier interfaces
sudo nano /etc/network/interfaces
remplacer la ligne avec DNS par
iface eth0 inet static address 192.168.0.25 netmask 255.255.255.0 gateway 192.168.0.254
Dans cette exemple, l’ip du raspi est fixé à 25 avec une box dont l’IP est 192.168.0.54 (FreeBox).