Tutoriel d'installation PMB/Debian.


Dernière màj de la procédure en novembre 2012 sur la distribution Debian Squeeze 6.0.6 stable et le package PMB4.0.2

Table des matières
1 - Préambule
2 - Configurer les ressources Debian
3 - Installation du serveur Apache2
4 - InstallerMySQL5
5 - Php5et ses extensions
7 - PhpMyAdmin
8 - Installation de PMB
a - L'archive PMB
b - Définir les droits d'accès à /var/www/pmb
c - Installation de la base Pmb

1) Préambule


Cette documentation considère que votre distribution Debian/Ubuntu est opérationnelle, que le réseau est configuré correctement, ainsi que l'accès à l'internet. Utilisez des versions de Linux Debian ditesstable.
Si vous avez choisi
Ubuntu vous veillerez à activer le compte root sinon vous perdrez beaucoup de temps à sudoyer le système pour pouvoir installer votre PMB. Les commandes décrites dans cette doc devant alors être précédées de la commande sudo.
Il me parait donc moins fastidieux de réactiver le compte root. Ouvrez donc un shell et tapez :
Biblio@ServeurPMB:~$ sudo passwd root
Le shell vous demande d'entrer un nouveau mot de passe pour le compte root, vous le lui donnez et hop le compte est actif.

Les utilisateurs peu familiers avec l'éditeur Vi pourront utiliser Gedit, s'il n'est pas installé, faites le avec la commande :
root@ServeurPMB:~# aptitude install gedit
Dans ce cas, les lignes de code décrites dans cette doc sous la forme :
root@ServeurPMB:~# vi /dossier/fichier
devront être interprétées :
root@ServeurPMB:~# gedit /dossier/fichier


/!\ attention, gedit ou tout autre éditeur de texte tributaire d'une interface graphique ne vous permettra pas d'administrer votre serveur à distance avec ssh par exemple. Je vous recommande donc de vous familiariser avec un éditeur en ligne de commande tel que Vi, Nano, Emacs...

2) Configurer les ressources Debian

Nous devons configurer aptitude, le gestionnaire de packages de la distribution Debian afin qu'il accède aux ressources dont nous avons besoin.
Nous allons donc modifier certaines adresses dans le fichier le fichier sources.list.
Vous trouverez celui-ci dans le répertoire /etc/apt/
Ouvrez un shell , à l'invite de commande et logez vous sur le compte rooten tapant :

biblio@ServeurPMB:~$ su

Le prompt du shell vous demande alors le mot de passe root, entrez le, puis éditez le sources.list:

root@ServeurPMB:~# vi /etc/apt/sources.list

ajoutez ces lignes afin d'accéder plus tard aux ressources du module YAZ nécessaire pour l'accès au serveurs Z39.50

deb http://ftp.indexdata.dk/debian squeeze main

profitez-en aussi pour intégrer les ressources debian.fr

deb http://ftp.fr.debian.org/debian/ squeeze main

et commentez les autres dépots

#deb http://ftp.debian.org/debian/ squeeze main #deb-src http://ftp.debian.org/debian/ squeeze main

Enregistrer et quitter vi (touche esc puis :wq). Vous êtes de retour dans votre shell, Pour l'extension Yaz, après avoir modifié le sources.list il faut charger la clé indexdata nécessaire elle aussi pour l'installation de YAZ:

wget http://ftp.indexdata.dk/debian/indexdata.asc
root@ServeurPMB:~# apt-key add indexdata.asc

Puis mettez à jour votre gestionnaire de packages

root@ServeurPMB:~# aptitude update

Les ressources officielles pour phpyaz :

3) Installation du serveur Apache

Plusieurs solutions s'offrent à nous, installer apache2-mpm-worker ou apache2-mpm-prefork
Worker est plus rapide, Prefork est plus stable à vous de voir... Toujours dans votre shell en mode root tapez :

root@ServeurPMB:~#aptitude install apache2-mpm-prefork

Nous devons éditer le fichier apache2.conf qui se trouve dans le répertoire /etc/apache2 :

root@ServeurPMB:~#vi /etc/apache2/apache2.conf

ajoutez la ligne :

ServerName 127.0.0.1
Enregistrer et quittez Vi puis, lancez votre navigateur www sur localhost ou sur l'adresse IP de votre serveur :
http://localhost/

ou

http://adresseIPdevotreServeurPMB/

Une fenêtre It Works ! s'ouvre et vous informe que Apache fonctionne correctement .

4) Installer MySQL5


/!\ le package mysql-server-5.5 n'a pas été déclaré stable pour être intégré à la version stable de Debian actuellement la 6.0.6
Ce sera probablement le cas lorsque Debian 7 actuellement en phase de test sera déclarée stable probablement au début de cette année.

Téléchargez et installez le serveur MySQL avec la commande :

root@ServeurPMB:~#aptitude install mysql-server-5.1

Une fois les packages installés, nous devons configurer un mot de passe pour le root MySQL, il est courant que celui ci vous soit demandé directement lors de l'installation du serveur, si ça n'est pas le cas ou si vous désirez changer ce mot de passe ultérieurement, entrez la commande :

root@ServeurPMB:~# dpkg-reconfigure mysql-server-5.1

Une interface graphique minimaliste s'offre à vous alors, entrez-y alors le mot de passe que vous avez choisi. Puis validez.

Petit rappel : la touche TAB [<=>] du clavier permet de naviguer jusqu'au bouton ''ok'' ;-)

/!\ ATTENTION : lorsque ce mot de passe vous sera demandé par la suite, ne confondez pas le compte root MySQL et le root de votre système Linux !
Ici nous avons configuré le mot de passe root du service mySQL.
Une solution de facilité consiste à choisir le même mot de passe pour les deux, bien que ce ne soit pas très recommandable en terme de sécurité.

Editez le fichier /etc/mysql/my.cnf

root@ServeurPMB:~# vi /etc/mysql/my.cnf
et cherchez la ligne max_allowed_packet et changez la valeur en

max_allowed_packet = 250 M
250M devraient convenir à une petite bibliothèque, mais si par la suite votre base grossit, vous devrez modifier une nouvelle fois cette valeurs.
Redémarrez mysql afin de prendre en compte ces nouveaux paramètres avec :

root@ServeurPMB:~# /etc/init.d/mysql restart

5) Php5 et ses extensions


Nous devons installer le package php5 ainsi que ses extensions php5-gd, php5-yaz, php5-xsl, php5-curl.
/!\ Attention, vous devez avoir modifié /etc/apt/sources.list comme indiqué au chapitre 2) Configurer les ressources Debian pour que php5-yaz s'installe correctement.

root@ServeurPMB:~#aptitude install php5

Installez maintenant les extensions Php5

root@ServeurPMB:~# aptitude install php5-gd php5-yaz php5-xsl php5-curl
Un message d'avertissement peut apparaitre :

ATTENTION : des versions non certifiées des paquets suivants vont être installées.
Des paquets non certifiés peuvent compromettre la sécurité de votre
système. Vous ne devriez les installer que si vous êtes certain
que c'est bien votre intention.
php5-yaz libyaz3
Voulez-vous ignorer cet avertissement et continuer quand même ?
Pour continuer, entrer « Oui » . Pour interrompre l'installation, entrer « Non » :

Pas de panique ! vous pouvez taper Oui.

Nous configurons maintenant Php5, pour celà, nous avons besoin d'écrire quelques modifications dans le fichier php.ini situé dans /etc/php5/apache2/
La commande pour l'éditer est :

root@ServeurPMB:~# vi /etc/php5/apache2/php.ini
Rechercher et modifier les paramètres ci dessous en fonction de la base et augmenter considérablement le max_execution_time :

max_execution_time = 3600 ; Maximum execution time of each script, in seconds
memory_limit = 250M ; Maximum amount of memory a script may consume (8MB)
post_max_size = 250M
upload_max_filesize = 250M.

Ces paramètres devraient convenir à une petite bibliothèque, mais si par la suite votre base grossit, vous devrez modifier une nouvelle fois ces valeurs.
Il est possible en cas de grosse reindexatgion de la base durant plusieurs heures que le max_execution_time à 3600 (une heure) ne suffise pas, donc montez à 36000 pour une grosse base documentaire.
Redémarrez le serveur Apache :

root@ServeurPMB:~# /etc/init.d/apache2 restart
Pour vérifier que votre serveur PHP fonctionne correctement, créez le fichier phpinfo.php dans le dossier /var/www :

root@ServeurPMB:~# vi /var/www/phpinfo.php

il doit contenir :

Ensuite, lancez votre navigateur sur :

http://localhost/phpinfo.php

ou

http://adresseIPdevotreserveur/phpinfo.php

Vous devriez voir s'afficher quelque chose qui ressemble à :
[fix me : coller un print screen de phpinfo.php]

7) PhpMyAdmin


PhpMyAdmin n'est pas nécessaire au fonctionnement de Pmb mais vous sera utile pour gérer facilement votre base mySql par le biais d'une interface php conviviale que vous lancerez depuis votre navigateur favori, Firefox par exemple (ceux qui ont répondu Internet Explorer sont priés de sortir).

root@ServeurPMB:~# aptitude install phpmyadmin

Puis tapez dans la barre d'adresse de votre navigateur :

localhost/phpmyadmin

L'interface web PhpMyAdmin se lance, entrez votre mot de passe root mySQL défini au chapitre : « 4-installez mySQL».

Pour en savoir plus sur PhpMyAdmin
:http://www.phpmyadmin.net/pma_localized_docs/fr/Documentation.fr.html

8) Installation de PMB


a - L'archive PMB


Téléchargez l'archive PMB depuis le site http://www.pmbservices.fr8 sur votre bureau.
La version courante est PMB 4.0.2.zip.
Une fois le téléchargement terminé, ouvrez un shell et passez en mode root :

root@ServeurPMB:~# su

Le shell vous demande d'entrer le mot de passe du root (le root Linux et non pas le root mySQL), faites le puis déplacez vous vers le dossier ou se trouve votre bureau :

root@ServeurPMB:~# cd /home/votrecompte/Desktop

ou bien, dans la version française de debian :

root@ServeurPMB:~# cd /home/votrecompte/Bureau
Ensuite décompressez l'archive:

root@ServeurPMB:~# unzip pmb3.4RC2 -d /var/www/
Attention ! si le nom de votre fichier Zip contient un espace, il faut protéger celui ci par un \ sinon le bash n'interprètera pas celui ci comme partie du nom de fichier mais comme un séparateur entre deux arguments et vous renverra un message d'erreur du genre filename not matched)
De manière générale, évitez d'utiliser des espaces dans les noms de fichier/dossier sous unix/linux.
Par exemple, le fichier pmb 4.0.2.zip se décompresse avec la commande :

root@ServeurPMB:~# unzip pmb\ 4.0.2.zip -d /var/www

b - Définir les droits d'accès à /var/www/pmb


Dans votre shell, toujours en mode root, déplacez vous dans le répertoire /var :

root@ServeurPMB:~# cd /var
On définit le propriétaire du répertoire /www :

root@ServeurPMB:~# chown -R www-data:www-data www

Déplacez vous dans le répertoire www :

root@ServeurPMB:~#cd www

On définit les droits sur les fichiers :

root@ServeurPMB:~#find -type f -exec chmod 0640 {} \;

On définit les droits sur les dossiers :

root@ServeurPMB:~#find -type d -exec chmod 0750 {} \;

c - Installation de la base Pmb



Lancez votre navigateur sur l'adresse :
http://localhost/pmb/tables/install.php

J'ai opté pour le charset iso 8859-1
La page d'installation comporte cinq ensembles de champs à renseigner.

Paramètres Système.

Utilisateur mySQL : root
Mot de Passe : Votre mot de passe root mySQL">MySql tel que vous l'avez défini au chapitre 4 installer mysql5
Serveur : localhost
Base de données : Nom de votre base, si vous n'entrez aucune valeur ici, ce sont les "Paramètres PMB par défaut" décrits ci dessous qui s'appliqueront.

Utilisateur : bibli
mot de passe : bibli
Base de Données PMB : bibli


Données PMB

Le jeu minimum pour démarrer rapidement est bien pratique ;)
Je n'ai jamais réussi à installer correctement les catégories et les indexations décimales Dewey préconfigurées dans le package d'install, tous les caractères spéciaux sont remplacés par des caractères ésotériques. Pour l'instant je choisi donc aucun.

Il ne vous reste plus qu'à cliquer sur le bouton Créer la base, un message vous indique que la création des tables a réussi. Dans votre navigateur web tapez :

http://localhost/pmb

Si La page d'accueil de PMB s'affiche, auto-congratulez vous chaleureusement : vous avez brillamment réussi l'installation de votre serveur PMB/Linux.