Table des matières
Préparation du système
Nous allons commencer par installer tous les logiciels nécessaires au bon fonctionnement du Raspberry Pi. Si vous avez déjà installé wiringPi, svn, apache ou ngninx, cette section ne vous concerne plus et vous pouvez passer à l'étape suivante.
Configuration de base
Quelques petites configurations sont nécessaire dès le début.
Lors du premier boot de votre Raspberry PI, vous obtiendrez l'écran ci-dessous.
Si vous souhaitez retourner dans cet écran, vous pouvez utiliser la commande suivante :
sudo raspi-config
Sélectionnez “Expand Filesystem” pour que votre carte SD soit entièrement utilisée par le système.
Cette étape est cruciale si vous ne voulez pas être gêné plus tard par une utilisation partielle de l'espace disque de la carte SD.
Pour information, le filesystem de la distribution raspbian doit être agrandi avant de poursuivre l'installation, il faut au minimum 4 Go.
Sur cet écran de configuration, nous vous suggérons aussi de gérer la langue du système en utilisant le menu 4 (Internationalisation Options)
Par défaut en_GB.UTF-8 UTF-8 est sélectionnée, vous pouvez rajouter fr_FR.UTF-8 UTF-8 en le sélectionnant.
Modifiez votre fuseau horaire
Le clavier français Azerty
et la répartition de la RAM utilisée, vous pouvez baisser de 64 Mo à 32 Mo la mémoire utilisée pour le graphisme car Ydle n'utilise pas l'interface graphique du Raspberry PI
Une fois la configuration de votre Raspberry PI terminée, vous pouvez sortir de l'écran principal en utilisant le bouton <FINISH>, le Raspberry PI va rebooter.
De retour à l'invite de commande, vous allez vous identifier avec le user pi et le mot de passe par défaut raspberry
Mettez à jour votre système avec les dernières versions des packages
sudo apt-get update
sudo apt-get upgrade
WiringPi
WiringPi est un projet en C permettant de faciliter la communication entre votre code et les GPIOs du Raspberry Pi. Toutes les infos sont disponibles sur la page web du projet.
On installe git pour après:
sudo apt-get install git
Pour installer wiringPi, il faut exécuter la commande suivante :
sudo git clone git://git.drogon.net/wiringPi
Une autre méthode est également possible : http://wiringpi.com/download-and-install/
On installe wiringPi :
cd wiringPi/ sudo ./build
Vous aurez besoin de gcc pour compiler le code donc en cas de message d'erreur sur gcc vous devez l'installer.
sudo apt-get install gcc
Vous pouvez rencontrer un warning lors de la compilation, que vous pouvez ignorer
GPIO Utility [Compile] gpio.c gpio.c:85:12: warning: ‘decodePin’ defined but not used [-Wunused-function] [Compile] extensions.c
Une fois terminé, je sors du dossier :
cd
Installation de Nginx et PHP
Je me mets en root pour toute la suite
sudo -s
J'ai l'habitude d'utiliser aptitude à la place de apt-get mais ça marcherait de la même manière
aptitude install nginx php5 php5-fpm php-apc php5-intl
On paramètre Nginx le serveur web :
Nous allons créer un fichier de configuration en utilisant nano
nano /etc/nginx/conf.d/php5-fpm.conf
Vous obtenez un fichier vide, copiez-collez le bloc ci-dessous
upstream php5-fpm-sock { server unix:/var/run/php5-fpm.sock; }
Sauvegardez en utilisant la combinaison de touche Ctrl-O puis la touche entrée. Pour quitter nano, faites Ctrl-X
On va maintenant configurer le serveur web :
cat /dev/null > /etc/nginx/sites-available/default nano /etc/nginx/sites-available/default
Copiez la configuration suivante dans le fichier :
server { server_name ydle; root /var/www/ydle/web; location / { # try to serve file directly, fallback to rewrite try_files $uri @rewriteapp; } location @rewriteapp { # rewrite all to app.php rewrite ^(.*)$ /app.php/$1 last; } location ~ ^/(app|app_dev|config)\.php(/|$) { fastcgi_pass unix:/var/run/php5-fpm.sock; fastcgi_split_path_info ^(.+\.php)(/.*)$; include fastcgi_params; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_param HTTPS off; } error_log /var/log/nginx/project_error.log; access_log /var/log/nginx/project_access.log; }
Sauvegardez en utilisant la combinaison de touche Ctrl-O puis la touche entrée. Pour quitter nano, faites Ctrl-X
On optimise un peu nginx :
nano /etc/nginx/nginx.conf
On modifie le paramètre worker_processes qui détermine ne nombre de processeur disponible sur notre serveur, 1 dans le cas du RPi :
user www-data; worker_processes 1; pid /var/run/nginx.pid; ...
Et on redémarre le serveur web :
/etc/init.d/nginx restart
Enfin on active le système de cache apc :
nano /etc/php5/conf.d/20-apc.ini
On ajoute les trois dernières lignes :
extension=apc.so apc.enabled=1 apc.shm_size=100M apc.max_file_size=1M
Et on redémarre le serveur php-fpm :
/etc/init.d/php5-fpm restart
On repasse sous le user pi et on se repositionne dans son répertoire :
exit cd