Overblog
Editer l'article Suivre ce blog Administration + Créer mon blog

Installation de PMB 7.x sur Debian 10.x

Après l'installation de PMB sur Debian 8, voici un tuto plus récent basé sur celui-là

Prérequis matériel d'après le site officiel : Un serveur quadri-processeurs / RAM 8Go / DD 50Go

Personnellement j'ai fait un test d'installation sur une VM 1 coeur / 2 Go / 25Go

 

C'est parti !

 

PMB 7.x nécessitant PHP 7.3 ou PHP 7.4, l'installation ne fonctionnera pas "facilement" avec une distribution Linux trop récente.

Téléchargez donc Debian 10 par exemple sur ce site

 

Installez Debian 10 avec une adresse IP fixe en interrompant la recherche DHCP car nous avons affaire à un serveur et il ne faut pas que son adresse change

 

Soit vous choisissez d'installer le minimum (outils minimum + éventuellement connexion ssh, pas besoin de l'impression et d'un bureau graphique)

Ou soit vous installez en plus un bureau graphique au choix pour pouvoir faire l'installation et les tests directement depuis un navigateur directement "en interne"

 

Depuis un terminal en 'root', copiez-collez ces lignes en gras une à une :

apt update

 

apt install apache2 apache2-doc php7.3-common libapache2-mod-php7.3 php7.3-cli php-gd php-apcu php-bz2 php-curl php-intl php-mbstring php-mysql php-soap php-sqlite3 php-xml php-zip mariadb-server libimage-exiftool-perl fontconfig libxext6 libxrender1 xfonts-base php7.3-dev php-pear libyaz-dev tree poppler-utils unzip xfonts-75dpi

 

a2enmod rewrite

a2enmod headers

a2enmod ssl

service apache2 restart

 

nano /etc/apache2/sites-available/pmb.conf

Ci-dessous, la config à copier-coller dans le fichier ouvert.

<VirtualHost *:80>
    ServerName pmb.fr
    ServerAlias www.pmb.fr
    DocumentRoot "/var/www/pmb"
    <Directory "/var/www/pmb">
        Options +FollowSymLinks
        AllowOverride all
        Require all granted
    </Directory>
    ErrorLog /var/log/apache2/error.pmb.log
    CustomLog /var/log/apache2/access.pmb.log combined
</VirtualHost>

(ctrl+x pour quitter/enregistrer)

 

a2ensite pmb.conf
service apache2 restart

 

cd /tmp/
wget https://github.com/wkhtmltopdf/packaging/releases/download/0.12.6-1/wkhtmltox_0.12.6-1.buster_amd64.deb
dpkg -i /wkhtmltox_0.12.6-1.buster_amd64.deb

 

pecl install yaz

nano /etc/php/7.3/apache2/conf.d/yaz.ini
À mettre dans le fichier yaz.ini :
extension=yaz.so

(ctrl+x pour quitter/enregistrer)

 

ln -s /etc/php/7.3/apache2/conf.d/yaz.ini /etc/php/7.3/mods-available/yaz.ini
phpenmod yaz

 

cd /usr/local/src/
wget http://www.xmailserver.org/libxdiff-0.23.tar.gz
tar xzf libxdiff-0.23.tar.gz
cd libxdiff-0.23
./configure
make
make install

 

nano /etc/php/7.3/apache2/conf.d/xdiff.ini
À mettre dans le fichier :
extension=xdiff.so

(ctrl+x pour quitter/enregistrer)

 

ln -s /etc/php/7.3/apache2/conf.d/xdiff.ini /etc/php/7.3/mods-available/xdiff.ini
phpenmod xdiff
service apache2 reload

 

cp /etc/php/7.3/apache2/php.ini /etc/php/7.3/apache2/php.ini.sav

 

nano /etc/php/7.3/apache2/php.ini

Paramétrages à modifier manuellement dans ce fichier (ctrl+w pour rechercher)
date.timezone = Europe/Paris
display_errors = off
expose_php = off
max_execution_time >= 300
max_input_vars >= 50000
memory_limit >= 256M
post_max_size >= 64M
upload_max_filesize >= 64M

(ctrl+x pour quitter/enregistrer)

 

cp /etc/mysql/mariadb.conf.d/50-server.cnf /etc/mysql/mariadb.conf.d/50-server.cnf.save

nano /etc/mysql/mariadb.conf.d/50-server.cnf

Et on y colle /  modifie ces paramètres

character_set_server= utf8
collation_server= utf8_unicode_ci
key_buffer_size = 1G
max_allowed_packet= 64M
query_cache_limit = 2M
query_cache_size =16M

(ctrl+x pour quitter/enregistrer)

 

cp /etc/mysql/my.cnf /etc/mysql/my.cnf.save

 

nano /etc/mysql/my.cnf

À mettre avant les !includes vers la fin du fichier

[mysqld]
#
# Rajout pour PMB
#
default_storage_engine = MyISAM
interactive_timeout = 300
join_buffer_size = 4M
open_files_limit = 10000
sql_mode = ''
wait_timeout = 300

(ctrl+x pour quitter/enregistrer)

 

mysql_secure_installation

(suivre les instructions de sécurisation)

 

mysql

CREATE USER 'USER_PMB'@'localhost' IDENTIFIED BY 'VOTRE_MOT_DE_PASSE';  (pensez à personnalisez le mot de passe)
GRANT ALL PRIVILEGES ON * . * TO 'USER_PMB'@'localhost';
FLUSH PRIVILEGES;

exit

 

mysql -h localhost -u USER_PMB -p (pour tester que ça fonctionne bien)

 

mysql
CREATE DATABASE pmb;

 

apt install adminer
cd /usr/share/adminer/
./compile.php
mv adminer-*.php adminer.php
echo "Alias /adminer.php /usr/share/adminer/adminer.php" | tee /etc/apache2/conf-available/adminer.conf
a2enconf adminer.conf
systemctl reload apache2

 

Testez depuis le navigateur :

http://VOTRE_IP_SERVEUR/adminer.php

 

 

Installation de PMB
(non testé avec une version plus récente, mais ça peut fonctionner)

cd /tmp/
wget https://forge.sigb.net/attachments/download/2910/pmb7.3.1.zip
unzip pmb7.3.1.zip
mkdir /var/www/html/pmb/
cp -r pmb7.3.1 /var/www/html/pmb/
chown -R www-data:www-data /var/www/html/pmb/

 

Depuis le navigateur :

http://VOTRE_IP_SERVEUR/tables/install.php

 

Remplissez le formulaire en renseignant la base 'pmb' crée dans ce tuto puis :
  1. Connexion avec les identifiants par défaut qui sont admin / admin
  2. Mettez à jour la BDD
  3. Changer le mot de passe admin

Et voilà !

 

Merci à SBOUCHER de la communauté PMB

Pour être informé des derniers articles, inscrivez vous :