Outils pour utilisateurs

Outils du site


nethserver_201_cahier_01_nethserver_et_dolibarr

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
nethserver_201_cahier_01_nethserver_et_dolibarr [2019-08-09 13:52] – ↷ Nom de la page changé de nethserver_201_cahier_01_dolibarr à nethserver_201_cahier_01_nethserver_et_dolibarr michelandrenethserver_201_cahier_01_nethserver_et_dolibarr [2025-01-12 19:30] (Version actuelle) – modification externe 127.0.0.1
Ligne 1: Ligne 1:
 +\\ 
 +[[cours_nethserver_101|{{ Images_Cahier-201-01-000.png?650 }}]]
 +\\ 
 +====== Description générale ======
  
 +===== Introduction =====
 +
 +Le **Cahier-01** du cours **NethServer-201** présente l'installation et la configuration minimale de **DolibarrERP & CRM** version 9.0.1 sur un Serveur NethServer-7.6.1810. La sauvegarde et la restauration de la base de données sont aussi décrites de même que la mise à jour de Dolibarr-9.0.0, déjà installé sur un autre Serveur NethServer, vers Dolibarr-9.0.1.
 +
 +{{Images_icone-201-004_Triangle.png?25}} Vu que nous pouvons avoir un site WEB tel qu'un site de Commerce en ligne dans le répertoire Web par défaut /var/www/html, nous installerons Dolibarr dans le sous-répertoire /var/www/html/dolibarr spécialement créé pour ce dernier.
 +
 +//Référence:// [[http://www.dolibarr.fr/|http://www.dolibarr.fr/]].\\ 
 +Dolibarr ERP & CRM est un logiciel moderne de gestion de votre activité professionnelle ou associative //(contacts, factures, commandes, stocks, agenda, etc...)//. C'est un logiciel LIBRE et gratuit adapté pour les entreprises, auto-entrepreneurs ou associations. Vous pouvez l'installer et l'utiliser comme une application autonome ou en ligne sur un serveur mutualisé ou dédié afin d'y accéder depuis n'importe où. Dolibarr est également disponible comme solution prête à l'emploi dans des services Cloud.
 +
 +===== Documentation =====
 +
 +Pour plus d'information sur les fonctionnalités, la documentation et la FAQ sur le projet, voir la documentation wiki: [[https://wiki.dolibarr.org/index.php/Accueil|https://wiki.dolibarr.org/index.php/Accueil]].
 +
 +===== But de ce cahier =====
 +
 +Installer un site Dolibarr fonctionnel et sécurisé. Dolibarr peut être installé sur un Serveur NethServer physique ou virtuel, sur un réseau LOCAL ou sur un serveur directement branché à l'Internet. Les procédures sont exactement les mêmes.
 +
 +{{ Images_Cahier-201-01-004.png?550 }}
 +\\ 
 +
 +===== Cours NethServer-101 =====
 +
 +Le //Cours NethServer-101//, se voulant une base solide pour la création d'un site de **Commerce en ligne**, comprend plusieurs cahiers:
 +
 +  - [[nethserver_101_cahier_01_linux|Cahier-01]]: -> Les bases de Linux.
 +  - [[nethserver_101_cahier_02_installations_configurations_logiciels_prerequis|Cahier-02]]: -> Installation et configuration des logiciels prérequis sur le poste de travail.
 +  - [[nethserver_101_cahier_03_creation_un_serveur_virtuel|Cahier-03]]: -> Création d'un Serveur NethServer virtuel.
 +  - [[nethserver_101_cahier_04_local_certificat_let_encrypt|Cahier-04]]: -> Serveur NethServer LOCAL & Let's Encrypt.
 +  - [[nethserver_101_cahier_05_vdsl_fqdn_internet_et_nethserver|Cahier-05]]: -> FAI, modem VDSL, domaine FQDN(( **FQDN**: Dans le //DNS//, un Fully Qualified Domain Name //(FQDN, ou nom de domaine complètement qualifié)// est un nom de domaine qui révèle la position absolue d'un nœud dans l'arborescence //DNS// en indiquant tous les domaines de niveau supérieur jusqu'à la racine. On parle également de domaine absolu, par opposition aux domaines relatifs. Par convention, le //FQDN// est ponctué par un point final.\\ 
 +//Référence:// [[https://fr.wikipedia.org/wiki/Fully_qualified_domain_name|https://fr.wikipedia.org/wiki/Fully_qualified_domain_name]]. \\ \\ )) et Serveur NethServer physique.
 +  - [[nethserver_101_cahier_06_nethserver_wordPress|Cahier-06]]: -> Installation de WordPress.
 +  - [[nethserver_101_cahier_07_nethserver_wordPress_wordfence|Cahier-07]]: -> Installation de l'extension de sécurité Wordfence.
 +  - [[nethserver_101_cahier_08_woocommerce_paypal_stripe|Cahier-08]]: -> WooCommerce, comptes chez Stripe et   PayPal pour les paiements en ligne.
 +  - [[nethserver_101_cahier_09_duplicator_migration|Cahier-09]]: -> Sauvegarde/restauration ou migration d'un site avec l'extension Duplicator.
 +  - [[nethserver_101_cahier_10_mandataire_inverse|Cahier-10]]: -> Serveur mandataire inversé.
 +  - [[nethserver_101_cahier_11_nethserver_backuppc|Cahier-11]]: -> Sauvegarde/restauration avec BackupPC.
 +
 +==== Cours NethServer-201 ====
 +
 +Le //Cours NethServer-201// décrit l'installation et la configuration d'applications sur un serveur NethServer.
 +
 +  - [[nethserver_201_cahier_01_nethserver_et_dolibarr|Cahier-201-01]]: -> Dolibarr.
 +  - [[nethserver_201_cahier_02_odoo_12|Cahier-201-02]]: -> Odoo-12.
 +  - [[nethserver_201_cahier_03_mediawiki|Cahier-201-03]]: -> MediaWiki.
 +  - [[nethserver_201_cahier_04_dokuwiki|Cahier-201-04]]: -> DokuWiki.
 +  - [[nethserver_201_cahier_05_moodle|Cahier-201-05]]: -> Moodle.
 +  - [[nethserver_201_cahier_06_proxmox|Cahier-201-06]]: -> Proxmox.
 +  - [[nethserver_201_cahier_07_flectra|Cahier-201-07]]: -> Flectra.
 +
 +==== Logiciels ====
 +
 +Tous les logiciels nécessaires sont du domaine public ou LIBRE sous licence //GPL//; ils ne coûtent pas un sou. Le seul achat nécessaire est l'obtention d'un nom de domaine au prix initial de $15 CAD et son renouvellement annuel d'environ $30 CAD.
 +
 +==== But final ====
 +
 +Après avoir suivi le //Cours NethServer-101//, vous posséderez un site de //Commerce en ligne// fiable et hautement sécuritaire. De plus, vous pourrez utiliser un clone de votre site, sur un //Serveur NethServer// virtuel roulant sur votre poste de travail, pour tester de nouvelles extensions et applications sans compromettre la sécurité ou l'intégrité de votre site en ligne.
 +
 +{{ NS-101_001_Diagramme.png?500 }}
 +
 +===== Particularités de ce document =====
 +
 +==== Notes au lecteur ====
 +
 +<nowiki>*</nowiki> Les captures d'écrans ne sont que des références.\\
 +<nowiki>**</nowiki> Les informations écrites ont préséance sur celles retrouvées dans les captures d'écrans. Veillez vous référer aux différents tableaux lorsque ceux-ci sont présents.\\ 
 +<nowiki>***</nowiki> Une capture d'écran avec une accentuation en magenta indique qu'il faut remplacer cette distinction par vos propres paramètres ou implique un choix laissé à votre appréciation.
 +
 +==== Conventions ====
 +
 +{{Images_icone-201-001_doigt.png?22}} Manipulation, truc ou ruse pour se tirer d'embarras.\\
 +{{Images_icone-201-002_Lumiere.png?25}} Une recommandation ou astuce.\\
 +{{Images_icone-201-003_Note.png?25}} Une note.\\
 +{{Images_icone-201-004_Triangle.png?25}} Une étape, note ou procédure à surveiller.\\
 +{{Images_icone-201-005_Non-termine.png?25}} Paragraphe non complété ou non vérifié.\\
 +{{Images_icone-201-006_Securite.png?25}} Danger pour la sécurité du système.
 +
 +Toutes les commandes à la console ou à travers //PuTTY// sont précédées d'une invite qui est toujours présente.
 +
 +<file>
 +[root@dorgee ~]# ping 10.10.10.75 -c1
 +
 +PING 10.10.10.75 (10.10.10.75) 56(84) bytes of data.
 +64 bytes from 10.10.10.75: icmp_seq=1 ttl=64 time=1.63 ms
 +
 +--- 10.10.10.75 ping statistics ---
 +1 packets transmitted, 1 received, 0% packet loss, time 0ms
 +rtt min/avg/max/mdev = 1.639/1.639/1.639/0.000 ms
 +[root@dorgee ~]#
 +</file>
 +
 +<WRAP box round>
 +<file>
 +Commande à exécuter si ce n'est déjà fait.
 +</file>
 +</WRAP>
 +
 +<WRAP box>
 +<file>
 +Commande indiquée à titre d'information seulement.
 +</file>
 +</WRAP>
 +\\ 
 +
 +====== À savoir ======
 +
 +===== Ce que fait Dolibarr =====
 +
 +//Référence:// [[http://wiki.dolibarr.org/index.php/Ce_que_fait_Dolibarr|http://wiki.dolibarr.org/index.php/Ce_que_fait_Dolibarr]].
 +
 +Dolibarr ERP & CRM est un logiciel modulaire //(on n'active que les fonctions que l'on désire)// de gestions de TPE/PME, d'indépendants, d'entrepreneurs ou d'associations. C'est un projet OpenSource/LIBRE qui s'exécute au sein d'un serveur Web et peut donc être accessible depuis n'importe quel lieu disposant d'une connexion Internet //(Projet basé sur un serveur WAMP, MAMP ou LAMP: Apache, MySQL, PHP)//.
 +
 +Dolibarr se démarque des autres suites de gestion d'entreprise par sa plus grande simplicité //(règle des 3 S)//:
 +
 +  - Simple d'installation //(choix: clé en main pour ceux qui ignorent comment installer un serveur Web ou une installation manuelle)//.
 +  - Simple d'utilisation //(fonctions modulaires pour ne pas surcharger les menus, avec des informations claires à la saisie)//.
 +  - Simple pour le développement //(pas de frameworks lourds)//. Dolibarr intègre sa propre architecture //(design patterns)// permettant à tout développeur d'être tout de suite opérationnel sans connaissances particulières autre que PHP.
 +
 +{{Images_icone-201-003_Note.png?25}} Dolibarr est également disponible grâce à des auto-installeurs pour les utilisateurs sans connaissances techniques afin d'installer Dolibarr et tous ses pré-requis //(Apache, Mysql, PHP)// par un simple fichier auto-installable. Ces versions s'appellent:
 +
 +  - [[https://wiki.dolibarr.org/index.php/DoliWamp_FR|DoliWamp]], un installeur auto-exe pour les utilisateurs Windows.
 +  - [[http://wiki.dolibarr.org/index.php/Dolibarr_pour_Ubuntu_ou_Debian|DoliDeb]], un installeur pour les utilisateurs LinuxDebian/Ubuntu.
 +  - [[http://wiki.dolibarr.org/index.php/Dolibarr_pour_Redhat_ou_Fedora_%28package_rpm%29|DoliRpm]], un installeur pour les utilisateurs Linux RedHat/Fedora/OpenSuSE/Mandriva/Mageia.
 +
 +La version standard est compatible avec tous les systèmes et la plupart des offres Cloud du marché.
 +\\ 
 +
 +==== Modules principaux (tous optionnels) ====
 +
 +  - Annuaire des prospects et/ou clients et/ou fournisseurs.
 +  - Annuaire des contacts/adresses.
 +  - Catalogue de produits et services.
 +  - Gestion des stocks.
 +  - Gestion des comptes bancaires.
 +  - Gestion des commandes.
 +  - Gestion des propositions commerciales.
 +  - Gestion des contrats de services.
 +  - Gestion des factures clients et fournisseurs.
 +  - Gestion des paiements.
 +  - Gestion des virements bancaires.
 +  - Gestion des expéditions.
 +  - Gestion des adhérents d'association.
 +  - Gestion des congés des employés.
 +  - Gestion des notes de frais.
 +  - Gestion des charges sociales / TVA.
 +  - Enregistrement des paiements des salariés.
 +  - Agenda partagé.
 +  - Point de vente/Caisse enregistreuse.
 +  - Réalisation de sondages.
 +  - Publipostage de masses vers les clients, prospects ou utilisateurs Dolibarr.
 +  - Suivi des marges.
 +  - Récolte de dons.
 +  - Marque-pages.
 +  - Rapports et statistique.
 +  - Exportation PDF de tous les éléments (factures, propositions commerciales, commandes, bons d'expéditions, etc...)
 +  - Importations et exportations //(CSV ou Excel)//.
 +  - Gestion de la TVA NPR //(non perçue récupérable - pour les utilisateurs français des DOM-TOM)//.
 +  - Connectivité LDAP.
 +  - De nombreuses autres fonctionnalités issues de modules officiels ou non //(AWStats, Bittorrent, Gravatar, Google, ...)//
 +  - Extensibles par de nombreux autres modules issus de la place de marché [[https://www.dolistore.com/fr/|https://www.dolistore.com/fr/]].
 +\\ 
 +
 +==== Autres caractéristiques diverses ====
 +
 +  - Application multi-utilisateur avec différents niveaux de permissions par module.
 +  - Plusieurs gestionnaires de menus //(possibilité de différencier les menus pour le back-office des utilisateurs internes ou le front office pour les clients ou fournisseurs)//.
 +  - Application simple à utiliser.
 +  - Facilement personnalisable //(activation uniquement des modules désirés, champs personnalisés, choix du thème, options diverses...)//.
 +  - Disponibilité d APIs web service ouvertes (soap et rest).
 +  - Fonctionne avec PHP 5.4.0+ //(requires functions like DateTimeZone.getOffset)//, MySQL 5.0.3+, MariaDB 5.0.3 ou PostgreSql 8.1.4+.
 +  - Programme d'auto-installation pour Windows, Debian/Ubuntu, Fedora/Redhat/OpenSuSE ou serveur dédié/mutualisé. Également compatible avec toute solution Cloud respectant les prérequis PHP, MySql, MariaDB ou PostgreSQL //(Par exemple chez les fournisseurs Cloud suivants: //[[http://saas.dolibarr.org/|saas.dolibarr.org]]//)//.
 +
 +
 +===== Ce que ne fait pas Dolibarr =====
 +//
 +Référence:// [[http://wiki.dolibarr.org/index.php/Ce_que_ne_fait_pas_Dolibarr|http://wiki.dolibarr.org/index.php/Ce_que_ne_fait_pas_Dolibarr]].
 +
 +Ces fonctionnalités ne sont pas disponibles, y compris dans les dernières versions.
 +
 +  - Dolibarr ne contient pas de module de Gestion de la paie. Un module Salaire permet la saisie et donc le suivi du paiement des salaires, mais il n'y a pas de fonction pour calculer et générer la feuille de paie.
 +  - Les tâches du module de gestion de projets n'ont pas de dépendance entre elle.
 +  - Dolibarr ne contient pas de Webmail.
 +  - La comptabilité double-partie est en développement. La compta actuelle est donc de la gestion: de trésorerie, de paiements, de rapprochement bancaire mais pas de génération de documents officiels comptables.
 +  - La gestion multi-société //(plusieurs sociétés gérées avec une seule installation et partage d'éléments, comme les clients)// nécessite d'installer [[https://wiki.dolibarr.org/index.php/Module_MultiSociété|Module MultiSociété]] disponible sur [[https://www.dolistore.com/fr/|https://www.dolistore.com/fr/]]. A défaut, il est toujours possible de créer autant d'instances que de sociétés, mais il n'y aura pas de partages d'information //(tel le partage des clients comme on peut le faire avec le module)//.
 +  - Dolibarr ne fait pas le café //(pas encore)//.
 +
 +===== Documentation =====
 +
 +Page principale: [[https://wiki.dolibarr.org/index.php/Accueil|https://wiki.dolibarr.org/index.php/Accueil]].
 +
 +Guide rapide d'utilisation Dolibarr ERP/CRM 3.5 //(gratuit)//: [[https://www.micronator.org/affaires/PDF/RF-232/Dolibarr/DolibarrTheBookFR/Dolibarr_the_Book_fr_3.5.pdf|https://www.micronator.org/affaires/PDF/RF-232/Dolibarr/DolibarrTheBookFR/Dolibarr_the_Book_fr_3.5.pdf]]
 +\\ 
 +
 +===== Logiciels recommandés =====
 +
 +Pour les logiciels recommandés à être installés sur le poste de travail, voir le [[nethserver_101_cahier_02_installations_configurations_logiciels_prerequis|Cahier-02]]: //Installations & configurations des logiciels prérequis//.
 +\\ 
 +\\ 
 +
 +====== Prérequis ======
 +
 +===== Prérequis pour Dolibarr =====
 +
 +//Référence:// [[https://wiki.dolibarr.org/index.php/Prérequis|https://wiki.dolibarr.org/index.php/Pr%C3%A9requis]].
 +\\ 
 +\\ 
 +
 +===== Fichier hosts du poste de travail =====
 +
 +Afin de simuler les réponses aux requêtes DNS, on ajoute les CNAME de notre Serveur NethServer au fichier ''hosts''  du poste de travail: ''C:\Windows\System32\drivers\etc\hosts''. Voir la section __Poste de travail__ dans le [[nethserver_101_cahier_03_creation_un_serveur_virtuel|Cahier-03]]: //Création d'un serveur NethServer virtuel// du "Cours NethServer-101".
 +\\ 
 +\\ 
 +
 +===== Serveur NethServer =====
 +
 +Pour l'installation d'un Serveur NethServer, voir le [[nethserver_101_cahier_03_creation_un_serveur_virtuel|Cahier-03]]: //Création d'un serveur NethServer virtuel// du "Cours NethServer-101".
 +
 +==== Mise à jour ====
 +
 +Avant de commencer quoi que ce soit, il est toujours préférable de mettre à jour le Serveur NethServer.
 +
 +Pour une mise à jour d'un Serveur NethServer, voir la section __Mises à jour des logiciels__ du [[nethserver_101_cahier_03_creation_un_serveur_virtuel|Cahier-03]]: //Création d'un serveur NethServer virtuel// du "Cours NethServer-101".
 +
 +==== Certificat Let's Encrypt ====
 +
 +Si on veut que notre Serveur NethServer soit pris au sérieux, il est préférable d'installer un certificat SSL gratuit de [[https://fr.wikipedia.org/wiki/Let's_Encrypt|Let's Encrypt]]. Le serveur peut être virtuel ou physique sur un réseau LOCAL et accessible ou non depuis l'Internet. Voir le [[nethserver_101_cahier_04_local_certificat_let_encrypt|Cahier-4]]: //NethServer LOCAL & Certificat Let's Encrypt// du "Cours NethServer-101".
 +
 +Pour un Serveur NethServer physique ou virtuel directement accessible depuis l'Internet voir le [[nethserver_101_cahier_05_vdsl_fqdn_internet_et_nethserver|Cahier-05]]: //VDSL, FQDN, Internet et NethServer// du "Cours NethServer-101".
 +\\ 
 +\\ 
 +
 +===== ClamAV =====
 +
 +//Référence:// [[https://wiki.nethserver.org/doku.php?id=clamscan|https://wiki.nethserver.org/doku.php?id=clamscan]].\\ 
 +Il n'y a pas beaucoup de virus conçus pour les distributions Linux et, par conséquent, la plupart des utilisateurs de tels systèmes ne se donnent pas la peine d'utiliser un logiciel antivirus. Toutefois, ceux qui souhaitent pouvoir analyser leur système, ou d’autres systèmes Windows connectés sur un PC Linux via un réseau, peuvent utiliser ClamAV. ClamAV est un moteur antivirus LIBRE conçu pour détecter les virus, les chevaux de Troie, les logiciels malveillants et autres menaces. Il prend en charge plusieurs formats de fichiers //(documents, exécutables ou archives)// et utilise des fonctionnalités de balayages en traitement multifil(( **Traitement multifil:** Traitement multitâche qui se traduit par l'exécution simultanée des fils d'un même processus, et qui permet d'accélérer l'exécution d'un programme par l'exploitation à d'autres fins du temps d'attente imposé au processeur lors de l'accès aux données.//Notes://- Le traitement multifil est très utilisé, notamment pour le traitement synchronisé de données audio et vidéo.- Lors du traitement multifil, les fils constituant le processus sont exécutés de façon imbriquée de manière à simuler la simultanéité.- À la différence du multitraitement qui fonctionne au niveau de l'application, le traitement multifil fonctionne au niveau des fils du processus. Il a l'avantage de consommer moins de ressources que le traitement simultané de plusieurs processus. Par contre, il implique la synchronisation du partage des ressources et de la mémoire du processeur entre les différents fils qui composent le processus traité.//Référence://[[http://www.granddictionnaire.com/ficheOqlf.aspx?Id_Fiche=8351242|http://www.granddictionnaire.com/ficheOqlf.aspx?Id_Fiche=8351242]]. )) et reçoit les mises à jour de sa base de données de signatures au moins 3 à 4 fois par jour.
 +
 +==== Installation du référentiel stephdl ====
 +
 +//Référence:// [[https://wiki.nethserver.org/doku.php?id=stephdl_repository|https://wiki.nethserver.org/doku.php?id=stephdl_]].
 +
 +Si ce n'est déjà fait, vous devez installer le référentiel //stephdl//.
 +
 +<WRAP box round>
 +<file>
 +[root@tchana ~]# yum install -y  http://mirror.de-labrusse.fr/NethServer/7/x86_64/nethserver-stephdl-1.0.7-1.ns7.sdl.noarch.rpm
 +
 +...
 +Transaction Summary
 +============================================================================================
 +Install  1 Package
 +
 +Total size: 40 k
 +Installed size: 40 k
 +...
 +Installed:
 +  nethserver-stephdl.noarch 0:1.0.7-1.ns7.sdl
 +
 +Complete!
 +[root@tchana ~]#
 +</file>
 +</WRAP>
 +
 +Vérification.
 +
 +<file>
 +[root@tchana ~]# rpm -qa | grep stephdl
 +
 +nethserver-stephdl-1.0.7-1.ns7.sdl.noarch
 +[root@tchana ~]#
 +</file>
 +
 +==== Installation de ClamAV ====
 +
 +<file>
 +[root@tchana ~]# yum install -y nethserver-clamscan --enablerepo=stephdl
 +
 +...
 +Transaction Summary
 +============================================================================================
 +Install  1 Package  (+1 Dependent package)
 +Upgrade             ( 6 Dependent packages)
 +
 +Total download size: 60 k
 +...
 +Installed:
 +  nethserver-clamscan.noarch 0:0.1.2-3.ns7.sdl
 +
 +Dependency Installed:
 +  clamav-scanner-systemd.x86_64 0:0.101.2-1.el7
 +
 +Complete!
 +[root@tchana ~]#
 +</file>
 +
 +
 +==== Mise à jour ====
 +
 +On peut manuellement mettre à jour la BD des virus.
 +
 +<file>
 +[root@tchana ~]# freshclam
 +
 +ClamAV update process started at Fri April  19 15:13:40 2019
 +main.cvd is up to date (version: 58, sigs: 4566249, f-level: 60, builder: sigmgr)
 +daily.cld is up to date (version: 25442, sigs: 1564671, f-level: 63, builder: raynman)
 +bytecode.cvd is up to date (version: 328, sigs: 94, f-level: 63, builder: neo)
 +[root@tchana ~]#
 +</file>
 +
 +==== Configuration ====
 +
 +On se logue à l'interface Web du Serveur NethServer à: https://10.10.10.75:980.
 +
 +//**Configuration -> Scanner Antivirus -> onglet Clamscan**//.
 +
 +{{ Images_Cahier-201-01-005.png?600}}
 +
 +☑ //**Activer l'analyse des fichiers système**//\\ 
 +On coche cette option.
 +
 +On choisit l'heure de l'analyse.
 +
 +☑ //**Déplacer les fichiers détectés vers la corbeille**//\\ 
 +On coche cette option.
 +
 +☑ //**Oui, je suis totalement sûr**//\\ 
 +On coche cette option.
 +
 +Comme on le voit, la BD des virus est à jour.
 +
 +**SOUMETTRE**.
 +<WRAP clear></WRAP>
 +\\
 +
 +<WRAP column 30%>
 +Onglet //**Détections**//, on prend les défauts.
 +|{{ Images_Cahier-201-01-006.png?400 }}|
 +</WRAP>
 +<WRAP column 30%>
 +Onglet //**Fichiers**//, on prend les défauts.
 +|{{ Images_Cahier-201-01-007.png?400 }}|
 +</WRAP>
 +<WRAP column 30%>
 +Onglet //**PUA**//, on prend les défauts.
 +|{{ Images_Cahier-201-01-008.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +\\
 +
 +<WRAP column 30%>
 +<nowiki>-</nowiki> À l'onglet //**Quarantaine**//, on peut récupérer les fichiers qui ont généré une fausse alarme.
 +
 +<nowiki>-</nowiki> Onglet //**Signatures**//, on prend les défauts
 +</WRAP>
 +<WRAP column 30%>
 +|{{ Images_Cahier-201-01-009.png?400 }}|
 +</WRAP>
 +<WRAP column 30%>
 +|{{ Images_Cahier-201-01-010.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +==== Lancement manuel d'un balayage ====
 +
 +À la console du Serveur NethServer, on peut lancer un balayage en __arrière-plan__ en ajoutant **<wrap em>&</wrap>** à la fin de la commande de démarrage //(prendra plusieurs minutes à terminer)//.
 +
 +<file>
 +[root@tchana ~]# /sbin/e-smith/nethserver-clamscan &
 +
 +[1] 25238
 +[root@tchana ~]#
 +</file>
 +
 +On vérifie.
 +
 +<file>
 +[root@tchana ~]# ps aux | grep -i nethserver-clamscan
 +
 +root     25238  0.0  0.2 151384  7848 pts/0    S    16:40   0:00 /usr/bin/perl -w /sbin/e-smith/nethserver-clamscan
 +root     25695  0.0  0.0 112708   988 pts/0    R+   16:47   0:00 grep --color=auto -i nethserver-clamscan
 +[root@tchana ~]#
 +</file>
 +
 +<WRAP column 55%>
 +L'interface Web affiche que le balayage est //En cours d'exécution//.
 +</WRAP>
 +<WRAP column 35%>
 +|{{ Images_Cahier-201-01-011.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +Lorsque le balayage sera terminé, le message ci-dessous apparaît à la console du Serveur NethServer.
 +
 +<WRAP box>
 +<file>
 +[root@tchana ~]#
 +[1]+  Done            /sbin/e-smith/nethserver-clamscan
 +[root@tchana ~]#
 +</file>
 +</WRAP>
 +
 +<WRAP column 45%>
 +On peut examiner le résultat du balayage en allant à:
 +
 +//**Configuration -> Scanner Antivirus ->**// onglet //**Quarantaine**//.
 +
 +{{Images_icone-201-003_Note.png?25}} Pour la documentation anglaise seulement, voir: [[https://github.com/Cisco-Talos/clamav-faq|https://github.com/Cisco-Talos/clamav-faq]].
 +</WRAP>
 +<WRAP column 45%>
 +|{{ Images_Cahier-201-01-012.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +===== Collections de logiciels =====
 +
 +{{Images_icone-201-003_Note.png?25}} Si vous utilisez le serveur du "Cours NethServer-101" et que vous avez déjà installé les Collections PHP et MariaDB 10.2, vous pouvez vous rendre directement à la section [[nethserver_201_cahier_01_nethserver_et_dolibarr#Création de la base de données DolibarrBD]].
 +
 +On ouvre une session PuTTY vers le Serveur NethServer.
 +
 +Version PHP actuelle pour un Serveur NethServer-7.6-1810.
 +
 +<file>
 +[root@tchana ~]# php --version
 +
 +PHP 5.4.16 (cli) (built: Oct 30 2018 19:30:51)
 +Copyright (c) 1997-2013 The PHP Group
 +Zend Engine v2.4.0, Copyright (c) 1998-2013 Zend Technologies
 +[root@tchana ~]#
 +</file>
 +
 +Comme on le voit, notre version <wrap em>5.4.16</wrap> de PHP est légèrement vieillotte.
 +
 +==== Collections ====
 +
 +{{Images_icone-201-001_doigt.png?22}} Les développeurs de RedHat ont pensé qu'un inconvénient, avec entre autres la version 5 de PHP, allait survenir tôt ou tard et ont écrit les paquetages des Collections.
 +
 +Tous les RPM des Collections sont installés dans le répertoire ''/opt''; ce qui empêche toutes interférences ou conflits avec les installations par défaut.
 +
 +=== PHP ===
 +
 +Le but de la Collection PHP est d'installer PHP-5.6, PHP-7.0, PHP-7.1, PHP-7.2 et PHP-7.3 parallèlement à la version installée par défaut avec NethServer-7.6, sans devoir supprimer ou modifier cette dernière. Cette Collection utilise les RPM du référentiel **remi** qui sont en fait, les mêmes que ceux sur le site Web officiel, mais ils ont l'avantage de fournir plus de choix. Cette Collection nécessite d'installer le référentiel //stephdl//.
 +
 +=== MariaDB ===
 +
 +Nous installerons aussi la Collection MariaDB 10.2, car elle offre une durée de vie s'étendant jusqu'à mai 2022.
 +
 +=== Installation des Collections ===
 +
 +Si ce n'est déjà fait, on installe les Collections PHP et MariaDB 10.2 en suivant les instructions ci-dessous.
 +
 +{{Images_icone-201-003_Note.png?25}} Ces Collection fournissent des versions plus récentes tout en conservant les version originales.
 +\\ 
 +\\ 
 +
 +===== Collection PHP =====
 +
 +==== Prérequis ====
 +
 +//Référence:// [[https://wiki.nethserver.org/doku.php?id=php-scl|https://wiki.nethserver.org/doku.php?id=php-scl]].
 +
 +Si ce n'est déjà fait, il faut installer les référentiels //stephdl// et //remi// pour pouvoir installer la Collection PHP.
 +
 +=== Référentiel stephdl ===
 +
 +//Référence:// [[https://wiki.nethserver.org/doku.php?id=stephdl_repository|https://wiki.nethserver.org/doku.php?id=stephdl_repository]].
 +
 +<WRAP box round>
 +<file>
 +[root@tchana ~]# yum install -y  http://mirror.de-labrusse.fr/NethServer/7/x86_64/nethserver-stephdl-1.0.7-1.ns7.sdl.noarch.rpm
 +
 +...
 +Résumé de la transaction
 +============================================================================================
 +Installation   1 Paquet
 +
 +Taille totale  : 40 k
 +Taille d'installation : 40 k
 +...
 +Installed:
 +  nethserver-stephdl.noarch 0:1.0.7-1.ns7.sdl
 +
 +Complete!
 +[root@tchana ~]#
 +</file>
 +</WRAP>
 +
 +Vérification.
 +
 +<file>
 +[root@tchana ~]# rpm -qa | grep stephdl
 +
 +nethserver-stephdl-1.0.7-1.ns7.sdl.noarch
 +[root@tchana ~]#
 +</file>
 +
 +=== Référentiel remi ===
 +
 +<file>
 +[root@tchana ~]# yum install -y http://rpms.famillecollet.com/enterprise/remi-release-7.rpm
 +
 +...
 +
 +Résumé de la transaction
 +============================================================================================
 +Installation   1 Paquet
 +
 +Taille totale  : 19 k
 +Taille d'installation : 19 k
 +...
 +Installed:
 +  remi-release.noarch 0:7.6-2.el7.remi
 +
 +Complete!
 +[root@tchana ~]#
 +</file>
 +
 +Vérification
 +
 +<file>
 +[root@tchana ~]# rpm -qa | grep remi
 +
 +remi-release-7.6-2.el7.remi.noarch
 +[root@tchana ~]#
 +</file>
 +
 +==== Installation de la Collection PHP ====
 +
 +<file>
 +[root@tchana ~]# yum install -y nethserver-php-scl --enablerepo=stephdl
 +
 +...
 +Résumé de la transaction
 +============================================================================================
 +Installation   1 Paquet (+124 Paquets en dépendance)
 +
 +Taille totale des téléchargements : 46 M
 +Taille d'installation : 133 M
 +Downloading packages:
 +...
 +Installé :
 +  nethserver-php-scl.x86_64 0:1.2.4-1.ns7.sdl
 +
 +Dépendances installées :
 +  enchant.x86_64 1:1.6.0-8.el7
 +...
 + tcl.x86_64 1:8.5.13-8.el7
 +
 +Terminé !
 +[root@tchana ~]#
 +</file>
 +
 +==== Usage ====
 +
 +Normalement, l'interface Web devrait être complète et vous ne devriez pas devoir utiliser la ligne de commande. Si vous pensez que //Stéphane de Labrusse// pourrait améliorer les paramètres PHP en apportant plus d'options, veuillez le lui demander: __stephd arobas de-labrusse point fr__.
 +
 +Les réglages sont répartis dans deux endroits.
 +
 +  - Gestion -> Hôtes virtuels\\ Après avoir créé un hôte virtuel, vous pouvez choisir la version que vous utiliserez pour l'Ibay/virtualhost //(par défaut, la version PHP d’Apache)//. Vu que NethServer utilise un script CGI pour gérer la version de PHP, vous ne pourrez pas ajuster les paramètres PHP avec le module //nethserver-phpsettings//; vous devez régler les paramètres à l'aide du fichier ''php.ini'' correspondant. Stéphane de Labrusse voulait coder quelque chose de "cool" afin que tous les paramètres ne soient pas basés uniquement sur des commandes de BD… Il a alors crée une page de configuration.
 +  -  Configuration -> Paramètres PHP\\ Vous pouvez choisir la version PHP que vous souhaitez utiliser __pour l’ensemble du serveur__. Lorsqu'Apache est le gestionnaire de PHP, vous pouvez alors définir les paramètres PHP avec le module nethserver-phpsettings. En d'autres termes, si vous souhaitez utiliser le module //nethserver-phpsettings// et que vous avez besoin d'une version spécifique de PHP, vous devez utiliser cette version __pour tout le serveur__. Bien sûr, vous pouvez revenir à la version par défaut en cas de problème avec une ancienne application Web.
 +
 +Dans d’autres parties de ce document, vous pouvez ajuster les paramètres PHP pour toutes les versions de PHP.
 +
 +==== Répertoire d'installation des Collections ====
 +
 +{{Images_icone-201-003_Note.png?25}} Toutes les versions PHP de la Collection proviennent du référentiel //remi-safe// et sont installées dans le répertoire ''/opt/remi''.
 +
 +<file>
 +[root@tchana ~]# yum repolist | grep remi
 +
 + * remi-safe: mirror.team-cymru.com
 +remi-safe                   Safe Remi's RPM repository for Enterprise Lin  3 181
 +[root@tchana ~]#
 +</file>
 +
 +On vérifie le répertoire ''/opt''.
 +
 +<file>
 +[root@tchana ~]# ls -ls /opt
 +
 +total 0
 +0 drwxr-xr-x. 7 root root 81 18 janv. 20:26 puppetlabs
 +0 drwxr-xr-x  7 root root 71  4 avril 12:49 remi
 +0 drwxr-xr-x  2 root root  6 30 oct.  15:17 rh
 +[root@tchana ~]#
 +</file>
 +
 +On affiche le répertoire ''/opt/remi''.
 +
 +<file>
 +[root@tchana ~]# ls -ls /opt/remi
 +
 +total 0
 +0 dr-xr-xr-x 3 root root 32  4 avril 12:49 php56
 +0 dr-xr-xr-x 3 root root 32  4 avril 12:49 php70
 +0 dr-xr-xr-x 3 root root 32  4 avril 12:49 php71
 +0 dr-xr-xr-x 3 root root 32  4 avril 12:49 php72
 +0 dr-xr-xr-x 3 root root 32  4 avril 12:49 php73
 +
 +[root@tchana ~]#
 +</file>
 +
 +==== PHP72 par défaut, après une connexion à la ligne de commande ====
 +
 +//Référence:// [[http://appdev.oit.umn.edu/2015/02/11/scl/|http://appdev.oit.umn.edu/2015/02/11/scl/]]
 +
 +On crée le fichier d'activation qui sera lu lors d'une connexion à la ligne de commandes du Serveur NethServer.\\ 
 +{{Images_icone-201-004_Triangle.png?25}} Prendre tout le contenu de l'encadré pour la commande.
 +
 +<file>
 +cat > /etc/profile.d/activer-php72.sh <<'EOT'
 +#!/bin/bash
 +source /opt/remi/php72/enable
 +if [[ "$X_SCLS" != *php72* ]]; then
 +src="`scl enable php72 'echo $X_SCLS'`"
 +pkgs=(${src// / })
 +uniq=($(printf "%s\n" "${pkgs[@]}" | sort -u));
 +export X_SCLS="${uniq[@]}"
 +fi
 +EOT
 +
 +</file>
 +
 +On rend le fichier exécutable.
 +
 +<file>
 +[root@tchana ~]# chmod +x /etc/profile.d/activer-php72.sh
 +
 +[root@tchana ~]#
 +</file>
 +
 +On vérifie.
 +
 +<file>
 +[root@tchana ~]# ls -als /etc/profile.d/activer-php72.sh
 +
 +4 -rwxr-xr-x 1 root root 215  4 avril 12:56 /etc/profile.d/activer-php72.sh
 +[root@tchana ~]#
 +</file>
 +
 +=== Vérification ===
 +
 +{{Images_icone-201-004_Triangle.png?25}} __On ferme la connexion PuTTY et on en relance une nouvelle__.
 +
 +On vérifie l'installation de la Collection.
 +
 +<file>
 +[root@tchana ~]# rpm -qa | grep scl-
 +
 +centos-release-scl-rh-2-3.el7.centos.noarch
 +scl-utils-20130529-19.el7.x86_64
 +centos-release-scl-2-3.el7.centos.noarch
 +nethserver-php-scl-1.2.4-1.ns7.sdl.x86_64
 +[root@tchana ~]#
 +</file>
 +
 +Collections installées.
 +
 +<file>
 +[root@tchana ~]# scl -l
 +
 +php56
 +php70
 +php71
 +php72
 +php73
 +[root@tchana ~]#
 +</file>
 +
 +Quel est le PHP par défaut?
 +
 +<file>
 +[root@tchana ~]# which php
 +
 +/opt/remi/php72/root/usr/bin/php
 +[root@tchana ~]#
 +</file>
 +
 +Quelle est sa version?
 +
 +<file>
 +[root@tchana ~]# php --version
 +
 +PHP 7.2.17 (cli) (built: Apr  3 2019 08:31:48) ( NTS )
 +Copyright (c) 1997-2018 The PHP Group
 +Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies
 +[root@tchana ~]#
 +</file>
 +
 +=== Sauvegarde ===
 +
 +On vérifie si le nom du fichier ''/etc/profile.d/activer-php72.sh/'' est déjà inclus dans le fichier d'inclusion de la sauvegarde des données: ''/etc/backup-data.d/custom.include'', sinon on l'insère.
 +
 +{{Images_icone-201-004_Triangle.png?25}} Prendre tout le contenu de l'encadré pour la commande.
 +
 +<file>
 +NouvelleInclusion="/etc/profile.d/activer-php72.sh/"
 +if grep -Fxq "$NouvelleInclusion" /etc/backup-data.d/custom.include
 +then
 +    # L'entrée a été trouvée dans custom.include
 +    echo -e "\nLe fichier custom.include contient déjà l'entrée:\n$NouvelleInclusion \n"
 +else
 +    # L'entrée n'a pas été trouvée dans custom.include
 +    echo -e "$NouvelleInclusion" >> /etc/backup-data.d/custom.include
 +    echo -e "\nL'entrée: $NouvelleInclusion a été ajoutée\n"
 +fi
 +
 +</file>
 +
 +On vérifie.
 +
 +<file>
 +[root@tchana ~]# cat /etc/backup-data.d/custom.include | grep /etc/profile.d/activer-php72.sh
 +
 +/etc/profile.d/activer-php72.sh/
 +[root@tchana ~]#
 +</file>
 +
 +Ci-dessus, il n'y a pas de ligne vide avant __/etc/profile.d/activer-php72.sh__. Nous en avons inséré une afin de faciliter la copie de la commande.
 +\\ 
 +
 +==== Mise à jour de la Collection ====
 +
 +Nous utilisons pour NS7, le référentiel //remi-safe//. Ce qui signifie qu'il est activé par défaut, lancez simplement la commande suivante pour mettre à jour:
 +
 +<file>
 +[root@tchana ~]# yum update -y nethserver-php-scl --enablerepo=stephdl
 +
 +Modules complémentaires chargés : changelog, fastestmirror, nethserver_events
 +Loading mirror speeds from cached hostfile
 + * ce-base: mirror.lug.udel.edu
 + * ce-extras: mirror.lug.udel.edu
 + * ce-sclo-rh: mirror.lug.udel.edu
 + * ce-sclo-sclo: mirror.lug.udel.edu
 + * ce-updates: mirror.lug.udel.edu
 + * epel: mirror.csclub.uwaterloo.ca
 + * nethforge: mirror.nethserver.org
 + * nethserver-base: mirror.nethserver.org
 + * nethserver-updates: mirror.nethserver.org
 + * remi-safe: mirror.team-cymru.com
 +No packages marked for update
 +[root@tchana ~]#
 +</file>
 +
 +{{Images_icone-201-004_Triangle.png?25}} S'il y avait une mise à jour, elle serait installée avec cette commande.
 +\\ 
 +
 +==== Ajustement des paramètres PHP ====
 +
 +Les valeurs de certains paramètres de PHP ne sont pas suffisants pour certaines extensions de Dolibarr. Ces paramètres sont: //MemoryLimit//, //PostMaxSize// et //UploadMaxFilesize//. Il faut les ajuster.
 +
 +Affichage des paramètres actuels PHP.
 +
 +<file>
 +[root@tchana ~]# config show php72
 +
 +php72=configuration
 +    AllowUrlFopen=On
 +    ExposePhp=0
 +    MaxExecutionTime=30
 +    MaxFileUpload=20
 +    MaxInputTime=60
 +    MemoryLimit=128
 +    PostMaxSize=20
 +    UploadMaxFilesize=10
 +[root@tchana ~]#
 +</file>
 +
 +{{Images_icone-201-001_doigt.png?22}} Il faut obligatoirement que le paramètre //PostMaxSize// soit plus grand que celui de //UploadMaxFilesize//. Si on modifie l'un, il faut vérifier l'autre pour que la correspondance des grandeurs soit respectée.
 +
 +<WRAP centeralign>{{Images_icone-201-004_Triangle.png?25}} Nous allons ajuster:** MemoryLimit (250M) > PostMaxSize (100M) > UploadMaxFilesize (75M)**.</WRAP>
 +
 +=== MemoryLimit ===
 +
 +Chaque fois qu'un client fait une requête au serveur Web, PHP génère un processus PHP. Le travail de ce processus est de générer du code HTML qu'il envoie au client. Le processus fournit un temps d'exécution à un script qui crée la réponse à la requête. La limite de mémoire //MemoryLimit// est la quantité maximale de mémoire que ce processus peut utiliser. Si la limite est atteinte ou dépassée, le processus échoue et Apache signale une erreur //HTTP 500//.
 +
 +=== PostMaxSize ===
 +
 +Référence: [[http://php.net/manual/en/ini.core.php#ini.post-max-size|http://php.net/manual/en/ini.core.php#ini.post-max-size]].
 +
 +Le paramètre //PostMaxSize// définit la taille maximale autorisée pour les données d'un post. Ce paramètre affecte également le téléchargement de fichiers. Pour télécharger des fichiers volumineux, cette valeur doit absolument être toujours supérieure à //UploadMaxFilesize//.
 +
 +{{ Images_Cahier-201-01-013.png?600}}
 +=== UploadMaxFilesize ===
 +
 +Pour certaines extensions, Dolibarr doit autoriser le téléversement de fichiers et la grandeur de ceux-ci ne peut dépasser la limite définie par le paramètre //UploadMaxFilesize// de PHP.
 +<WRAP clear></WRAP>
 +\\
 +
 +=== Version PHP par défaut ===
 +
 +{{ Images_Cahier-201-01-014.png?600}}
 +On se connecte à l'interface Web du Serveur NethServer et on définit la version PHP par défaut pour Apache.
 +
 +<nowiki>-</nowiki> **Configuration -> Paramètres PHP ->** onglet **Version PHP Apache ->** cliquer  **Php72 SCL Version**.
 +
 +**-> SOUMETTRE**.
 +<WRAP clear></WRAP>
 +
 +=== Ajustements des paramètres de la version PHP-7.2 ===
 +
 +<nowiki>-</nowiki> **Configuration -> Paramètres PHP ->** onglet **Php V7.2 SCL**.
 +
 +{{ Images_Cahier-201-01-015.png?600}}
 +☐ //**Allow php access to remote files**//
 +{{Images_icone-201-006_Securite.png?25}} On désactive cette option, car elle induit une faille de sécurité.
 +
 +On ajuste en glisant le surseur:
 +
 +//**Maximum of available memory**// **-> 250Mo**\\
 +//**Maximum size of post data allowed**// **-> 100Mo**\\
 +//**Maximum upload file size**// **-> 75Mo**.
 +
 +**-> SOUMETTRE**.
 +<WRAP clear></WRAP>
 +
 +=== Vérifications à la ligne de commande ===
 +
 +MemoryLimit
 +
 +<file>
 +[root@tchana ~]# cat /etc/opt/remi/php72/php.ini | grep -i Memory_Limit
 +
 +memory_limit                           = 250M
 +[root@tchana ~]#
 +</file>
 +
 +PostMaxSize
 +
 +<file>
 +[root@tchana ~]# cat /etc/opt/remi/php72/php.ini | grep -i post_max_size
 +
 +post_max_size                          = 100M
 +[root@tchana ~]#
 +</file>
 +
 +//UploadMaxFilesize//
 +
 +<file>
 +[root@tchana ~]# cat /etc/opt/remi/php72/php.ini | grep -i upload_max_filesize
 +
 +upload_max_filesize                    = 75M
 +[root@tchana ~]#
 +</file>
 +
 +{{Images_icone-201-004_Triangle.png?25}} Comme on le voit ci-dessus, les grandeurs maximales sont maintenant de: **MemoryLimit (250M) > PostMaxSize (100M) > UploadMaxFilesize (75M)**.
 +\\ 
 +\\ 
 +
 +===== Collection MariaDB 10.2 =====
 +
 +//Référence:// [[https://wiki.nethserver.org/doku.php?id=mariadb102|https://wiki.nethserver.org/doku.php?id=mariadb102]].
 +
 +La Collection //rh-mariadb102// est une récente version stable de MariaDB-10.2. Cette Collection de logiciels offre aux utilisateurs de CentOS et RHEL une alternative à MySQL. Compatible binairement avec MySQL et pouvant remplacé ce dernier. Cette version fournit plusieurs nouvelles fonctionnalités et améliorations.
 +
 +==== Fin de vie ====
 +
 +//Référence:// [[https://mariadb.org/about/maintenance-policy/|https://mariadb.org/about/maintenance-policy/]].
 +
 +La Foundation MariaDB peut décider de maintenir les versions sélectionnées au-delà de la période normale de 5 ans (//fin de vie//(( **Fin de vie**//(////Eol - ////End of life////)//: Se dit en [[https://fr.wikipedia.org/wiki/Informatique|informatique]] d'un logiciel ou d'un produit en fin de vie que l'[[https://fr.wikipedia.org/wiki/Éditeur_de_logiciel|éditeur]] ou le [[https://fr.wikipedia.org/wiki/Constructeur_informatique|constructeur]] ne fait plus évoluer. //Référence://[[https://fr.wikipedia.org/wiki/Fin_de_vie_(produit)|https://fr.wikipedia.org/wiki/Fin_de_vie_(produit)]].
 + ))//)// si leur utilisation est exceptionnellement répandue. Vu que la version //MariaDB 5.5//, incluse dans plusieurs distributions Linux importantes, jouissait d'une durée de vie jusqu'en 2017 //(date d'émission + 5ans)//, la Fondation s’est engagée à la maintenir jusqu’en 2020.
 +
 +<WRAP column 50%>
 +Vu que la version //MariaDB 10.2// est assurée d'une durée de vie __jusqu'en 2022__, nous avons décidé d'utiliser cette Collection au lieu de la version //5.5.60// ci-dessous fournie par NethServer.
 +
 +<file>
 +[root@tchana ~]# rpm -qa | grep mariadb
 +
 +mariadb-server-5.5.60-1.el7_5.x86_64
 +mariadb-5.5.60-1.el7_5.x86_64
 +mariadb-libs-5.5.60-1.el7_5.x86_64
 +[root@tchana ~]#
 +</file>
 +</WRAP>
 +<WRAP column 40%>
 +|{{ Images_Cahier-201-01-016.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +==== Prérequis pour l'installation ====
 +
 +L'installation de MariaDB 10.2 requière le référentiel //stephdl// que nous avons déjà installé. Voir le paragraphe [[nethserver_201_cahier_01_nethserver_et_dolibarr#Installation du référentiel stephdl]].
 +
 +==== Installation ====
 +
 +<file>
 +[root@tchana ~]# yum install -y --enablerepo=stephdl nethserver-rh-mariadb102
 +
 +...
 +Résumé de la transaction
 +============================================================================================
 +Installation   1 Paquet (+8 Paquets en dépendance)
 +
 +Taille totale des téléchargements : 27 M
 +Taille d'installation : 135 M
 +...
 +Installé :
 +  nethserver-rh-mariadb102.noarch 0:0.0.5-1.ns7.sdl
 +
 +Dépendances installées :
 +  rh-mariadb102.x86_64 0:3.0-5.el7
 +...
 +  rh-mariadb102-runtime.x86_64 0:3.0-5.el7
 +
 +Terminé !
 +[root@tchana ~]#
 +</file>
 +
 +Vérification
 +
 +On affiche les Collections installées.
 +
 +<file>
 +[root@tchana ~]# scl -l
 +
 +php56
 +php70
 +php71
 +php72
 +php73
 +rh-mariadb102
 +[root@tchana ~]#
 +</file>
 +
 +La Collection a été installée dans le répertoire ''/opt/rh''.
 +
 +<file>
 +[root@tchana ~]# ls -als /opt/rh
 +
 +total 0
 +0 drwxr-xr-x  3 root root 27  4 avril 13:14 .
 +0 drwxr-xr-x. 5 root root 46  4 avril 12:49 ..
 +0 dr-xr-xr-x  3 root root 59  4 avril 13:15 rh-mariadb102
 +[root@tchana ~]#
 +</file>
 +
 +Les propriétés de la Collection.
 +
 +<file>
 +[root@tchana ~]# config show rh-mariadb102-mariadb
 +
 +rh-mariadb102-mariadb=configuration
 +    LocalNetworkingOnly=no
 +    MaxAllowedPacket=16M
 +    TCPPort=3312
 +    access=private
 +    status=enabled
 +[root@tchana ~]#
 +</file>
 +
 +{{Images_icone-201-003_Note.png?25}} Le port <wrap em>3312</wrap> est à retenir, car nous devrons le spécifier lors de l'installation de Dolibarr.
 +
 +Vérification du lancement du démon et de ses services.
 +
 +<file>
 +[root@tchana ~]# ps aux | grep mariadb102
 +
 +mysql     3653  0.2  2.3 1764152 92156 ?       Ssl  19:38   0:01 /opt/rh/rh-mariadb102/root/usr/libexec/mysqld --basedir=/opt/rh/rh-mariadb102/root/usr
 +root      5716  0.0  0.0 112732   980 pts/0    S+   19:53   0:00 grep --color=auto mariadb102
 +[root@tchana ~]#
 +</file>
 +
 +<file>
 +[root@tchana ~]# systemctl list-unit-files | grep mariadb
 +
 +mariadb.service                               disabled
 +rh-mariadb102-mariadb.service                 enabled
 +rh-mariadb102-mariadb@.service                disabled
 +[root@tchana ~]#
 +</file>
 +
 +==== Journal ====
 +
 +Le journal pour cette Collection est situé dans le fichier ''/var/log/rh-mariadb102/mariadb.log''.
 +
 +<file>
 +[root@tchana ~]# ls -ls /var/log/rh-mariadb102/mariadb.log
 +
 +8 -rw-rw---- 1 mysql mysql 7326  4 avril 13:15 /var/log/rh-mariadb102/mariadb.log
 +[root@tchana ~]#
 +</file>
 +
 +==== Usage ====
 +
 +{{Images_icone-201-002_Lumiere.png?25}} Il n'existe pas de page dédiée à cette Collection dans l'interface Web. Si vous en avez besoin d'une, installez //nethserver-phpmyadmin//, puis lancez ''signal-event nethserver-phpmyadmin-save''.
 +
 +Stéphane a créé plusieurs raccourcis pour faciliter l'utilisation de cette Collection depuis votre terminal.
 +
 +<WRAP box>
 +<file>
 +mysql102
 +mysqladmin102
 +mysqlbinlog102
 +mysqlcheck102
 +mysql_config_editor102
 +mysqld_multi102
 +mysqldump102
 +mysqlimport102
 +mysql_plugin102
 +mysqlshow102
 +mysqlslap102
 +</file>
 +</WRAP>
 +
 +Si vous voulez lancer MariaDB 10.2 depuis votre terminal, utilisez la commande suivante.
 +
 +<WRAP box>
 +<file>
 + mysql102
 +</file>
 +</WRAP>
 +
 +==== Mise à jour de la Collection ====
 +
 +Nous utilisons pour NS7, le référentiel //remi-safe//. Ce qui signifie qu'il est activé par défaut, lancez simplement la commande suivante pour la mise à jour de la Collection.
 +
 +<file>
 +[root@tchana ~]# yum update -y rh-mariadb102-mariadb --enablerepo=stephdl
 +
 +Modules complémentaires chargés : changelog, fastestmirror, nethserver_events
 +Loading mirror speeds from cached hostfile
 + * ce-base: mirror.rackspace.com
 + * ce-extras: mirror.rackspace.com
 + * ce-updates: mirror.rackspace.com
 + * epel: mirror.texas3006.com
 + * nethforge: mirror.nethserver.org
 + * nethserver-base: mirror.nethserver.org
 + * nethserver-updates: mirror.nethserver.org
 + * remi-safe: mirror.bebout.net
 +No packages marked for update
 +[root@tchana ~]#
 +</file>
 +
 +{{Images_icone-201-004_Triangle.png?25}} S'il y avait une mise à jour, elle serait installée avec cette commande.
 +\\ 
 +\\ 
 +
 +===== Création de la base de données DolibarrBD =====
 +
 +On entre dans la console de MariaDB 10.2.
 +
 +<file>
 +[root@tchana ~]# mysql102
 +
 +Welcome to the MariaDB monitor.  Commands end with ; or \g.
 +Your MariaDB connection id is 12
 +Server version: 10.2.8-MariaDB MariaDB Server
 +
 +Copyright (c) 2000, 2017, Oracle, MariaDB Corporation Ab and others.
 +
 +Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
 +
 +MariaDB [(none)]>
 +</file>
 +
 +On affiche les BD déjà présentes.
 +
 +<file>
 +MariaDB [(none)]> show databases;
 +
 ++--------------------+
 +| Database           |
 ++--------------------+
 +| information_schema |
 +| mysql              |
 +| performance_schema |
 +| phpmyadmin         |
 ++--------------------+
 +4 rows in set (0,00 sec)
 +
 +MariaDB [(none)]>
 +</file>
 +
 +On vérifie le port utilisé par MariaDB 10.2.
 +
 +<file>
 +MySQL [(none)]> SHOW GLOBAL VARIABLES LIKE 'PORT';
 +
 ++---------------+-------+
 +| Variable_name | Value |
 ++---------------+-------+
 +| port          | 3312  |
 ++---------------+-------+
 +1 row in set (0,00 sec)
 +
 +MySQL [(none)]>
 +</file> 
 +Le port utilisé est bien <wrap em>3312</wrap>.
 +
 +{{Images_icone-201-001_doigt.png?22}} On crée la base de données, dans notre exemple, on utilise <wrap hi>DolibarrBD</wrap>, utilisant le jeu de caractère <wrap em>utf8mb4</wrap>.
 +
 +<file>
 +MariaDB [(none)]> CREATE DATABASE DolibarrBD CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
 +
 +Query OK, 1 row affected (0,03 sec)
 +
 +MariaDB [(none)]>
 +</file>
 +\\ 
 +
 +{{ Images_Cahier-201-01-017.png?600}}
 +{{Images_icone-201-004_Triangle.png?25}} Si vous n'utilisez pas le jeu de caractères //utf8mb4//, vous recevrez les erreurs ci-contre lors de la [[nethserver_201_cahier_01_nethserver_et_dolibarr#Création des tables de la BD]].
 +
 +{{Images_icone-201-004_Triangle.png?25}} De plus, vous ne pourrez pas choisir un état ou une province lors de l'entrée des [[nethserver_201_cahier_01_nethserver_et_dolibarr#Informations de votre société]] et vous compromettrez ainsi le calcul de la TVA à percevoir sur vos ventes.
 +<WRAP clear></WRAP>
 +
 +On vérifie que la base de données ait bien été créée.
 +
 +<file>
 +MariaDB [(none)]> show databases;
 +
 ++--------------------+
 +| Database           |
 ++--------------------+
 +| DolibarrBD         |
 +| information_schema |
 +| mysql              |
 +| performance_schema |
 +| phpmyadmin         |
 ++--------------------+
 +5 rows in set (0,00 sec)
 +
 +MariaDB [(none)]>
 +</file>
 +\\ 
 +
 +==== GRANT ====
 +
 +On crée l'utilisateur <wrap hi><nowiki>usager_dolibarr</nowiki></wrap> et on lui donne le mot de passe <wrap hi><nowiki>mdp_dolibarr</nowiki></wrap>.
 +
 +<file>
 +MariaDB [(none)]> CREATE USER 'usager_dolibarr'@'localhost' IDENTIFIED BY 'mdp_dolibarr';
 +
 +Query OK, 0 rows affected (0,00 sec)
 +
 +MariaDB [(none)]>
 +</file>
 +
 +{{Images_icone-201-004_Triangle.png?25}} Pour l'usager de la BD de Dolibarr, il faut choisir //un mot de passe robuste//, au moins 7 caractères: minuscules, majuscules, non-alphanumériques et chiffres. //Il ne faut pas prendre notre exemple de mot de passe//.
 +
 +C'est seulement __après__ la création de l'utilisateur, qu'on lui donne tous les droits sur la BD <wrap hi>DolibarrBD</wrap>.
 +
 +<file>
 +MariaDB [(none)]> GRANT ALL ON DolibarrBD.* TO 'usager_dolibarr'@'localhost';
 +
 +Query OK, 0 rows affected (0,01 sec)
 +
 +MariaDB [(none)]>
 +</file>
 +
 +{{Images_icone-201-004_Triangle.png?25}} Notez le nom de la base de données: <wrap hi>DolibarrBD</wrap>, le nom de l'utilisateur: <wrap hi>usager<nowiki>_</nowiki>dolibarr</wrap> et son mot de passe: <wrap hi>mdp<nowiki>_</nowiki>dolibarr</wrap>; ils serviront plus tard lors de l'installation de Dolibarr.
 +
 +On doit exécuter la commande ''FLUSH PRIVILEGES'' pour indiquer à MariaDB qu'il doit recharger les privilèges.
 +
 +<file>
 +MariaDB [(none)]> FLUSH PRIVILEGES;
 +
 +Query OK, 0 rows affected (0.00 sec)
 +
 +MariaDB [(none)]>
 +</file>
 +
 +On vérifie les privilèges de l'utilisateur <wrap hi>usager<nowiki>_</nowiki>dolibarr</wrap>.
 +
 +<file>
 +MariaDB [(none)]> show grants for usager_dolibarr@localhost;
 +
 ++------------------------------------------------------------------------------------------+
 +| Grants for usager_dolibarr@localhost                                                     |
 ++------------------------------------------------------------------------------------------+
 +| GRANT USAGE ON *.* TO 'usager_dolibarr'@'localhost' IDENTIFIED BY PASSWORD '*636805F8A083C66B77DF119B8F555E5C3A6A5F22' |
 +| GRANT ALL PRIVILEGES ON `DolibarrBD`.* TO 'usager_dolibarr'@'localhost'                  |
 ++------------------------------------------------------------------------------------------+
 +2 rows in set (0,01 sec)
 +
 +MariaDB [(none)]>
 +</file>
 +
 +On quitte la console de MariaDB 10.2.
 +
 +<file>
 +MariaDB [(none)]> quit;
 +
 +Bye
 +[root@tchana ~]#
 +</file>
 +\\ 
 +
 +==== Changement du mot de passe d'un usager de MariaDB ====
 +
 +<WRAP box>
 +<file>
 +MariaDB [(none)]> ALTER USER 'usager_dolibarr'@'localhost' IDENTIFIED BY 'nouveau_mdp';
 +
 +Query OK, 0 rows affected (0,02 sec)
 +
 +MariaDB [(none)]>
 +</file>
 +</WRAP>
 +
 +On doit exécuter la commande ''FLUSH PRIVILEGES'' pour indiquer à MariaDB qu'il doit recharger les privilèges.
 +
 +<WRAP box>
 +<file>
 +MariaDB [(none)]> FLUSH PRIVILEGES;
 +
 +Query OK, 0 rows affected (0.00 sec)
 +
 +MariaDB [(none)]>
 +</file>
 +</WRAP>
 +\\ 
 +
 +===== Fichier httpd.conf =====
 +
 +Le fichier ''/etc/httpd/conf/httpd.conf'' contient toutes les directives qui contrôlent le démon //httpd//. Celle qui a le plus d'influence sur les fichiers ''.htaccess'' du répertoire ''/var/www/html'' et de ses sous-répertoires est la directive ''AllowOverride'' vers la ligne //151// du fichier de configuration du démon.
 +
 +Par défaut, cette directive est à ''None'' et fait en sorte que le démon //httpd// ne traitera aucun fichier ''.htaccess'' qu'il rencontrera; il les ignorera tous.
 +\\ 
 +
 +==== Édition du ficher httpd.conf ====
 +
 +Dans le répertoire ''/root'', on crée une copie de sauvegarde du fichier original ''httpd.conf''.
 +
 +<file>
 +[root@tchana ~]# cp /etc/httpd/conf/httpd.conf  /root/httpd.conf_original
 +
 +[root@tchana ~]#
 +</file>
 +
 +On vérifie.
 +
 +<file>
 +[root@tchana ~]# ls -ls /root/httpd.conf_original
 +
 +12 -rw-r--r-- 1 root root 11753  4 avril 14:01 /root/httpd.conf_original
 +[root@tchana ~]#
 +</file>
 +
 +{{Images_icone-201-004_Triangle.png?25}} {{Images_icone-201-004_Triangle.png?25}} On édite le fichier ''/etc/httpd/conf/httpd.conf''. Ce fichier contient plusieurs fois la directive ''AllowOverride''. Assurez-vous de modifier celle du bon répertoire ''<Directory "/var/www/html">''. Remplacer la ligne ''AllowOverride None'' par la ligne débutant par ##### et les quatre lignes qui suivent cette dernière.
 +
 +<file>
 +...
 +<Directory "/var/www/html">
 +    #
 +    # Possible values for the Options directive are "None", "All",
 +    # or any combination of:
 +    #   Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews
 +    #
 +    # Note that "MultiViews" must be named *explicitly* --- "Options All"
 +    # doesn't give it to you.
 +    #
 +    # The Options directive is both complicated and important.  Please see
 +    # http://httpd.apache.org/docs/2.4/mod/core.html#options
 +    # for more information.
 +    #
 +    Options Indexes FollowSymLinks
 +
 +    #
 +    # AllowOverride controls what directives may be placed in .htaccess files.
 +    # It can be "All", "None", or any combination of the keywords:
 +    #   Options FileInfo AuthConfig Limit
 +    #
 +    ##### AllowOverride None
 +    # Modification par Michel-André le 4 avril 2019
 +    # afin que le démon httpd traite les fichers .htacces dans 
 +    # les répertoires et sous-répertoires de /var/www/html.
 +    AllowOverride All
 +
 +    #
 +    # Controls who can get stuff from this server.
 +    #
 +    Require all granted
 +</Directory>
 +...
 +</file>
 +
 +{{Images_icone-201-003_Note.png?25}} La directive ''AllowOverride All'' signifie d'écraser les directives du fichier de configuration ''httpd.conf'' lorsque le démon rencontre des directives identiques dans un fichier ''.htaccess''.
 +\\ 
 +
 +==== Redémarrage du démon httpd ====
 +
 +On redémarre le démon Apache afin qu'il relise son fichier de configuration.
 +
 +<file>
 +[root@tchana ~]# systemctl restart httpd
 +
 +[root@tchana ~]#
 +</file>
 +
 +==== Sauvegarde ====
 +
 +=== Répertoire du fichier httpd.conf ===
 +
 +On vérifie si le nom du répertoire ''/etc/httpd/conf/'' est déjà inclus dans le fichier d'inclusion de la sauvegarde des données: ''/etc/backup-data.d/custom.include'', sinon on l'insère.
 +
 +{{Images_icone-201-004_Triangle.png?25}} Prendre tout le contenu de l'encadré pour la commande.
 +
 +<file>
 +NouvelleInclusion="/etc/httpd/conf/"
 +if grep -Fxq "$NouvelleInclusion" /etc/backup-data.d/custom.include
 +then
 +    # L'entrée a été trouvée dans custom.include
 +    echo -e "\nLe fichier custom.include contient déjà l'entrée:\n$NouvelleInclusion \n"
 +else
 +    # L'entrée n'a pas été trouvée dans custom.include
 +    echo -e "$NouvelleInclusion" >> /etc/backup-data.d/custom.include
 +    echo -e "\nL'entrée: $NouvelleInclusion a été ajoutée\n"
 +fi
 +
 +</file>
 +
 +On vérifie.
 +
 +<file>
 +[root@tchana ~]# cat /etc/backup-data.d/custom.include | grep /etc/httpd/conf/
 +
 +/etc/httpd/conf/
 +[root@tchana ~]#
 +</file>
 +
 +Ci-dessus, il n'y a pas de ligne vide avant __/etc/httpd/conf/__. Nous en avons inséré une afin de faciliter la copie de la commande.
 +\\ 
 +\\ 
 +
 +===== Répertoire well-known =====
 +
 +//Référence:// [[https://dev-notes.eu/2017/01/apache-directives-in-config-vs-htaccess/|https://dev-notes.eu/2017/01/apache-directives-in-config-vs-htaccess/]]\\ 
 +//Référence:// [[http://httpd.apache.org/docs/current/howto/htaccess.html#page-header|http://httpd.apache.org/docs/current/howto/htaccess.html#page-header]].
 +
 +Lors d'une demande de certificat à Let's Encrypt, ce dernier doit pouvoir accéder au répertoire ''.well-known'' et à son sous-répertoire ''acme-challenge''.
 +
 +Nous allons créer un fichier ''/etc/httpd/conf.d/z_well-known.conf'' pour indiquer à Apache de rendre accessibles les deux répertoires en question.
 +
 +{{Images_icone-201-004_Triangle.png?25}} Prendre tout le contenu de l'encadré pour la commande.
 +
 +<file>
 +cat > /etc/httpd/conf.d/z_well-known.conf <<'EOT'
 +Alias "/.well-known/acme-challenge/" "/var/www/html/.well-known/acme-challenge/"
 +<Directory "/var/www/html/.well-known/acme-challenge/">
 +   Require all granted
 +   Options -Indexes +FollowSymLinks
 +   AllowOverride All
 +</Directory>
 +
 +EOT
 +
 +</file>
 +
 +On vérifie.
 +
 +<file>
 +[root@tchana ~]# ls -als /etc/httpd/conf.d/z_well-known.conf
 +
 +4 -rw-r--r-- 1 root root 231 Apr 20 13:36 /etc/httpd/conf.d/z_well-known.conf
 +[root@tchana ~]#
 +</file>
 +
 +On affiche le contenu du fichier.
 +
 +<file>
 +[root@tchana ~]# cat /etc/httpd/conf.d/z_well-known.conf
 +
 +Alias "/.well-known/acme-challenge/" "/var/www/html/.well-known/acme-challenge/"
 +<Directory "/var/www/html/.well-known/acme-challenge/">
 +   Require all granted
 +   Options -Indexes +FollowSymLinks
 +   AllowOverride All
 +</Directory>
 +
 +[root@tchana ~]#
 +</file>
 +
 +{{Images_icone-201-004_Triangle.png?25}} Il n'y a pas de ligne vide au dessus de __Alias...__ Ci-dessus, nous avons inséré une ligne vide pour faciliter la copie de la commande.
 +
 +{{Images_icone-201-003_Note.png?25}} Lors de son lancement, Apache incorpore tous les fichiers qui se trouvent dans le répertoire ''/etc/httpd/conf.d/'' et qui ont l'extension ''.conf''. Cette incorporation des fichier se fait par ordre alphabétique et c'est pour cette raison qu'on a nommé notre nouveau fichier de configuration ''z_well-known.conf''.
 +\\ 
 +
 +==== Sauvegarde ====
 +
 +=== Fichier z_well-known.conf ===
 +
 +On vérifie si le nom du fichier ''/etc/httpd/conf.d/z_well-known.conf/'' est déjà inclus dans le fichier d'inclusion de la sauvegarde des données: ''/etc/backup-data.d/custom.include'', sinon on l'insère.
 +
 +{{Images_icone-201-004_Triangle.png?25}} Prendre tout le contenu de l'encadré pour la commande.
 +
 +<file>
 +NouvelleInclusion="/etc/httpd/conf.d/z_well-known.conf/"
 +if grep -Fxq "$NouvelleInclusion" /etc/backup-data.d/custom.include
 +then
 +    # L'entrée a été trouvée dans custom.include
 +    echo -e "\nLe fichier custom.include contient déjà l'entrée:\n$NouvelleInclusion \n"
 +else
 +    # L'entrée n'a pas été trouvée dans custom.include
 +    echo -e "$NouvelleInclusion" >> /etc/backup-data.d/custom.include
 +    echo -e "\nL'entrée: $NouvelleInclusion a été ajoutée\n"
 +fi
 +
 +</file>
 +
 +On vérifie.
 +
 +<file>
 +[root@tchana ~]# cat /etc/backup-data.d/custom.include | grep /etc/httpd/conf/
 +
 +/etc/httpd/conf.d/z_well-known.conf/
 +[root@tchana ~]#
 +</file>
 +
 +Ci-dessus, il n'y a pas de ligne vide avant __/etc/httpd/conf.d/z<nowiki>_</nowiki>well-known.conf__. Nous en avons inséré une afin de faciliter la copie de la commande.
 +\\ 
 +\\ 
 +
 +===== Instantané VirtualBox =====
 +
 +{{Images_icone-201-002_Lumiere.png?25}} Il est fortement recommandé d'arrêter le Serveur NethServer et d'en prendre un instantané VirtualBox afin de pouvoir y revenir si nous exécutions une fausse manipulation qui ruinerait tout notre travail jusqu'ici.
 +
 +Grâce aux instantanés VirtualBox, vous pouvez enregistrer l'état particulier d'une machine virtuelle à un moment donné pour pouvoir l'utiliser plus tard. Ainsi, après avoir pris un instantané, vous pourrez à n'importe quel moment revenir à cet état, même si la machine virtuelle a été complètement changée ou endommagée.
 +
 +Voir le chapitre __Instantané d'une machine virtuelle__ dans le [[nethserver_101_cahier_03_creation_un_serveur_virtuel|Cahier-03]]: //Création d'un Serveur NethServer virtuel// du "Cours NethServer-101".
 +
 +<WRAP centeralign>**Tous les prérequis sont remplis.**</WRAP>
 +\\
 +
 +====== Téléchargement et préparation ======
 +
 +===== Répertoire racine =====
 +
 +Si ce n'est déjà fait, on se rend dans le répertoire racine par défaut du Serveur NethServer.
 +
 +<file>
 +[root@tchana ~]# cd /var/www/html/
 +
 +[root@tchana html]#
 +</file>
 +
 +On vérifie.
 +
 +<file>
 +[root@tchana html]# pwd
 +
 +/var/www/html/html
 +[root@tchana html]#
 +</file>
 +
 +===== Choix de la branche de Dolibarr =====
 +
 +{{ Images_Cahier-201-01-018.png?450}}
 +Avec un fureteur Web de la station de travail, on se rend à l'URL:\\ 
 +[[https://sourceforge.net/projects/dolibarr/files/Dolibarr%20ERP-CRM/9.0.1/|https://sourceforge.net/projects/dolibarr/files/Dolibarr%20ERP-CRM/9.0.1/]]
 +
 +On claque //(clic droit)// sur //**dolibarr-9.0.1.tgz**// **-> Copier l'adresse du lien**.
 +
 +Pour le fichier ''dolibarr-9.0.1.tgz'' le lien est:\\ 
 +[[https://sourceforge.net/projects/dolibarr/files/Dolibarr%20ERP-CRM/9.0.1/dolibarr-9.0.1.tgz/download|https://sourceforge.net/projects/dolibarr/files/Dolibarr%20ERP-CRM/9.0.1/dolibarr-9.0.1.tgz/download]]
 +<WRAP clear></WRAP>
 +\\
 +
 +{{Images_icone-201-004_Triangle.png?25}} On entre ''wget'' suivi d'un [espace] et on clique pour coller l'adresse du lien qu'on vient de copier ci-dessus.
 +
 +<file>
 +[root@tchana html]# wget https://sourceforge.net/projects/dolibarr/files/Dolibarr%20ERP-CRM/9.0.1/dolibarr-9.0.1.tgz/download
 +
 +--2019-04-05 14:39:47--  https://sourceforge.net/projects/dolibarr/files/Dolibarr%20ERP-CRM/9.0.1/dolibarr-9.0.1.tgz/download
 +Résolution de sourceforge.net (sourceforge.net)... 216.105.38.13
 +Connexion vers sourceforge.net (sourceforge.net)|216.105.38.13|:443...connecté.
 +requête HTTP transmise, en attente de la réponse...302 Found
 +Emplacement: https://downloads.sourceforge.net/project/dolibarr/Dolibarr%20ERP-CRM/9.0.1/dolibarr-9.0.1.tgz?r=&ts=1554489588&use_mirror=iweb [suivant]
 +--2019-04-05 14:39:48--  https://downloads.sourceforge.net/project/dolibarr/Dolibarr%20ERP-CRM/9.0.1/dolibarr-9.0.1.tgz?r=&ts=1554489588&use_mirror=iweb
 +Résolution de downloads.sourceforge.net (downloads.sourceforge.net)... 216.105.38.13
 +Connexion vers downloads.sourceforge.net (downloads.sourceforge.net)|216.105.38.13|:443...connecté.
 +requête HTTP transmise, en attente de la réponse...302 Found
 +Emplacement: https://iweb.dl.sourceforge.net/project/dolibarr/Dolibarr%20ERP-CRM/9.0.1/dolibarr-9.0.1.tgz [suivant]
 +--2019-04-05 14:39:48--  https://iweb.dl.sourceforge.net/project/dolibarr/Dolibarr%20ERP-CRM/9.0.1/dolibarr-9.0.1.tgz
 +Résolution de iweb.dl.sourceforge.net (iweb.dl.sourceforge.net)... 192.175.120.182, 2607:f748:10:12::5f:2
 +Connexion vers iweb.dl.sourceforge.net (iweb.dl.sourceforge.net)|192.175.120.182|:443...connecté.
 +requête HTTP transmise, en attente de la réponse...200 OK
 +Longueur: 49454958 (47M) [application/octet-stream]
 +Sauvegarde en : «download»
 +
 +100%[==================================================>] 49 454 958  1,79MB/  ds 26s
 +
 +2019-04-05 14:40:14 (1,79 MB/s) - «download» sauvegardé [49454958/49454958]
 +
 +[root@tchana html]#
 +</file>
 +
 +On vérifie le téléchargement.
 +
 +<file>
 +[root@tchana html]# ls -als download
 +
 +48296 -rw-r--r-- 1 root root 49454958  5 mars  11:04 download
 +[root@tchana html]#
 +</file>
 +
 +On décompresse le fichier.
 +
 +<file>
 +[root@tchana html]# tar -zxvf download
 +
 +...
 +dolibarr-9.0.1/
 +...
 +dolibarr-9.0.1/CODE_OF_CONDUCT.md
 +[root@tchana html]#
 +</file>
 +
 +On affiche le contenu du répertoire. Présentement, nous n'avons aucun WordPress d'installé dans ce répertoire.
 +
 +<file>
 +[root@tchana html]# ls -als
 +
 +total 48296
 +    0 drwxr-xr-x. 4 root root       63  5 avril 14:50 .
 +    0 drwxr-xr-x. 4 root root       33 18 janv. 20:25 ..
 +    0 drwxr-xr-x  7  500  500      318  5 mars  10:52 dolibarr-9.0.1
 +48296 -rw-r--r--  1 root root 49454958  5 mars  11:04 download
 +    0 drwxr-xr-x. 3 root root       28 18 janv. 20:26 .well-known
 +[root@tchana html]#
 +</file>
 +
 +{{Images_icone-201-003_Note.png?25}} Le répertoire ''.well-known'' est obligatoire pour la vérification des défis lancés lors de l'installation d'un certificat Let's Encrypt.
 +
 +On supprime le fichier download.
 +
 +<file>
 +[root@tchana html]# rm download
 +
 +rm : supprimer fichier « download » ? y
 +[root@tchana html]#
 +</file>
 +
 +On renomme le répertoire ''dolibarr-9.0.1'' pour ''dolibarr''.
 +
 +<file>
 +[root@tchana html]# mv dolibarr-9.0.1/ dolibarr
 +
 +[root@tchana html]#
 +</file>
 +
 +On vérifie.
 +
 +<file>
 +[root@tchana html]# ls -ls
 +
 +total 0
 +0 drwxr-xr-x 7 500 500 318  5 mars  10:52 dolibarr
 +[root@tchana html]#
 +</file>
 +
 +On affiche le contenu du répertoire racine de notre site Dolibarr.
 +
 +<file>
 +[root@tchana html]# ls -als dolibarr
 +
 +total 448
 +  0 drwxr-xr-x   5 root root    256  4 avril 11:41 .
 +  0 drwxr-xr-x.  4 root root     41  4 avril 14:39 ..
 +296 -rw-r--r--   1 root root 301797  4 avril 11:41 ChangeLog
 +  8 -rw-r--r--   1 root root   5470  4 avril 11:41 CODE_OF_CONDUCT.md
 +  4 -rw-r--r--   1 root root   2080  4 avril 11:41 composer.json
 + 64 -rw-r--r--   1 root root  63478  4 avril 11:41 composer.lock
 + 36 -rw-r--r--   1 root root  35147  4 avril 11:41 COPYING
 +  8 -rw-r--r--   1 root root   5444  4 avril 11:41 COPYRIGHT
 +  0 drwxr-xr-x   2 root root     86  4 avril 11:41 .github
 +  4 -rw-r--r--   1 root root    251  4 avril 11:41 .gitmessage
 +  4 drwxr-xr-x  66 root root   4096  4 avril 11:41 htdocs
 +  4 -rw-r--r--   1 root root     91  4 avril 11:41 INSTALL
 +  8 -rw-r--r--   1 root root   7510  4 avril 11:41 README-FR.md
 +  8 -rw-r--r--   1 root root   8035  4 avril 11:41 README.md
 +  4 -rw-r--r--   1 root root     95  4 avril 11:41 robots.txt
 +  0 drwxr-xr-x  16 root root    230  4 avril 11:41 scripts
 +[root@tchana html]#
 +</file>
 +
 +Plus loin, nous nous occuperons du propriétaire, du groupe et des droits.
 +\\ 
 +\\ 
 +
 +===== Répertoire documents =====
 +
 +On se rend dans le répertoire ''dolibarr''.
 +
 +<file>
 +[root@tchana html]# cd /var/www/html/dolibarr
 +
 +[root@tchana dolibarr]#
 +</file>
 +
 +On vérifie.
 +
 +<file>
 +[root@tchana dolibarr]# pwd
 +
 +/var/www/html/dolibarr
 +[root@tchana dolibarr]#
 +</file>
 +
 +Il faut maintenant créer un répertoire qui contiendra tous les documents générés ou téléversés par Dolibarr.
 +
 +<file>
 +[root@tchana dolibarr]# mkdir documents
 +
 +[root@tchana dolibarr]#
 +</file>
 +\\ 
 +
 +===== Fichier conf.php =====
 +
 +Présentement, le fichier ''conf.php'' n'existe pas, mais un exemple est donné et on peut simplement copier celui-ci.
 +
 +On se rend dans le répertoire de configuration.
 +
 +<file>
 +[root@tchana dolibarr]# cd htdocs/conf/
 +
 +[root@tchana conf]#
 +</file>
 +
 +On vérifie.
 +
 +<file>
 +[root@tchana conf]# pwd
 +
 +/var/www/html/dolibarr/htdocs/conf
 +[root@tchana conf]#
 +</file>
 +
 +On affiche le contenu.
 +
 +<file>
 +[root@tchana conf]# ls -als
 +
 +total 24
 + 0 drwxr-xr-x  2 500 500    87  5 mars  10:52 .
 + 4 drwxr-xr-x 66 500 500  4096  5 mars  10:52 ..
 +12 -rw-r--r--  1 500 500 11674 31 oct.  07:35 conf.php.example
 + 4 -rw-r--r--  1 500 500  1792 29 janv. 04:55 conf.php.pgsql
 + 4 -rw-r--r--  1 500 500    31 31 oct.  07:35 .htaccess
 + 0 -rw-r--r--  1 500 500     0 31 oct.  07:35 index.html
 +[root@tchana conf]#
 +</file>
 +
 +On copie le fichier d'exemple vers ''conf.php''.
 +
 +<file>
 +[root@tchana conf]# cp conf.php.example conf.php
 +
 +[root@tchana conf]#
 +</file>
 +
 +On ajuste __R__écursivement le propriétaire et le groupe du répertoire ''dolibarr''.
 +
 +<file>
 +[root@tchana conf]# chown -R apache:apache /var/www/html/dolibarr/*
 +
 +[root@tchana conf]#
 +</file>
 +
 +On répète la commande pour les répertoires et fichiers cachés.
 +
 +<file>
 +[root@tchana conf]# chown -R apache:apache /var/www/html/dolibarr/.*
 +
 +[root@tchana conf]#
 +</file>
 +
 +On enlève __R__écursivement tous les droits à "other" dans le répertoire ''dolibarr''.
 +
 +<file>
 +[root@tchana conf]# chmod -R o-rwx /var/www/html/dolibarr/*
 +
 +[root@tchana conf]#
 +</file>
 +
 +On répète la commande pour les répertoires et fichiers cachés.
 +
 +<file>
 +[root@tchana conf]# chmod -R o-rwx /var/www/html/dolibarr/.*
 +
 +[root@tchana conf]#
 +</file>
 +
 +On vérifie.
 +
 +<file>
 +[root@tchana conf]# ls -als  /var/www/html/dolibarr/
 +
 +total 464
 +  0 drwxr-x---   8 apache apache    335  5 avril 15:01 .
 +  0 drwxr-x---.  4 apache apache     41  5 avril 14:58 ..
 +  4 drwxr-x---  20 apache apache   4096  5 mars  10:58 build
 +296 -rw-r-----   1 apache apache 301797  5 mars  09:51 ChangeLog
 +  4 -rw-r-----   1 apache apache    249 31 oct.  07:35 .codeclimate.yml
 +  8 -rw-r-----   1 apache apache   5470 31 oct.  07:35 CODE_OF_CONDUCT.md
 +  4 -rw-r-----   1 apache apache   2080 31 oct.  07:35 composer.json
 + 64 -rw-r-----   1 apache apache  63478 31 oct.  07:35 composer.lock
 + 36 -rw-r-----   1 apache apache  35147 31 oct.  07:35 COPYING
 +  8 -rw-r-----   1 apache apache   5444 31 oct.  07:35 COPYRIGHT
 +  0 drwxr-x---   8 apache apache    101  5 mars  10:52 dev
 +  0 drwxr-x---   5 apache apache     65  5 mars  10:52 doc
 +  0 drwxr-x---   2 apache apache      6  5 avril 15:01 documents
 +  4 drwxr-x---  66 apache apache   4096  5 mars  10:52 htdocs
 +  4 -rw-r-----   1 apache apache     91 31 oct.  07:35 INSTALL
 +  8 -rw-r-----   1 apache apache   6345 11 nov.  11:35 .mailmap
 +  4 -rw-r-----   1 apache apache    310  7 juin   2018 .pydevproject
 +  8 -rw-r-----   1 apache apache   7510  1 févr. 09:08 README-FR.md
 +  8 -rw-r-----   1 apache apache   8033  1 févr. 09:04 README.md
 +  4 -rw-r-----   1 apache apache     95 31 oct.  07:35 robots.txt
 +  0 drwxr-x---  16 apache apache    230 17 juil.  2017 scripts
 +[root@tchana conf]#
 +</file>
 +
 +L'utilisateur //root// peut retourner dans son répertoire personnel.
 +
 +<file>
 +[root@tchana conf]# cd
 +
 +[root@tchana ~]#
 +</file>
 +\\ 
 +
 +===== Instantané VirtualBox =====
 +
 +{{Images_icone-201-002_Lumiere.png?25}} Il est fortement recommandé d'arrêter le Serveur NethServer et d'en prendre un instantané VirtualBox afin de pouvoir y revenir si nous exécutions une fausse manipulation qui ruinerait tout notre travail jusqu'ici.
 +
 +<WRAP centeralign>**Tout est en place pour l'installation.**</WRAP>
 +\\ 
 +
 +====== Installation ======
 +
 +===== Fichier hosts du poste de travail =====
 +
 +Afin de simuler les réponses aux requêtes DNS, on ajoute les CNAME de notre Serveur NethServer au fichier ''hosts'' du poste de travail: ''C:\Windows\System32\drivers\etc\hosts''.
 +
 +Voir la section __Poste de travail__ dans le [[nethserver_101_cahier_03_creation_un_serveur_virtuel|Cahier-03]]: //Création d'un serveur NethServer virtuel// du "Cours NethServer-101".
 +
 +Vu que nous utilisons une machine virtuelle, que nous n'avons pas de nom de domaine d'un régistraire autorisé pour celle-ci et que nous avons modifié le fichier ''C:\Windows\System32\drivers\etc\hosts'' du poste de travail, nous pouvons utiliser le nom de domaine: //micronator-dev.org// après avoir vidanger le cache DNS du poste de travail et l'historique de notre navigateur WEB.
 +\\ 
 +
 +===== Lancement de l'installation =====
 +
 +On pointe un navigateur vers le répertoire d'installation //(htdocs/install)//.
 +
 +{{Images_icone-201-001_doigt.png?22}} On peut utiliser le nom du Domaine ou l'adresse IP.\\ 
 +__Il est fortement recommandé d'utiliser le nom du domaine__ sinon, plus tard, si on utilise un nom de domaine, il faudra alors modifier le fichier ''htdocs/conf/conf.php'' et changer partout l'adresse IP pour le nom du domaine.
 +
 +On se rend à: [[https://www.micronator-dev.org/dolibarr/htdocs/install]].
 +
 +{{ Images_Cahier-201-01-019.png?600}}
 +===== Vérification des prérequis =====
 +
 +☑ La langue française est reconnue, les vérifications sont effectuées et tout est vert.
 +
 +☑ C'est une première installation.
 +
 +On continue en cliquant **Démarrer**.
 +<WRAP clear></WRAP>
 +\\
 +
 +{{ Images_Cahier-201-01-020.png?600}}
 +===== Serveur Web =====
 +
 +{{Images_icone-201-002_Lumiere.png?25}} Pour l'obtention d'un certificat Let's Encrypt pour un serveur virtuel LOCAL, voir le [[nethserver_101_cahier_04_local_certificat_let_encrypt|Cahier-4]]: //NethServer LOCAL & Certificat Let's Encrypt// du "Cours NethServer-101".
 +
 +☑ //**Forcer les connexions sécurisées (HTTPS)**//\\ 
 +Vu que nous avons un certificat Let's Encrypt, on coche cette option.
 +<WRAP clear></WRAP>
 +\\ 
 +
 +{{ Images_Cahier-201-01-021.png?600}}
 +===== Base de données Dolibarr =====
 +
 +On entre les informations demandées.
 +
 +Il faut absolument utiliser <wrap em>127.0.0.1</wrap> pour le Serveur de base de données et le port <wrap em>3312</wrap>, car nous utilisons MariaDB 10.2.
 +
 +**-> Étape suivante**.
 +<WRAP clear></WRAP>
 +\\
 +
 +{{ Images_Cahier-201-01-022.png?600}}
 +La configuration a été enregistré dans le fichier ''../conf/conf.php'' 
 +
 +<WRAP centeralign>c.-à-d.  ''/var/www/html/dolibarr/htdocs/conf/conf.php''.</WRAP>
 +
 +Tout est au vert **-> Étape suivante**.
 +<WRAP clear></WRAP>
 +\\
 +
 +{{ Images_Cahier-201-01-023.png?600}}
 +//(Peut prendre un certain temps.)// 
 +<WRAP clear></WRAP>
 +\\
 +
 +{{ Images_Cahier-201-01-024.png?600}}
 +==== Création des tables de la BD ====
 +
 +**-> Étape suivante**.
 +<WRAP clear></WRAP>
 +\\
 +
 +{{ Images_Cahier-201-01-025.png?600}}
 +{{Images_icone-201-004_Triangle.png?25}} Si vous recevez les erreurs ci-contre, la BD <wrap hi>DolibarrBD</wrap> n'a pas été correctement créée. Vous référez à la section [[nethserver_201_cahier_01_nethserver_et_dolibarr#Création de la base de données DolibarrBD]].
 +<WRAP clear></WRAP>
 +\\
 +
 +{{ Images_Cahier-201-01-026.png?600}}
 +===== Identifiant de l'utilisateur administrateur de Dolibarr =====
 +
 +{{Images_icone-201-006_Securite.png?25}} Par sécurité et pour ne pas tenter les pirates, on ne choisit jamais le nom __admin__ comme administrateur principal.
 +
 +On entre le nom du futur administrateur de Dolibarr, son mot de passe et on le confirme.
 +
 +**-> Étape suivante**.
 +\\ 
 +
 +{{ Images_Cahier-201-01-027.png?600}}
 +===== Fin de l'installation =====
 +
 +L'installation est terminée et un message d'avertissement de sécurité est affiché:
 +
 +{{Images_icone-201-006_Securite.png?25}} "Attention, pour des raisons de sécurité, afin de bloquer une nouvelle utilisation des outils d'installation/migration, une fois l'installation terminée, il est conseillé de placer __dans le répertoire document__ de Dolibarr un fichier nommé ''install.lock'' en lecture seule."
 +\\
 +
 +On crée le fichier ''install.lock'' et on y insère son contenu.\\ 
 +{{Images_icone-201-004_Triangle.png?25}} Prendre tout le contenu de l'encadré pour la commande.
 +
 +<file>
 +cat > /var/www/html/dolibarr/documents/install.lock <<'EOT'
 +# ************************************** 
 +# Fichier de sécurité.
 +# ************************************** 
 +EOT
 +
 +</file>
 +
 +On ajuste les droits du fichier.
 +<file>
 +
 +[root@tchana ~]# chmod 444 /var/www/html/dolibarr/documents/install.lock
 +
 +[root@tchana ~]#
 +</file>
 +
 +On ajuste le propriétaire et le groupe.
 +
 +<file>
 +[root@tchana ~]# chown root:root /var/www/html/dolibarr/documents/install.lock
 +
 +[root@tchana ~]#
 +</file>
 +
 +On vérifie.
 +
 +<file>
 +[root@tchana ~]# ls -ls /var/www/html/dolibarr/documents/install.lock
 +
 +4 -r--r--r--  root root 109  5 avril 15:39 /var/www/html/dolibarr/documents/install.lock
 +[root@tchana ~]#
 +</file>
 +
 +On vérifie le contenu.
 +
 +<file>
 +[root@tchana ~]# cat /var/www/html/dolibarr/documents/install.lock
 +
 +# **************************************
 +# Fichier de sécurité.
 +# **************************************
 +[root@tchana ~]#
 +</file>
 +
 +{{Images_icone-201-004_Triangle.png?25}} Il n'y a pas de ligne vide avant la ligne __<nowiki># ******...</nowiki>__ Ci-dessus, nous avons inséré une ligne vide pour faciliter la copie de la commande.
 +\\ 
 +\\ 
 +
 +{{ Images_Cahier-201-01-028.png?600}}
 +On accède à Dolibarr.
 +
 +**-> Accéder à Dolibarr (espace de configuration)**.
 +<WRAP clear></WRAP>
 +\\ 
 +
 +{{ Images_Cahier-201-01-029.png?400}}
 +===== Écran de connexion =====
 +
 +L'identifiant de l'administrateur est affiché, on entre le mot de passe.
 +
 +**-> Se connecter**.
 +
 +{{Images_icone-201-001_doigt.png?22}} On ne peut se loguer à moins d'avoir autorisé "JavaScript" et les "témoins" //(cookies)// dans le navigateur.
 +
 +{{Images_icone-201-002_Lumiere.png?25}} S'il est encore impossible de se loguer et que le fichier ''dolibarr/documents/dolibarr.log'' existe, il faut y ajouter le __droit d'écriture__.
 +<WRAP clear></WRAP>
 +
 +{{ Images_Cahier-201-01-030.png?600}}
 +**Victoire!**
 +
 +La page d'accueil de Dolibarr s'affiche correctement.
 +
 +{{Images_icone-201-004_Triangle.png?25}} Le cadenas est **vert** et implique que la connexion est sécurisée, car notre certificat Let's Encrypt est reconnu.
 +<WRAP clear></WRAP>
 +\\ 
 +
 +{{ Images_Cahier-201-01-031.png?600}}
 +====== Configuration ======
 +
 +===== Société/Institution =====
 +
 +Cliquer **Société/Institution** pour entrer les informations de configuration obligatoires de votre société.
 +<WRAP clear></WRAP>
 +\\ 
 +
 +{{ Images_Cahier-201-01-032.png?600}}
 +On clique **Modifier**, au bas de l'écran, à droite.
 +<WRAP clear></WRAP>
 +\\ 
 +
 +{{ Images_Cahier-201-01-033.png?600}}
 +==== Informations de votre société ====
 +
 +On entre les informations demandées.
 +\\ 
 +\\ 
 +\\ 
 +\\ 
 +\\ 
 +\\ 
 +\\ 
 +\\ 
 +\\ 
 +\\ 
 +\\ 
 +\\ 
 +\\ 
 +\\ 
 +\\ 
 +\\ 
 +
 +On clique **Parcourir...**.
 +
 +On sélectionne l'image de notre logo **-> Ouvrir**.
 +
 +Le nom du fichier de notre logo s'affiche.
 +\\ 
 +
 +**-> Enregistrer**.
 +<WRAP clear></WRAP>
 +\\ 
 +
 +{{ Images_Cahier-201-01-034.png?600}}
 +Au retour, notre logo s'affiche.
 +
 +On clique **Configuration**.
 +<WRAP clear></WRAP>
 +\\ 
 +
 +{{ Images_Cahier-201-01-035.png?600}}
 +===== Modules =====
 +
 +{{Images_icone-201-004_Triangle.png?25}} À l'écran Configuration, la mise en garde pour //Société/Institution// est disparue.
 +
 +Pour entrer les autres informations de configuration obligatoire, on clique **Modules**.
 +<WRAP clear></WRAP>
 +\\ 
 +
 +{{ Images_Cahier-201-01-036.png?600}}
 +==== Modules principaux ====
 +
 +Sous l'onglet **Modules disponibles** on a choisi tous les modules offerts pour un test de démonstration.
 +
 +On peut tout aussi bien ne choisir seulement que les modules désirés.
 +
 +{{Images_icone-201-004_Triangle.png?25}} Des icônes apparaissent dans le haut de l'écran dépendant du choix des modules.
 +
 +Lorsqu'on active un module et que l'écran ci-dessous apparaît, l'activation de ce module nécessite d'accorder manuellement, si nécessaire, les autorisations aux utilisateurs ou groupes concernés.
 +
 +{{ Images_Cahier-201-01-037.png?250 }}
 +<WRAP clear></WRAP>
 +\\ 
 +
 +{{ Images_Cahier-201-01-038.png?600}}
 +=== Module PayPal et Stripe ===
 +
 +Au paragraphe précédent, on peut activer les Modules **PayPal** et **Stripe**.
 +
 +{{Images_icone-201-003_Note.png?25}} Pour configurer ces modules, on clique l'icône {{Images_Cahier-201-01-038-A.png?20}} à la droite du module.\\ 
 +\\ 
 +
 +{{ Images_Cahier-201-01-039.png?600}}
 +Pour créer un compte PayPal ou Stripe, voir le [[nethserver_101_cahier_08_woocommerce_paypal_stripe|Cahier-08]]: //WooCommerce, PayPal & Stripe// du "Cours NethServer-101".
 +<WRAP clear></WRAP>
 +\\ 
 +
 +{{ Images_Cahier-201-01-040.png?600}}
 +==== Plus de modules... ====
 +
 +Pour rechercher des modules externes, on peut se rendre à l'adresse indiquée.
 +<WRAP clear></WRAP>
 +\\ 
 +
 +{{ Images_Cahier-201-01-041.png?600}}
 +===== Autres configurations =====
 +
 +On peut configurer tous les paramètres disponibles en cliquant les menus sous **Configuration -> Module -> Modifier**.
 +
 +{{Images_icone-201-004_Triangle.png?25}} Après avoir modifié un paramètre, il faut cliquer **Enregistrer**.
 +
 +{{ Images_Cahier-201-01-045.png?200 }}.\\ 
 +{{Images_icone-201-003_Note.png?25}} Le présent document ne donne que la configuration minimale de Dolibarr.
 +<WRAP clear></WRAP>
 +
 +{{ Images_Cahier-201-01-042.png?600}}
 +===== Sécurité =====
 +
 +{{Images_icone-201-004_Triangle.png?25}} Il faut absolument configurer, au moins, la sécurité:** Accueil -> Configuration -> Sécurité**.
 +
 +Pour de plus amples détails, voir les sections: [[nethserver_201_cahier_01_nethserver_et_dolibarr#Masque des nouveaux fichiers sous Unix/Linux/BSD/Mac]] et [[nethserver_201_cahier_01_nethserver_et_dolibarr#Chemin complet vers la commande Antivirus]].
 +<WRAP clear></WRAP>
 +\\
 +
 +{{ Images_Cahier-201-01-043.png?600}}
 +===== Langue d'affichage =====
 +
 +**Accueil -> Configuration -> Affichage -> Modifier**.
 +
 +On peut choisir une autre langue d'affichage et ajuster d'autres paramètres tels que: //**Afficher le logo dans le menu gauche**//, choisir le //**Premier jour de la semaine**//, etc...
 +<WRAP clear></WRAP>
 +\\
 +
 +{{ Images_Cahier-201-01-044.png?600}}
 +On peut aussi //**Activer l'interface multi-langue**//.
 +<WRAP clear></WRAP>
 +\\
 +
 +{{ Images_Cahier-201-01-046.png?600}}
 +===== Accueil =====
 +
 +En bas de la page d'accueil, un message nous avertit que le fichier ''conf.php'' est accessible en écriture.
 +<WRAP clear></WRAP>
 +\\
 +
 +==== Permissions du fichier conf.php ====
 +
 +On vérifie.
 +
 +<file>
 +[root@tchana ~]# ls -als /var/www/html/dolibarr/htdocs/conf/conf.php
 +
 +4 -rw-r----- 1 apache apache 1773  5 avril 15:33 /var/www/html/dolibarr/htdocs/conf/conf.php
 +[root@tchana ~]#
 +</file>
 +
 +Les permissions ne sont pas sécuritaires, on les ajuste.
 +
 +<file>
 +[root@tchana ~]# chmod 440 /var/www/html/dolibarr/htdocs/conf/conf.php
 +
 +[root@tchana ~]#
 +</file>
 +
 +On vérifie.
 +
 +<file>
 +[root@tchana ~]# ls -als /var/www/html/dolibarr/htdocs/conf/conf.php
 +
 +4 -r--r----- 1 apache apache 1773  5 avril 15:33 /var/www/html/dolibarr/htdocs/conf/conf.php
 +[root@tchana conf]#
 +</file>
 +
 +{{ Images_Cahier-201-01-047.png?600}}
 +On rafraîchit la page d'accueil.
 +
 +L'avertissement est disparu.
 +<WRAP clear></WRAP>
 +\\
 +
 +===== Redirection de page =====
 +
 +==== Fichier .htaccess du répertoire racine du site web par défaut ====
 +
 +Au paragraphe [[nethserver_201_cahier_01_nethserver_et_dolibarr#Fichier httpd.conf]], nous avons déjà modifier le fichier ''httpd.conf'' pour permettre au démon Apache de lire et d'appliquer les directives qu'il pourrait rencontrer dans les fichiers ''.htaccess'' des répertoires du site Web par défaut.
 +
 +Si nous n'avons aucun WordPress d'installer dans le site Web par défaut, nous allons y créer un fichier ''.htaccess'' pour spécifier au démon Apache de suivre les liens symboliques et de ne pas afficher les contenus des répertoires.
 +
 +L'option <wrap em>>></wrap> de la commande ''cat'' spécifie d'__ajouter__ au fichier s'il existe; ainsi, il ne détruira pas les directives qui pourraient déjà s'y trouver au cas où on aurait installer WordPress dans le répertoire du site Web par défaut.
 +
 +{{Images_icone-201-004_Triangle.png?25}} Prendre tout le contenu de l'encadré pour la commande.
 +
 +<file>
 +cat >> /var/www/html/.htaccess <<'EOT'
 +# **************************************
 +# DIRECTIVES POUR APACHE
 +
 +# Permettre au serveur de suivre les liens symboliques dans les répertoires concernés.
 +Options +FollowSymLinks
 +
 +# Empêcher d'afficher le contenu des répertoires s'ils ne contiennent aucun DirectoryIndex
 +# c'est-à-dire index.html, index.php etc...
 +Options -Indexes
 +
 +EOT
 +
 +</file>
 +\\ 
 +
 +==== Fichier .htaccess du répertoire racine de Dolibarr ====
 +
 +{{ Images_Cahier-201-01-048.png?300}}
 +Dans le répertoire racine de Dolibarr, il n'y a aucun fichier ''index.html'' ou ''index.php''. Si on spécifie seulement [[https://www.micronator-dev.org/dolibarr|https://www.micronator-dev.org/dolibarr]], Apache ne trouvant aucun fichier index de quelque sorte que ce soit dans le répertoire ''dolibarr'', retournera le message ci-contre.
 +
 +Il faudrait spécifier [[https://www.micronator-dev.org/dolibarr/htdocs|https://www.micronator-dev.org/dolibarr/htdocs]] et ainsi, Apache trouverait le fichier ''index.php'' qui lance la page d'accueil de Dolibarr.
 +
 +Habituellement, on accède à Dolibarr en spécifiant [[https://FQDN/dolibarr|https://FQDN/dolibarr]] qui est beaucoup plus explicite. Dans notre cas spécifique, ce serait: [[https://www.micronator-dev.org/dolibarr|https://www.micronator-dev.org/dolibarr]].
 +
 +Pour remédier à la situation, nous allons créer un fichier ''.htaccess'' dans le répertoire racine du site Dolibarr c.-à.-d. ''/var/www/html/dolibarr/'' et spécifier les directives pour activer la redirection et celle pour rediriger vers la page ''dolibarr/htdocs''.
 +
 +{{Images_icone-201-004_Triangle.png?25}} Prendre tout le contenu de l'encadré pour la commande.
 +
 +<file>
 +cat >> /var/www/html/dolibarr/.htaccess <<'EOT'
 +# **************************************
 +# Directive activant la redirection de page.
 +RewriteEngine On
 +
 +# Ditective redirectionnant vers la page FQDN/dolibarr/htdocs
 +RewriteRule ^$ /dolibarr/htdocs
 +# **************************************
 +
 +EOT
 +
 +</file>
 +
 +Plus d'informations sur ces directives à la page: [[https://httpd.apache.org/docs/2.4/rewrite/remapping.html|https://httpd.apache.org/docs/2.4/rewrite/remapping.html]].
 +\\ 
 +
 +==== Vérification ====
 +
 +On quitte Dolibarr en cliquant l'icône de sortie à l'extrême droite supérieure de l'écran et on vidange l'historique de notre navigateur.
 +
 +<WRAP column 30%>
 +|{{ Images_Cahier-201-01-049.png?400 }}|
 +</WRAP>
 +<WRAP column 30%>
 +|{{ Images_Cahier-201-01-050.png?400 }}|
 +</WRAP>
 +<WRAP column 30%>
 +|{{ Images_Cahier-201-01-051.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +\\
 +
 +{{ Images_Cahier-201-01-052.png?400}}
 +On se rend à la page:\\ 
 +[[https://www.micronator-dev.org/dolibarr|/https://www.micronator-dev.org/dolibarr.]].
 +
 +Nous sommes alors redirigés vers:\\ 
 + [[https://www.micronator-dev.org/dolibarr/htdocs/|https://www.micronator-dev.org/dolibarr/htdocs/]]
 +
 +Notre logo est fonctionnel.
 +
 +On entre notre justificatif d'identité **-> Se connecter**.
 +<WRAP clear></WRAP>
 +\\
 +
 +{{ Images_Cahier-201-01-053.png?600}}
 +La page du tableau de bord de Dolibarr s'affiche.
 +
 +La redirection fonctionne correctement.
 +
 +Tout est fonctionnel.
 +<WRAP clear></WRAP>
 +\\
 +
 +====== Divers ======
 +
 +===== Fichiers du journal Dolibarr =====
 +
 +Le fichier du journal de Dolibarr se trouve dans le répertoire ''documents''.
 +
 +<file>
 +[root@tchana ~]# ls -als /var/www/html/dolibarr/documents/dolibarr.log
 +
 +536 -rw-rw-r-- 1 apache apache 544797  5 avril 23:26 /var/www/html/dolibarr/documents/dolibarr.log
 +[root@tchana ~]#
 +</file>
 +
 +{{ Images_Cahier-201-01-054.png?600}}
 +===== Fichiers (Envoyer fichier) =====
 +
 +**Accueil -> Configuration -> Sécurité ->** onglet **Fichiers (Envoyer fichier)**.
 +
 +==== Taille maximum des fichiers envoyés ====
 +
 +On spécifie une limite de **2048 Ko** pour la //**Taille maximum des fichiers envoyés**//.
 +
 +{{Images_icone-201-004_Triangle.png?25}} {{Images_icone-201-004_Triangle.png?25}} Il est à noter que les fichiers téléchargés seront analysés par l'antivirus ClamAV et qu'__il accaparera 100% du temps CPU pendant le balayage des fichiers__.
 +
 +==== Masque des nouveaux fichiers sous Unix/Linux/BSD/Mac ====
 +
 +{{Images_icone-201-006_Securite.png?25}} Par mesure de sécurité, il n'est pas recommandé de donner des droits à "other". Il est donc préférable de changer le masque par défaut des nouveaux fichiers qui seront créés par Dolibarr.
 +
 +On spécifie le nombre octal <wrap em>0660</wrap> pour l'option //**Masque des nouveaux fichiers sous Unix/Linux/BSD/Mac**//. Cette valeur représente les droits de lecture et d'écriture pour le propriétaire et le groupe seulement.
 +
 +==== Chemin complet vers la commande Antivirus ====
 +
 +Il faut spécifier le chemin complet du programme antivirus que le Serveur NethServer utilise.
 +
 +Pour trouver le chemin du programme antivirus.
 +
 +<file>
 +[root@tchana ~]# which clamscan
 +
 +/usr/bin/clamscan
 +[root@tchana ~]#
 +</file>
 +
 +<WRAP column 35%>
 +**Modifier** pour enregistrer les modifications.
 +
 +On s'assure du succès de l'opération.
 +</WRAP>
 +<WRAP column 15%>
 +|{{ Images_Cahier-201-01-055.png?200 }}|
 +</WRAP>
 +<WRAP column 35%>
 +|{{ Images_Cahier-201-01-056.png?300 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +==== Test d'envoi ====
 +
 +{{ Images_Cahier-201-01-057.png?600}}
 +Nous allons télécharger un fichier pour vérifier que le module FTP de Dolibarr fonctionne  correctement.
 +
 +Au bas de la page //**Fichiers (Envoyer fichier)**// on clique **Parcourir...**
 +<WRAP clear></WRAP>
 +
 +<WRAP column 45%>
 +On sélectionne un fichier **-> Ouvrir**.
 +|{{ Images_Cahier-201-01-058.png?400 }}|
 +</WRAP>
 +<WRAP column 45%>
 +**Envoyer fichier**.
 +|{{ Images_Cahier-201-01-059.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +{{ Images_Cahier-201-01-060.png?600}}
 +Si vous recevez ce message...
 +
 +{{Images_icone-201-004_Triangle.png?25}} Ne pas essayer de recharger la page, car si Dolibarr n'a pas terminé le téléchargement, il croira que vous lui indiquez un nouveau téléchargement et va mettre ce nouveau fichier __//(le même)//__ en file d'attente à cause du rafraîchissement et lorsqu'il aura terminé le téléchargement original, va télécharger le fichier encore une fois et affichera un message indiquant que le fichier existe déjà.
 +
 +{{Images_icone-201-001_doigt.png?22}} Il est fortement préférable d'attendre patiemment. Dolibarr affichera un message à la fin du téléchargement indiquant que //**Le fichier a été correctement transféré**// et utiliser **Accueil -> Configuration -> Sécurité ->** onglet **Fichiers (Envoyer fichier)** pour retourner à la page.
 +
 +{{Images_icone-201-003_Note.png?25}} Même pour un petit fichier, le temps du balayage est relativement assez long car //ClamAV// doit relire sa configuration et surtout recharger //la volumineuse BD des virus// à chaque lancement d'un balayage.
 +
 +À la console du serveur, lancez la commande suivante.
 +
 +<file>
 +[root@tchana ~]# top -d 1
 +
 +
 +</file>
 +
 +{{ Images_Cahier-201-01-062.png?600}}
 +{{Images_icone-201-004_Triangle.png?25}} L'utilitaire ''clamscan'' est en train de balayer le fichier et il accapare 100% du temps CPU.
 +
 +Attendre quelques secondes pour que ''clamscan'' ait terminé le balayage.
 +
 +Pour **q**uitter ''top'' **-> q**.\\ 
 +Lorsque ''clamscan'' aura terminé, Dolibarr indiquera que le fichier a été correctement transféré. {{Images_Cahier-201-01-063.png?300}}
 +<WRAP clear></WRAP>
 +
 +{{ Images_Cahier-201-01-064.png?600}}
 +Le nom du fichier téléchargé apparaît sous //**Documents**//.
 +
 +On peut le supprimer en cliquant la petite corbeille à son extrême droite.
 +<WRAP clear></WRAP>
 +
 +==== Vérification ====
 +
 +On installe l'utilitaire ''locate'' pour la recherche de fichiers.
 +
 +<file>
 +[root@tchana ~]# yum install -y mlocate
 +
 +...
 +Résumé de la transaction
 +============================================================================================
 +Installation   1 Paquet
 +
 +Taille totale des téléchargements : 113 k
 +Taille d'installation : 379 k
 +...
 +Installé :
 +  mlocate.x86_64 0:0.26-8.el7
 +
 +Terminé !
 +[root@tchana ~]#
 +</file>
 +
 +On met à jour la BD de ''locate''. //(La première mise à jour peut prendre un certain temps, les suivantes ne prennent que quelques secondes seulement.)//
 +
 +<file>
 +[root@tchana ~]# updatedb
 +
 +[root@tchana ~]#
 +</file>
 +
 +On localise le fichier qu'on vient de télécharger.
 +
 +{{Images_icone-201-002_Lumiere.png?25}} Il n'est pas nécessaire de spécifier le nom complet du fichier, mais il faut respecter la case minuscule/majuscule ou utiliser l'option <wrap em>-i</wrap> pour "<wrap em>i</wrap>gnore case".
 +
 +<file>
 +[root@tchana ~]# locate NS-201_Cahier-01
 +
 +/var/www/html/dolibarr/documents/admin/temp/NS-201_Cahier-01_Dolibarr_2019-04-04_17h39.odg
 +[root@tchana ~]#
 +</file>
 +
 +On affiche les droits du fichier.
 +
 +<file>
 +[root@tchana ~]# ls -als /var/www/html/dolibarr/documents/admin/temp/NS-201_Cahier-01_Dolibarr_2019-04-04_17h39.odg
 +
 +1732 -rw-rw---- 1 apache apache 3057626  6 avril 00:09 /var/www/html/dolibarr/documents/admin/temp/NS-201_Cahier-01_Dolibarr_2019-04-04_17h39.odg
 +[root@tchana ~]#
 +</file>
 +
 +Le masque <wrap em>0660</wrap> fonctionne correctement.
 +\\ 
 +\\ 
 +
 +{{ Images_Cahier-201-01-065-A.png?600}}
 +===== Création d'un usager standard =====
 +
 +**Accueil -> Utilisateurs & Groupes -> Nouvel utilisateur ->** on entre les informations demandées **-> Créer l'utilisateur**.
 +<WRAP clear></WRAP>
 +\\
 +
 +{{ Images_Cahier-201-01-066.png?600}}
 +Le nouvel utilisateur a été créé et il est actif.
 +
 +**-> Permissions**.
 +<WRAP clear></WRAP>
 +\\
 +
 +==== Droits de Gestion Électronique de Documents (GED) ====
 +
 +Cliquer le <wrap em>+</wrap> vis à vis de toutes les lignes pour accorder ces droits au nouvel utilisateur.
 +
 +<WRAP column 45%>
 +|{{ Images_Cahier-201-01-067.png?400 }}|
 +</WRAP>
 +<WRAP column 45%>
 +|{{ Images_Cahier-201-01-068.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +\\ 
 +
 +<WRAP column 50%>
 +===== Test de téléversement de documents par un usager standard =====
 +
 +On sort de Dolibarr et on se logue en tant que le nouvel utilisateur.
 +</WRAP>
 +<WRAP column 40%>
 +{{ Images_Cahier-201-01-069.png?400 }}
 +</WRAP>
 +<WRAP clear></WRAP>
 +\\
 +
 +{{ Images_Cahier-201-01-070.png?600}}
 +L'utilisateur __toto__ doit créer un répertoire pour y téléverser ses documents dans Dolibarr.
 +
 +**Documents -> Arborescence manuelle ->** cliquer l'icône du répertoire.
 +<WRAP clear></WRAP>
 +\\
 +
 +<WRAP column 45%>
 +\\ 
 +Entrer le nom du répertoire à créer et sa description **-> Créer**.
 +|{{ Images_Cahier-201-01-071.png?400 }}|
 +</WRAP>
 +<WRAP column 45%>
 +Au retour, sélectionner le nouveau répertoire **-> Parcourir...**  pour y ajouter un fichier.
 +|{{ Images_Cahier-201-01-072.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +\\
 +
 +<WRAP column 45%>
 +Sélectionner un fichier **-> Ouvrir**.
 +|{{ Images_Cahier-201-01-073.png?400 }}|
 +</WRAP>
 +<WRAP column 45%>
 +**Envoyer fichier**. //(Peut prendre un certain temps)//.
 +|{{ Images_Cahier-201-01-074.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +{{ Images_Cahier-201-01-063.png?350}}
 +Lorsque ''clamscan'' aura terminé, Dolibarr indiquera que le fichier a été correctement transféré.\\ 
 +<wrap em>*</wrap> On s'assure du succès de l'opération.
 +<WRAP clear></WRAP>
 +
 +{{ Images_Cahier-201-01-076.png?600}}
 +Le nom du fichier apparaît sous //**Documents**//. L'utilisateur peut le supprimer en cliquant la petite corbeille à l'extrême droite.
 +
 +Le fichier est maintenant dans Dolibarr.
 +<WRAP clear></WRAP>
 +\\
 +
 +{{ Images_Cahier-201-01-077.png?600}}
 +Avec WinSCP, on voit le répertoire créé par l'utilisateur __toto__: ''/var/www/html/dolibarr/documents/ecm/RepertoireToto''.
 +
 +Dans ce répertoire se trouve le fichier téléchargé.
 +<WRAP clear></WRAP>
 +\\ 
 +
 +<WRAP centeralign>**Voilà, nous disposons d'un outil pour la gestion de notre société.**</WRAP>
 +\\
 +
 +====== Mise à jour de Dolibarr ======
 +
 +//Référence:// [[https://wiki.dolibarr.org/index.php/Installation_-_Mise_à_jour|https://wiki.dolibarr.org/index.php/Installation_-_Mise_%C3%A0_jour]].
 +
 +{{Images_icone-201-003_Note.png?25}} Nous avons un ancien instantané VirtualBox de la machine //tchana.micronator-dev.org// avec une installation de Dolibarr-__9.0.0__. Nous récupérons cet instantané que nous allons mettre a jour vers Dolibarr-__9.0.1__. Les manipulations pour mettre à jour une version de Dolibarr vers une version plus récente suit toujours la même procédure que nous allons démontrer dans cette section.
 +
 +===== Sauvegarde =====
 +
 +{{Images_icone-201-001_doigt.png?22}} Il est fortement recommandé de toujours exécuter une sauvegarde d'au moins la base de données avant de procéder à la mise à jour de Dolibarr. Voir la section [[nethserver_201_cahier_01_nethserver_et_dolibarr#Sauvegarde et restauration de la BD]] pour une sauvegarde de la BD.
 +
 +===== Préparation à la mise à jour =====
 +
 +On se rend dans le répertoire racine du site Web par défaut.
 +
 +<file>
 +[root@tchana ~]# cd /var/www/html/
 +
 +[root@tchana html]#
 +</file>
 +
 +On vérifie.
 +
 +<file>
 +[root@tchana html]# pwd
 +
 +/var/www/html
 +[root@tchana html]#
 +</file>
 +
 +On vérifie le répertoire racine de Dolibarr.
 +
 +<file>
 +[root@tchana html]# ls -ald dolibarr/
 +
 +drwxr-xr-x 8 apache apache 291  6 avril 15:58 dolibarr/
 +[root@tchana html]#
 +</file>
 +
 +==== Téléchargement d'une nouvelle version ====
 +
 +Avec un fureteur sur le poste de travail, on se rend au site:  [[https://sourceforge.net/projects/dolibarr/files/Dolibarr%20ERP-CRM/9.0.1/|https://sourceforge.net/projects/dolibarr/files/Dolibarr%20ERP-CRM/9.0.1/]]
 +
 +{{ Images_Cahier-201-01-078.png?450}}
 +On claque //(clic droit)// sur dolibarr-9.0.1.tgz **-> Copier l'adresse du lien**.
 +
 +Pour le fichier ''dolibarr-9.0.1.tgz'' le lien est: [[https://sourceforge.net/projects/dolibarr/files/Dolibarr%20ERP-CRM/9.0.1/dolibarr-9.0.1.tgz/download|https://sourceforge.net/projects/dolibarr/files/Dolibarr%20ERP-CRM/9.0.1/dolibarr-9.0.1.tgz/download]]
 +<WRAP clear></WRAP>
 +\\
 +
 +À l'écran de la session PuTTY, on entre ''wget'' suivi d'un [espace] et on clique pour coller l'adresse du lien qu'on vient de copier ci-dessus.
 +
 +<file>
 +[root@tchana html]# wget https://sourceforge.net/projects/dolibarr/files/Dolibarr%20ERP-CRM/9.0.1/dolibarr-9.0.1.tgz/download
 +
 +--2019-04-06 17:57:58--  https://sourceforge.net/projects/dolibarr/files/Dolibarr%20ERP-CRM/9.0.1/dolibarr-9.0.1.tgz/download
 +Résolution de sourceforge.net (sourceforge.net)... 216.105.38.13
 +Connexion vers sourceforge.net (sourceforge.net)|216.105.38.13|:443...connecté.
 +requête HTTP transmise, en attente de la réponse...302 Found
 +Emplacement: https://downloads.sourceforge.net/project/dolibarr/Dolibarr%20ERP-CRM/9.0.1/dolibarr-9.0.1.tgz?r=&ts=1554587878&use_mirror=superb-dca2 [suivant]
 +--2019-04-06 17:57:58--  https://downloads.sourceforge.net/project/dolibarr/Dolibarr%20ERP-CRM/9.0.1/dolibarr-9.0.1.tgz?r=&ts=1554587878&use_mirror=superb-dca2
 +Résolution de downloads.sourceforge.net (downloads.sourceforge.net)... 216.105.38.13
 +Connexion vers downloads.sourceforge.net (downloads.sourceforge.net)|216.105.38.13|:443...connecté.
 +requête HTTP transmise, en attente de la réponse...302 Found
 +Emplacement: https://superb-dca2.dl.sourceforge.net/project/dolibarr/Dolibarr%20ERP-CRM/9.0.1/dolibarr-9.0.1.tgz [suivant]
 +--2019-04-06 17:57:58--  https://superb-dca2.dl.sourceforge.net/project/dolibarr/Dolibarr%20ERP-CRM/9.0.1/dolibarr-9.0.1.tgz
 +Résolution de superb-dca2.dl.sourceforge.net (superb-dca2.dl.sourceforge.net)... 209.61.193.20
 +Connexion vers superb-dca2.dl.sourceforge.net (superb-dca2.dl.sourceforge.net)|209.61.193.20|:443...connecté.
 +requête HTTP transmise, en attente de la réponse...200 OK
 +Longueur: 49454958 (47M) [application/octet-stream]
 +Sauvegarde en : «download»
 +
 +100%[==================================================>] 49 454 958  1,79MB/  ds 26s
 +
 +2019-04-06 17:58:25 (1,80 MB/s) - «download» sauvegardé [49454958/49454958]
 +
 +[root@tchana html]#
 +</file>
 +
 +On vérifie le fichier téléchargé.
 +
 +<file>
 +[root@tchana html]# ls -als download
 +
 +48296 -rw-r--r-- 1 root root 49454958  5 mars  11:04 download
 +[root@tchana html]#
 +</file>
 +
 +==== Arrêt des connexions ====
 +
 +{{Images_icone-201-003_Note.png?25}} Si on décompresse le fichier de la nouvelle version et qu'on copie les nouveaux fichiers dans leurs destinations finales, tout usager qui accédera à une page de Dolibarr, verra la page de mise à jour et pourra la lancer lui-même et intervenir à tout moment.
 +
 +{{Images_icone-201-001_doigt.png?22}} Nous allons modifier le fichier __''.htaccess'' du répertoire racine de Dolibarr__ pour ne permettre l'accès que depuis les adresses IP du poste de travail seulement.
 +\\ 
 +
 +{{ Images_Cahier-201-01-079.png?300}}
 +==== Adresses IP du poste de travail ====
 +
 +{{Images_icone-201-002_Lumiere.png?25}} Si nous travaillons à distance, il faut connaître notre adresse IP telle que vue depuis l'Internet. Nous pouvons nous rendre à la page [[https://checkmyip.com/|https://checkmyip.com/]] qui nous indiquera cette adresse.
 +\\ 
 +
 +{{Images_icone-201-004_Triangle.png?25}} Dans notre cas, nous sommes sur le réseau LOCAL du Serveur NethServer. Il faut alors connaître l'adresse IP du poste de travail.\\ 
 +<wrap em>*</wrap> Sur le poste de travail, on ouvre un écran de commande.
 +
 +<WRAP column 35%>
 +<nowiki>-</nowiki> Clac sur le bouton  **Démarrer -> Exécuter**.
 +
 +<nowiki>-</nowiki> On entre  **cmd -> OK**.
 +</WRAP>
 +<WRAP column 20%>
 +|{{ Images_Cahier-201-01-080.png?400 }}|
 +</WRAP>
 +<WRAP column 35%>
 +|{{ Images_Cahier-201-01-081.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +On affiche les adresses IP du poste de travail
 +
 +<file>
 +C:\Users\michelandre> ipconfig
 +
 +...
 +Carte Ethernet Ethernet :
 +
 +   Suffixe DNS propre à la connexion. . . :
 +   Adresse IPv4. . . . . . . . . . . . . .: 10.10.10.81
 +   Masque de sous-réseau. . . . . . . . . : 255.255.255.0
 +   Adresse IPv4. . . . . . . . . . . . . .: 192.168.1.81
 +   Masque de sous-réseau. . . . . . . . . : 255.255.255.0
 +   Passerelle par défaut. . . . . . . . . : 10.10.10.75
 +                                       192.168.1.1
 +...
 +C:\Users\michelandre>
 +</file>
 +
 +==== Ajout des directives de restriction d'accès ====
 +
 +On ajoute les directives ci-dessous dans le fichier ''.htaccess'' du répertoire racine du Dolibarr.
 +
 +{{Images_icone-201-004_Triangle.png?25}} Prendre tout le contenu de l'encadré pour la commande.
 +
 +<file>
 +cat >> /var/www/html/dolibarr/.htaccess <<'EOT'
 +order deny,allow
 +deny from all
 +allow from 10.10.10.81
 +allow from 192.168.1.81
 +allow from 127.0.0.1
 +EOT
 +
 +</file>
 +
 +{{Images_icone-201-004_Triangle.png?25}} Si on travaille à distance, il faut remplacer les deux adresses IP du poste de travail ci-dessus, par une seule: celle indiquée par [[https://checkmyip.com/|https://checkmyip.com/]].
 +
 +<wrap em>*</wrap> On indique aussi toujours //127.0.0.1//.
 +
 +On vérifie.
 +
 +<file>
 +[root@tchana html]# tail -n 6 /var/www/html/dolibarr/.htaccess
 +
 +order deny,allow
 +deny from all
 +allow from 10.10.10.81
 +allow from 192.168.1.81
 +allow from 127.0.0.1
 +[root@tchana html]#
 +</file>
 +
 +==== Extraction du fichier ====
 +
 +On retourne à la sessions PuTTY.
 +
 +{{Images_icone-201-004_Triangle.png?25}} On vérifie que nous sommes toujours dans le répertoire racine du site Web par défaut.
 +
 +<file>
 +[root@tchana html]# pwd
 +
 +/var/www/html
 +[root@tchana html]#
 +</file>
 +
 +On extrait le fichier ''download'' dans le répertoire dolibarr en supprimant le //1er répertoire du chemin// contenu dans l'extraction.
 +
 +<file>
 +[root@tchana html]# tar -zxvf download -C dolibarr --strip-components 1
 +
 +...
 +dolibarr-9.0.1/
 +dolibarr-9.0.1/.pydevproject
 +...
 +dolibarr-9.0.1/.mailmap
 +dolibarr-9.0.1/CODE_OF_CONDUCT.md
 +[root@tchana html]#
 +</file>
 +
 +Présentement, nous n'avons aucun WordPress d'installé dans le répertoire du site Web par défaut.
 +
 +On affiche le contenu du répertoire.
 +
 +<file>
 +[root@tchana html]# ls -als
 +
 +total 48304
 +    0 drwxr-x---. 4 apache apache       74  7 avril 10:21 .
 +    0 drwxr-xr-x. 4 root   root         49  6 avril 15:27 ..
 +    4 drwxr-xr-x  8 apache apache     4096  7 avril 10:22 dolibarr
 +48296 -rw-r--r--  1 root   root   49454958  5 mars  11:04 download
 +    4 -rw-r--r--  1 root   root        337  6 avril 15:57 .htaccess
 +    0 drwxr-x---. 3 apache apache       28 18 janv. 20:26 .well-known
 +[root@tchana html]#
 +</file>
 +
 +{{Images_icone-201-003_Note.png?25}} Le répertoire ''.well-known'' est obligatoire pour la vérification des défis lancés lors de l'installation d'un certificat Let's Encrypt.
 +
 +On supprime le fichier ''download''.
 +
 +<file>
 +[root@tchana html]# rm download
 +
 +rm : supprimer fichier « download » ? y
 +[root@tchana html]#
 +</file>
 +
 +On vérifie.
 +
 +<file>
 +[root@tchana html]# ls -als
 +
 +total 8
 +0 drwxr-x---. 4 apache apache   58  7 avril 10:23 .
 +0 drwxr-xr-x. 4 root   root     49  6 avril 15:27 ..
 +4 drwxr-xr-x  8 apache apache 4096  7 avril 10:22 dolibarr
 +4 -rw-r--r--  1 root   root    337  6 avril 15:57 .htaccess
 +0 drwxr-x---. 3 apache apache   28 18 janv. 20:26 .well-known
 +[root@tchana html]#
 +</file>
 +
 +On affiche le contenu du répertoire racine de Dolibarr.
 +
 +<file>
 +[root@tchana html]# ls -als dolibarr
 +
 +total 476
 +  4 drwxr-xr-x   8 apache apache   4096  7 avril 10:22 .
 +  0 drwxr-x---.  4 apache apache     58  7 avril 10:23 ..
 +  4 drwxr-xr-x  20    500    500   4096  5 mars  10:58 build
 +296 -rw-r--r--      500    500 301797  5 mars  09:51 ChangeLog
 +  4 -rw-r--r--      500    500    249 31 oct.  07:35 .codeclimate.yml
 +  8 -rw-r--r--      500    500   5470 31 oct.  07:35 CODE_OF_CONDUCT.md
 +  4 -rw-r--r--      500    500   2080 31 oct.  07:35 composer.json
 + 64 -rw-r--r--      500    500  63478 31 oct.  07:35 composer.lock
 + 36 -rw-r--r--      500    500  35147 31 oct.  07:35 COPYING
 +  8 -rw-r--r--      500    500   5444 31 oct.  07:35 COPYRIGHT
 +  0 drwxr-xr-x      500    500    101  5 mars  10:52 dev
 +  0 drwxr-xr-x      500    500     65  5 mars  10:52 doc
 +  4 drwxr-xr-x  46 apache apache   4096  6 avril 15:54 documents
 +  4 -rw-r--r--   1 root   root      344  7 avril 10:14 .htaccess
 +  4 drwxr-xr-x  66    500    500   4096  5 mars  10:52 htdocs
 +  4 -rw-r--r--      500    500     91 31 oct.  07:35 INSTALL
 +  8 -rw-r--r--      500    500   6345 11 nov.  11:35 .mailmap
 +  4 -rw-r--r--      500    500    310  7 juin   2018 .pydevproject
 +  8 -rw-r--r--      500    500   7510  1 févr. 09:08 README-FR.md
 +  8 -rw-r--r--      500    500   8033  1 févr. 09:04 README.md
 +  4 -rw-r--r--      500    500     95 31 oct.  07:35 robots.txt
 +  0 drwxr-xr-x  16    500    500    230 17 juil.  2017 scripts
 +[root@tchana html]#
 +</file>
 +
 +On ajuste __R__écursivement le propriétaire et le groupe du répertoire racine de Dolibarr et on enlève __R__écursivement tous les droits à "other".
 +
 +<file>
 +[root@tchana html]# chown -R apache:apache dolibarr/  ;  chmod -R o-rwx dolibarr/
 +
 +[root@tchana html]#
 +</file>
 +
 +On vérifie.
 +
 +<file>
 +[root@tchana html]# ls -als dolibarr/
 +
 +total 476
 +  4 drwxr-x---   8 apache apache   4096  7 avril 10:22 .
 +  0 drwxr-x---.  4 apache apache     58  7 avril 10:23 ..
 +  4 drwxr-x---  20 apache apache   4096  5 mars  10:58 build
 +296 -rw-r-----   1 apache apache 301797  5 mars  09:51 ChangeLog
 +  4 -rw-r-----   1 apache apache    249 31 oct.  07:35 .codeclimate.yml
 +  8 -rw-r-----   1 apache apache   5470 31 oct.  07:35 CODE_OF_CONDUCT.md
 +  4 -rw-r-----   1 apache apache   2080 31 oct.  07:35 composer.json
 + 64 -rw-r-----   1 apache apache  63478 31 oct.  07:35 composer.lock
 + 36 -rw-r-----   1 apache apache  35147 31 oct.  07:35 COPYING
 +  8 -rw-r-----   1 apache apache   5444 31 oct.  07:35 COPYRIGHT
 +  0 drwxr-x---   8 apache apache    101  5 mars  10:52 dev
 +  0 drwxr-x---   5 apache apache     65  5 mars  10:52 doc
 +  4 drwxr-x---  46 apache apache   4096  6 avril 15:54 documents
 +  4 -rw-r-----   1 apache apache    344  7 avril 10:14 .htaccess
 +  4 drwxr-x---  66 apache apache   4096  5 mars  10:52 htdocs
 +  4 -rw-r-----   1 apache apache     91 31 oct.  07:35 INSTALL
 +  8 -rw-r-----   1 apache apache   6345 11 nov.  11:35 .mailmap
 +  4 -rw-r-----   1 apache apache    310  7 juin   2018 .pydevproject
 +  8 -rw-r-----   1 apache apache   7510  1 févr. 09:08 README-FR.md
 +  8 -rw-r-----   1 apache apache   8033  1 févr. 09:04 README.md
 +  4 -rw-r-----   1 apache apache     95 31 oct.  07:35 robots.txt
 +  0 drwxr-x---  16 apache apache    230 17 juil.  2017 scripts
 +[root@tchana html]#
 +</file>
 +
 +==== Suppression du fichier install.lock ====
 +
 +Pour pouvoir exécuter la mise à jour, il faut supprimer le fichier ''install.lock'' sinon, il sera impossible de procéder à celle-ci.
 +
 +<file>
 +[root@tchana html]# rm /var/www/html/dolibarr/documents/install.lock
 +
 +rm : supprimer fichier « /var/www/html/dolibarr/documents/install.lock » ? o
 +[root@tchana html]#
 +</file>
 +
 +{{ Images_Cahier-201-01-082.png?600}}
 +===== Mise à jour =====
 +
 +==== Vérification des prérequis ====
 +
 +On se rend à l'URL:
 +
 + https://Nom-du-Domaine/dolibarr/
 +
 +La version actuelle sur ce Serveur NethServer est Dolibarr __9.0.0__.
 +
 +On accepte la suggestion de l'installeur.
 +
 +On clique **Démarrer**.
 +<WRAP clear></WRAP>
 +\\
 +
 +{{ Images_Cahier-201-01-083.png?600}}
 +==== Migration du format de la base de données ====
 +
 +À l'écran qui s'affiche, tout s'est bien passé <wrap em>OK</wrap> **-> Étape suivante**.
 +<WRAP clear></WRAP>
 +\\
 +
 +{{ Images_Cahier-201-01-084.png?600}}
 +==== Migration des données ====
 +
 +//**Migration terminée**// **-> Étape suivante**.
 +<WRAP clear></WRAP>
 +\\
 +
 +{{ Images_Cahier-201-01-085.png?600}}
 +Un message s'affiche indiquant qu'il nous faut recréer le fichier install.lock.
 +<WRAP clear></WRAP>
 +
 +{{Images_icone-201-001_doigt.png?22}} "Attention, pour des raisons de sécurité, afin de bloquer une nouvelle utilisation des outils d'installation/migration, une fois l'installation terminée, il est conseillé de placer __dans le répertoire ''document''__ de Dolibarr un fichier nommé ''install.lock'' en lecture seule."
 +
 +{{ Images_Cahier-201-01-086.png?600}}
 +==== Fichier install.lock ====
 +
 +On recrée le fichier ''install.lock'' et on y insère son contenu.
 +<WRAP clear></WRAP>
 +
 +{{Images_icone-201-004_Triangle.png?25}} Prendre tout le contenu de l'encadré pour la commande.
 +
 +<file>
 +cat > /var/www/html/dolibarr/documents/install.lock <<'EOT'
 +# ************************************** 
 +# Fichier de sécurité.
 +# ************************************** 
 +EOT
 +
 +</file>
 +
 +On ajuste le propriétaire et le groupe.
 +
 +<file>
 +[root@tchana ~]# chown root:root /var/www/html/dolibarr/documents/install.lock
 +
 +[root@tchana ~]#
 +</file>
 +
 +On vérifie.
 +
 +<file>
 +[root@tchana ~]# ls -ls /var/www/html/dolibarr/documents/install.lock
 +
 +4 -r--r--r--  root root 109  7 avril 10:36 /var/www/html/dolibarr/documents/install.lock
 +[root@tchana ~]#
 +</file>
 +
 +On vérifie le contenu.
 +
 +<file>
 +[root@tchana ~]# cat /var/www/html/dolibarr/documents/install.lock
 +
 +# **************************************
 +# Fichier de sécurité.
 +# **************************************
 +[root@tchana ~]#
 +</file>
 +
 +{{Images_icone-201-004_Triangle.png?25}} Il n'y a pas de ligne vide avant la ligne __<nowiki># ******...</nowiki>__ Ci-dessus, nous avons inséré une ligne vide pour faciliter la copie de la commande.
 +\\ 
 +
 +{{ Images_Cahier-201-01-086.png?600}}
 +==== Fin de la mise à jour ====
 +
 +On retourne à l'écran de mise à jour.
 +
 +**-> Accéder à Dolibarr**.
 +<WRAP clear></WRAP>
 +\\
 +
 +<WRAP column 32%>
 +Dolibarr est maintenant à la version 9.0.1.
 +</WRAP>
 +<WRAP column 45%>
 +|{{ Images_Cahier-201-01-087.png?350 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +{{ Images_Cahier-201-01-088.png?600}}
 +===== Vérification =====
 +
 +**Accueil -> Outils d'administration -> Infos Dolibarr**.
 +
 +Tout s'est bien passé, on voit nos versions.
 +<WRAP clear></WRAP>
 +\\ 
 +
 +===== Ré-autorisation des connexions =====
 +
 +Il faut supprimer les directives, restreignant l'accès à Dolibarr, qu'on a mises en place avant l'exécution de la mise à jour.
 +
 +{{Images_icone-201-004_Triangle.png?25}} On édite le fichier ''/var/www/html/dolibarr/.htaccess'' et on supprime les lignes ajoutées au paragraphe [[nethserver_201_cahier_01_nethserver_et_dolibarr#Ajout des directives de restriction d'accès]].
 +
 +On vérifie.
 +
 +<file>
 +[root@tchana html]# cat /var/www/html/dolibarr/.htaccess
 +
 +# **************************************
 +# Directive activant la redirection de page.
 +RewriteEngine On
 +
 +# Ditective redirectionnant vers la page FQDN/dolibarr/htdocs
 +RewriteRule ^$ /dolibarr/htdocs
 +# **************************************
 +
 +[root@tchana html]#
 +</file>
 +
 +Les lignes pour la restriction d'accès ne sont plus présentes.
 +
 +<WRAP centeralign>**La mise à jour s'est bien déroulée.**</WRAP>
 +\\ 
 +
 +====== Sauvegarde et restauration de la BD ======
 +
 +{{ Images_Cahier-201-01-089.png?600}}
 +===== Sauvegarde =====
 +
 +{{Images_icone-201-004_Triangle.png?25}} Nous sommes de retour à notre machine virtuelle originale du début de ce cahier.
 +
 +Il est toujours préférable, de temps à autre ou de façon périodique, de sauvegarder la base de données de Dolibarr juste au cas où...
 +
 +**Outils d'administration -> Sauvegarde**.
 +
 +Si la BD est volumineuse, on peut utiliser une compression.
 +\\ 
 +\\ 
 +
 +**<wrap em>Étape 1</wrap>:  Base de données**
 +
 +**-> Générer sauvegarde**.
 +<WRAP clear></WRAP>
 +\\
 +
 +<WRAP column 45%>
 +\\ 
 +La sauvegarde a été générée avec succès.
 +|{{ Images_Cahier-201-01-090.png?400 }}|
 +</WRAP>
 +<WRAP column 45%>
 +La sauvegarde est conservée dans le répertoire: ''documents/admin/backup/''.
 +|{{ Images_Cahier-201-01-091.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +\\
 +
 +{{ Images_Cahier-201-01-092.png?600}}
 +==== Téléchargement ====
 +
 +On peut télécharger directement la sauvegarde en cliquant le fichier.
 +<WRAP clear></WRAP>
 +\\
 +
 +<WRAP column 45%>
 +On choisit **Enregistrer le fichier**.
 +
 +{{Images_icone-201-002_Lumiere.png?25}} On peut aussi télécharger la sauvegarde en utilisant WinSCP ou FileZilla.
 +</WRAP>
 +<WRAP column 35%>
 +|{{ Images_Cahier-201-01-093.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +On se rend dans le répertoire de stockage des sauvegardes.
 +
 +<file>
 +[root@tchana ~]# cd /var/www/html/dolibarr/documents/admin/backup
 +
 +[root@tchana backup]#
 +</file>
 +
 +On affiche le contenu du répertoire.
 +
 +<file>
 +[root@tchana backup]# ls -ls
 +
 +total 52
 +52 -rw-rw---- 1 apache apache 49789  6 avril 11:23 mysqldump_DolibarrBD_9.0.1_201904061105.sql.bz2
 +[root@tchana backup]#
 +</file>
 +
 +**<wrap em>Étape 2</wrap>:  Répertoire documents**
 +
 +{{ Images_Cahier-201-01-094.png?600}}
 +"Sauvegardez le contenu du répertoire document //(/var/www/html/dolibarr/documents)// qui contient tous les fichiers envoyés et générés. Par conséquent il contient également les fichiers dump générés à l'étape 1."
 +
 +**-> Générer sauvegarde**.
 +<WRAP clear></WRAP>
 +\\ 
 +
 +<WRAP column 45%>
 +Le répertoire archivé devra être placé en lieu sûr.
 +
 +Cette sauvegarde est plus volumineuse, car elle contient également les fichiers ''dump'' générés à l'é­ta­pe <wrap em>1</wrap>.
 +
 +On clique le fichier pour le télécharger dans le même répertoire sur le poste de travail que celle de l'étape <wrap em>1</wrap>.
 +\\ 
 +
 +</WRAP>
 +<WRAP column 45%>
 +|{{ Images_Cahier-201-01-095.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP column 45%>
 +Nos fichiers de sauvegardes sont maintenant sur le poste de travail.
 +</WRAP>
 +<WRAP column 45%>
 +|{{ Images_Cahier-201-01-096.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +==== Suppression de la sauvegarde ====
 +
 +{{Images_icone-201-006_Securite.png?25}} Après les téléchargements, il n'est pas recommandé de conserver les sauvegardes sur le serveur et il vaut mieux les supprimer.
 +
 +<WRAP column 45%>
 +<nowiki>-</nowiki> On supprime le fichier en cliquant la poubelle.
 +
 +<nowiki>-</nowiki> On s'assure du succès des opérations.
 +
 +{{ Images_Cahier-201-01-099.png?375 }}
 +</WRAP>
 +<WRAP column 45%>
 +|{{ Images_Cahier-201-01-097.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP column 45%>
 +<nowiki>-</nowiki> On supprime le fichier en cliquant la poubelle.
 +
 +<nowiki>-</nowiki> On s'assure du succès des opérations.
 +
 +{{ Images_Cahier-201-01-100.png?400 }}
 +</WRAP>
 +<WRAP column 45%>
 +|{{ Images_Cahier-201-01-098.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +\\
 +
 +{{ Images_Cahier-201-01-101.png?600}}
 +===== Restauration =====
 +
 +Pour restaurer une sauvegarde de la BD, on la téléverse de la station vers le Serveur NethServer, puis on la restaure.
 +
 +Pour connaître la commande de restauration:
 +
 +**Accueil -> Outils d'administration -> Restauration ->** cliquer **MySQL (mysql) -> Afficher commande réelle avec mot de passe en clair**.
 +<WRAP clear></WRAP>
 +\\
 +
 +{{ Images_Cahier-201-01-102.png?600}}
 +Lorsqu'on clique **MySQL (mysql)**, le panneau //**Importation MySQL**// s'affiche.
 +<WRAP clear></WRAP>
 +\\
 +
 +{{ Images_Cahier-201-01-103.png?600}}
 +Ci-dessus, si on clique **Afficher la commande réelle avec mot de passe en clair**, le mot de passe de notre BD est affiché en clair.
 +<WRAP clear></WRAP>
 +\\ 
 +
 +{{Images_icone-201-004_Triangle.png?25}} Le fichier de sauvegarde à restaurer doit être décompressé avant la restauration. La décompression enlèvera le suffixe .bz2 du nom du fichier de notre dernière sauvegarde.
 +
 +Pour la restauration de notre dernière sauvegarde, la commande de restauration sera la suivante:
 +
 +{{Images_icone-201-002_Lumiere.png?25}} La commande ''/usr/bin/mysql<wrap em>102</wrap>'' est équivalente à ''/opt/rh/rh-mariadb102/root/usr/bin/mysql''.
 +
 +<WRAP box>
 +<file>
 +/usr/bin/mysql102  DolibarrBD                                     \
 +                   -h 127.0.0.1 -P 3312                           \
 +                   -u usager_dolibarr                             \
 +                   -pmdp_dolibarr                                 \
 +                   < mysqldump_DolibarrBD_9.0.1_201904061105.sql
 +</file>
 +</WRAP>
 +
 +==== Téléversement de la sauvegarde ====
 +
 +Sur le serveur, on téléverse la sauvegarde à restaurer dans le __répertoire d'origine__.\\ 
 +{{Images_icone-201-004_Triangle.png?25}} Si nous ne sommes pas dans le répertoire de la sauvegarde, on s'y rend.
 +
 +<file>
 +[root@tchana ~]# cd /var/www/html/dolibarr/documents/admin/backup/
 +
 +[root@tchana backup]#
 +</file>
 +
 +On affiche le contenu du répertoire.
 +
 +<file>
 +[root@tchana backup]# ls -als
 +
 +total 52
 + 0 drwxrwx--x 2 apache apache    61  7 avril 12:26 .
 + 0 drwxrwx--x 5 apache apache    49  6 avril 11:46 ..
 +52 -rw-r--r-- 1 root   root   49789  6 avril 11:40 mysqldump_DolibarrBD_9.0.1_201904061105.sql.bz2
 +[root@tchana backup]#
 +</file>
 +
 +==== Décompression ====
 +
 +Si la sauvegarde est compressée, il faut commencer par la décompresser.
 +
 +=== Format Gzip ===
 +
 +Si l'extension du fichier de sauvegarde est: ''gz''.
 +
 +La commande de décompression est la suivante:
 +
 +<file>
 +gunzip mysqldump_DolibarrDB_9.0.1_201904061105.sql.gz
 +</file>
 +
 +=== Format Bzip2 ===
 +
 +Si l'extension du fichier de sauvegarde est: ''bz2''.
 +
 +La commande de décompression est la suivante:
 +
 +<file>
 +bunzip2 mysqldump_DolibarrDB_9.0.1_201904061105.sql.bz2
 +</file>
 +
 +On installe l'utilitaire //bzip2// pour pouvoir décompresser des fichiers ''bz2''.
 +
 +<file>
 +[root@tchana backup]# yum install -y bzip2
 +
 +...
 +Résumé de la transaction
 +============================================================================================
 +Installation   1 Paquet
 +
 +Taille totale des téléchargements : 52 k
 +Taille d'installation : 82 k
 +...
 +Installé :
 +  bzip2.x86_64 0:1.0.6-13.el7
 +
 +Terminé !
 +[root@tchana backup]#
 +</file>
 +
 +On décompresse la sauvegarde.
 +
 +<file>
 +[root@tchana backup]# bunzip2 mysqldump_DolibarrBD_9.0.1_201904061105.sql.bz2
 +
 +[root@tchana backup]#
 +</file>
 +
 +On vérifie le résultat.
 +
 +<file>
 +[root@tchana backup]# ls -als
 +
 +total 492
 +  0 drwxrwx--x 2 apache apache     57  7 avril 13:09 .
 +  0 drwxrwx--x 5 apache apache     49  6 avril 11:46 ..
 +492 -rw-r--r-- 1 root   root   502170  6 avril 11:40 mysqldump_DolibarrBD_9.0.1_201904061105.sql
 +[root@tchana backup]#
 +</file>
 +
 +==== Restauration ====
 +
 +Pour vérifier que la restauration sera réellement effectuée, on modifie le nom de la société.
 +
 +{{ Images_Cahier-201-01-104.png?600}}
 +**Accueil -> Configuration -> Société/Institution -> Modifier**.
 +
 +On change le nom de la Société.\\ 
 +**-> Enregistrer**.
 +<WRAP clear></WRAP>
 +
 +On restaure.
 +
 +<file>
 +[root@tchana backup]# /usr/bin/mysql102  DolibarrBD                                     \
 +                                         -h 127.0.0.1 -P 3312                           \
 +                                         -u usager_dolibarr                             \
 +                                         -pmdp_dolibarr                                 \
 +                                          < mysqldump_DolibarrBD_9.0.1_201904061105.sql
 +
 +[root@tchana backup]#
 +</file>
 +
 +==== Vérification ====
 +
 +{{ Images_Cahier-201-01-105.png?600}}
 +Après la restauration, on vérifie si le nom original de notre société est de retour.
 +
 +La restauration a pleinement fonctionnée.
 +<WRAP clear></WRAP>
 +
 +==== Suppression du fichier de sauvegarde ====
 +
 +<file>
 +[root@tchana backup]# rm mysqldump_DolibarrBD_9.0.1_201904061105.sql
 +
 +rm : supprimer fichier « mysqldump_DolibarrBD_9.0.1_201904061105.sql » ? y
 +[root@tchana backup]#
 +</file>
 +
 +On vérifie.
 +
 +<file>
 +[root@tchana backup]# ls -als
 +
 +total 0
 +0 drwxrwx--x 2 apache apache  6  7 avril 13:20 .
 +0 drwxrwx--x 5 apache apache 49  6 avril 11:46 ..
 +[root@tchana backup]#
 +</file>
 +
 +<WRAP centeralign>**La restauration s'est parfaitement déroulée.**</WRAP>
 +\\ 
 +
 +===== Vidéos sur YouTube =====
 +
 +<WRAP centeralign>
 +Matinale présentation de l'ERP CRM libre Dolibarr @Aplose @PoleREALIS #Montpellier\\ 
 +//(1h48m33 - Ajoutée le 18 janv. 2019)// [[https://www.youtube.com/watch?v=-c-qB6DLkKM|https://www.youtube.com/watch?v=-c-qB6DLkKM]]
 +
 +Conférence "What's new in 9 0" en langue française\\ 
 +//(1h21m - Ajoutée le 3 déc. 2018)// [[https://www.youtube.com/watch?v=lA9SGdfvY_Q|https://www.youtube.com/watch?v=lA9SGdfvY_Q]]
 +
 +Tutoriel-ERP Dolibarr de A à Z\\ 
 +//(55m24 - 2014)// [[https://www.youtube.com/watch?v=Lst993NUW7k|https://www.youtube.com/watch?v=Lst993NUW7k]]
 +</WRAP>
 +\\ 
 +\\ 
 +{{NS-101_002_Banniere_Victoire.png?50}}  Victoire totale, hissons la bannière de la victoire.
 +\\ 
 +
 +----
 +
 +====== Crédits ======
 +
 +© 2014-2015-2017-2018-2019  RF-232\\ 
 +Auteur: Michel-André Robillard CLP\\ 
 +Remerciement: Tous les contributeurs GNU/GPL\\ 
 +Intégré par: Michel-André Robillard CLP\\ 
 +Contact: michelandre at micronator.org
 +
 +Répertoire de ce document: <nowiki>E:\000_DocPourRF232_general\RF-232_NethServer-201\RF-232_Cours_NethServer-201-01_Dolibarr_2019-08-10_10h08.odt</nowiki>.
 +
 +Historique des modifications:
 +
 +^Version^Date^Commentaire^Auteur|
 +|0.0.1|2014-12-24|Début pour la version Dolibarr-3.6.1.|Michel-André|
 +|0.2.0|2015-12-11|Mise à jour pour la version Dolibarr-3.8.2.|Michel-André|
 +|1.0.0|2017-01-14|Mise à jour pour la version Dolibarr-4.0.3.|Michel-André|
 +|2.0.0|2017-05-28|Mise à jour complète de cette documentation.|Michel-André|
 +|3.0.0|2018-12-01|Mise à jour vers la dernière version de Dolibarr.|Michel-André|
 +|4.0.0|2019-04-03|Adaptation pour NethServer.|Michel-André|
 +|4.0.1|2019-05-06|- Ajout de l'antivirus ClamAV.\\ - Ajout pour l'inclusion du script /etc/profile.d/activer-php72.sh dans la sauvegarde des données.\\ - Il faut activer le référentiel stephdl lors de l'installation de MariaDB 10.2.\\ - Ajout du répertoire /etc/httpd/conf/ dans la sauvegarde des données.\\ - Création du fichier /etc/httpd/conf.d/z_well-known.conf et son ajout dans la sauvegarde des données.\\ - Réorganisation et ajouts dans la section Fichiers (Envoyer fichier).\\ - Corrections mineures.|Michel-André|
 +|4.0.2|2019-05-14|Erreur de lien de Renvoi dans le paragraphe Configuration/Sécurité.|Michel-André|
 +|4.1.0|2019-08-09|Ajustements pour DokuWiki.|Michel-André|
 +|12345678901| | |12345678901|
 +
 +
 +<html><hr style="width:50%; margin: 0 auto;"></html>
 +
 +===== AVIS DE NON-RESPONSABILITÉ =====
 +
 +Ce document est uniquement destiné à informer. Les informations, ainsi que les contenus et fonctionnalités de ce do­cument sont fournis sans engagement et peuvent être modifiés à tout moment. RF‑232 n'offre aucune garantie quant à l'actualité, la conformité, l'exhaustivité, la qualité et la durabilité des informations, contenus et fonctionnalités de ce document. L'accès et l'utilisation de ce document se font sous la seule responsabilité du lecteur ou de l'utilisateur.
 +
 +RF‑232 ne peut être tenu pour responsable de dommages de quelque nature que ce soit, y compris des dommages di­rects ou indirects, ainsi que des dommages consécutifs résultant de l'accès ou de l'utilisation de ce document ou de son contenu.
 +
 +Chaque internaute doit prendre toutes les mesures appropriées //(mettre à jour régulièrement son logiciel antivirus, ne pas ouvrir des documents suspects de source douteuse ou non connue)// de façon à protéger le contenu de son ordina­teur de la contamination d'éventuels virus circulant sur la Toile.
 +
 +Toute reproduction interdite
 +Vous reconnaissez et acceptez que tout le contenu de ce document, incluant mais sans s’y limiter, le texte et les images, sont protégés par le droit d’auteur, les marques de commerce, les marques de service, les brevets, les secrets industriels et les autres droits de propriété intellectuelle. Sauf autorisation expresse de RF-232, vous acceptez de ne pas vendre, délivrer une licence, louer, modifier, distribuer, copier, reproduire, transmettre, afficher publiquement, exécuter en public, publier, adapter, éditer ou créer d’oeuvres dérivées de ce document et de son contenu.
 +
 +==== Avertissement====
 +
 +Bien que nous utilisions ici un vocabulaire issu des techniques informatiques, nous ne prétendons nullement à la précision technique de tous nos propos dans ce domaine.
 +\\
 +\\