Comment installer Moodle sur Ubuntu 16.04

introduction

Moodle est un système de gestion de l’apprentissage (LMS) Web populaire et à source ouverte, gratuit et facile à installer et à utiliser. Avec Moodle, vous pouvez créer et diffuser des ressources d’apprentissage telles que des cours, des lectures et des forums de discussion à des groupes d’apprenants. Moodle vous permet également de gérer les rôles des utilisateurs afin que les étudiants et les instructeurs puissent avoir différents niveaux d’accès au matériel. Une fois Moodle installé sur votre serveur Web, toute personne ayant accès à votre site peut créer et participer à un apprentissage basé sur un navigateur.

Dans ce guide, vous allez installer et configurer Moodle sur votre serveur Ubuntu 16.04. Vous allez installer et configurer tous les logiciels requis par Moodle, exécuter l’assistant de configuration, choisir un thème et créer votre premier cours.

Conditions préalables

Avant de commencer ce guide, vous aurez besoin des éléments suivants:

Étape 1 - Installez Moodle et les dépendances

Moodle s’appuie sur quelques logiciels, notamment une bibliothèque de vérification orthographique et une bibliothèque graphique. Moodle est une application PHP qui comporte également quelques dépendances supplémentaires de la bibliothèque PHP. Avant d’installer Moodle, installons toutes les bibliothèques prérequises à l’aide du gestionnaire de packages. Tout d’abord, assurez-vous d’avoir la dernière liste de paquets:

sudo apt-get update

Puis installez les dépendances de Moodle:

sudo apt-get install aspell graphviz php7.0-curl php7.0-gd php7.0-intl php7.0-ldap php7.0-mysql php7.0-pspell php7.0-xml php7.0-xmlrpc php7.0-zip

Ensuite, redémarrez le serveur Web Apache pour charger les modules que vous venez d’installer:

sudo systemctl restart apache2

Nous sommes maintenant prêts à télécharger et installer Moodle lui-même. Nous allons utiliser + curl + pour télécharger Moodle à partir du serveur de distribution officiel.

La commande suivante permet d’accéder au site Web de Moodle et d’obtenir le package compressé contenant la version complète actuelle de Moodle dans le fichier + moodle.tgz +. L’indicateur + -L + indique à + curl + de suivre les redirections.

curl -L https://download.moodle.org/download.php/direct/stable32/moodle-latest-32.tgz > moodle.tgz

Maintenant, nous pouvons décompresser le fichier avec le programme + tar + et placer les fichiers résultants dans la racine du document web:

sudo tar -xvzf moodle.tgz -C /var/www/html

Vérifiez que le répertoire + moodle + se trouve dans le répertoire racine Web de votre serveur:

ls /var/www/html

Vous devriez voir le répertoire + moodle + répertorié:

Outputindex.html  moodle

Maintenant, visualisez les fichiers dans le répertoire + moodle +:

ls /var/www/html/moodle

Vous verrez tous les fichiers et répertoires Moodle que vous venez de télécharger et décompresser:

Outputadmin           composer.json     grade          message                    README.txt
auth            composer.lock     group          mnet                       report
availability    config-dist.php   Gruntfile.js   mod                        repository
backup          config.php        help_ajax.php  my                         rss
badges          CONTRIBUTING.txt  help.php       notes                      search
behat.yml.dist  COPYING.txt       index.php      npm-shrinkwrap.json        tag
blocks          course            install        package.json               tags.txt
blog            dataformat        install.php    phpunit.xml.dist           theme
brokenfile.php  draftfile.php     INSTALL.txt    pix                        TRADEMARK.txt
cache           enrol             iplookup       plagiarism                 user
calendar        error             lang           pluginfile.php             userpix
cohort          file.php          lib            portfolio                  version.php
comment         files             local          PULL_REQUEST_TEMPLATE.txt  webservice
competency      filter            login          question
completion      githash.php       media          rating

Nous devons maintenant créer un répertoire en dehors de la racine Web pour que Moodle stocke toutes les données relatives aux cours qui seront stockées sur le serveur, mais pas dans la base de données. Il est plus sûr de créer ce répertoire en dehors de la racine Web, de sorte qu’il ne soit pas accessible directement à partir d’un navigateur. Exécutez cette commande:

sudo mkdir /var/moodledata

Puis définissez sa propriété pour s’assurer que l’utilisateur du service Web + www-data peut accéder au répertoire:

sudo chown -R www-data /var/moodledata

Ensuite, modifiez les autorisations sur le dossier afin que seul le propriétaire dispose de toutes les autorisations:

sudo chmod -R 0770 /var/moodledata

Maintenant que Moodle est installé sur votre serveur, il est temps de configurer la base de données qu’il utilisera.

Étape 2 - Configuration de la base de données

Nous devons créer la base de données MySQL sur laquelle Moodle stockera la plupart de ses données. Nous allons créer la structure attendue par le code Moodle et créer un utilisateur que Moodle utilisera pour se connecter à la base de données.

Mais nous devons d’abord apporter quelques modifications au fichier de configuration MySQL afin que notre installation MySQL soit compatible avec Moodle. Ouvrez le fichier de configuration MySQL:

sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf

Ajoutez ensuite les lignes en surbrillance suivantes à la zone ‘Paramètres de base’, qui configurent le type de stockage que les nouvelles bases de données doivent utiliser:

configuration mysql

...
[mysqld]
#
# * Basic Settings
#
user            = mysql
pid-file        = /var/run/mysqld/mysqld.pid
socket          = /var/run/mysqld/mysqld.sock
port            = 3306
basedir         = /usr
datadir         = /var/lib/mysql
tmpdir          = /tmp
lc-messages-dir = /usr/share/mysql
skip-external-locking



## Instead of skip-networking the default is now to listen only on
# localhost which is more compatible and is not less secure.
...

Enregistrez ce fichier, puis redémarrez le serveur MySQL pour recharger la configuration avec les nouveaux paramètres.

sudo systemctl restart mysql

Nous pouvons maintenant créer la base de données Moodle. Pour ce faire, vous allez interagir avec l’interface de ligne de commande MySQL. Exécutez cette commande:

mysql -u root -p

Lorsque vous y êtes invité, indiquez le mot de passe root que vous avez défini lors de l’installation de MySQL.

Une fois connecté, vous verrez l’invite + mysql> +. Exécutez la commande suivante pour créer la base de données:

CREATE DATABASE moodle DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;

Créez ensuite un utilisateur Moodle, de sorte que nous n’ayons pas à indiquer à l’application Moodle le nom de notre mot de passe root. Exécutez cette commande:

create user ''@'localhost' IDENTIFIED BY '';

Et donnez à l’utilisateur + moodler + la permission de modifier la base de données. Cet utilisateur devra créer des tables et modifier les autorisations:

GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,CREATE TEMPORARY TABLES,DROP,INDEX,ALTER ON moodle.* TO ' IDENTIFIED BY '';

Quittez maintenant l’interface de ligne de commande MySQL:

quit;

Cela prend en charge la configuration de la base de données. Maintenant, nous pouvons lancer Moodle dans un navigateur et continuer la configuration là-bas.

Étape 3 - Configuration de Moodle dans le navigateur

Pour terminer la configuration de Moodle, nous allons afficher le site dans un navigateur Web et lui fournir des détails de configuration supplémentaires. Pour que le serveur Web enregistre la configuration, nous devons modifier temporairement l’autorisation de la racine Web Moodle.

sudo chmod -R 777 /var/www/html/moodle

Ouvrez maintenant un navigateur et allez sur + http: /// moodle +. Vous verrez une page comme celle-ci.

image: https: //assets.digitalocean.com/articles/moodle_ubuntu_1604/TpIkbFk.png [Écran de configuration initial de Moodle]

Suivez ces étapes pour configurer Moodle:

  1. Définissez la langue que vous souhaitez utiliser et cliquez sur * Suivant *.

  2. Sur l’écran suivant, définissez le * Répertoire de données * sur + / var / moodledata + et cliquez sur * Suivant *.

  3. Sur la page * Choisir le pilote de base de données *, définissez * Pilote de base de données * sur * MySQL amélioré (mysqli natif) *. Puis cliquez sur * Suivant *.

  4. Sur la page * Database setting *, entrez le nom d’utilisateur et le mot de passe de l’utilisateur Moodle MySQL créé à l’étape 3. Les autres champs peuvent être laissés tels quels. Cliquer sur Suivant pour continuer.

  5. Lisez le contrat de licence et confirmez que vous acceptez ses termes en appuyant sur * Continuer. *

  6. Consultez la page * Vérifications du serveur * pour identifier les problèmes éventuels. Assurez-vous que le message «Votre environnement de serveur satisfait à toutes les exigences minimales» se trouve en bas et appuyez sur * Continuer. *

  7. Moodle installera plusieurs composants, en affichant des messages «Success» pour chacun. Faites défiler vers le bas et appuyez sur * Continuer. *

  8. Vous verrez alors une page où vous pourrez configurer votre compte d’administrateur pour Moodle.

  9. Pour * Nom d’utilisateur *, entrez ce que vous voulez et acceptez la valeur par défaut.

  10. Pour * Choisissez une méthode d’authentification *, laissez la valeur par défaut à la place.

  11. Pour * Nouveau mot de passe *, entrez le mot de passe que vous souhaitez utiliser.

  12. Pour * Email *, entrez votre adresse email.

  13. Définissez les autres champs sur les valeurs appropriées.

  14. Cliquez sur * Mettre à jour le profil *.

  15. Sur l’écran * Paramètres de la page d’accueil *, saisissez le * Nom complet du site *, le * Nom abrégé du site *, définissez un emplacement et indiquez si vous souhaitez autoriser l’auto-inscription par courrier électronique. Puis cliquez sur * Enregistrer les modifications. *

Une fois que vous avez fait cela. vous serez dirigé vers le tableau de bord de votre nouvelle installation Moodle, connecté en tant qu’utilisateur * admin *.

Faisons un autre changement mineur pour améliorer la sécurité de Moodle. Par défaut, Moodle crée des fichiers dans le dossier + / var / moodledata avec des autorisations accessibles en écriture. Réduisons cela en modifiant les autorisations par défaut utilisées par Moodle.

Ouvrez le fichier de configuration Moodle dans votre éditeur:

sudo nano /var/www/html/moodle/config.php

Localisez cette ligne:

config.php

$CFG->directorypermissions = 0777;

Changez-le comme suit:

config.php

$CFG->directorypermissions = ;

Enregistrez ensuite le fichier et quittez l’éditeur.

Enfin, réinitialisez les autorisations sur le répertoire + / var / moodledata + lui-même, car Moodle avait déjà créé des dossiers enregistrables dans le monde et au cours du processus d’installation:

sudo chmod -R 0770 /var/moodledata

Maintenant que Moodle est configuré, effectuons quelques personnalisations et créons un cours de test pour vous familiariser avec l’interface Web de Moodle.

Étape 4 - Personnalisation de Moodle et création de votre premier cours

Maintenant que votre site est en cours d’exécution, l’une des premières choses que vous souhaitiez faire de nuit est d’enregistrer votre site Moodle. Vous serez ainsi abonné à la liste de diffusion Moodle, qui vous tiendra informé des nouveautés telles que les alertes de sécurité et les nouvelles versions.

Pour vous inscrire, cliquez sur le lien * Administration du site * dans la case de gauche, puis cliquez sur * Inscription *. Remplissez ensuite le formulaire Web avec les détails appropriés. Vous pouvez également choisir de publier votre site Moodle pour que d’autres puissent le trouver.

Ensuite, changeons le thème de notre site Moodle. Sélectionnez * Administration du site *, sélectionnez l’onglet * Apparence *, puis sélectionnez * Sélecteur de thème *. Vous verrez une page ressemblant à la figure suivante, indiquant que vous utilisez actuellement le thème «Boost» sur le périphérique * Default *, qui fait référence à un navigateur Web moderne:

image: https: //assets.digitalocean.com/articles/moodle_ubuntu_1604/OWwL2P7.png [Écran de sélection de thème]

Cliquez sur le bouton * Changer de thème * pour accéder à un écran affichant d’autres thèmes disponibles. Lorsque vous cliquez sur le bouton * Utiliser le thème * sous un nom de thème, votre site Moodle utilisera ce thème pour afficher tout le contenu de votre site. Vous pouvez également choisir différents thèmes pour différents appareils, tels que des tablettes ou des téléphones.

Maintenant que votre site Moodle est proche de ce que vous souhaitez, il est temps de créer votre premier cours. Sélectionnez * Site home * dans le menu de navigation. Vous verrez une liste de cours vide et un bouton * Ajouter un nouveau cours *. Cliquez sur ce bouton pour afficher un formulaire ressemblant à la figure suivante:

image: https: //assets.digitalocean.com/articles/moodle_ubuntu_1604/L8A6scz.png [Écran de création de cours]

Renseignez les informations relatives à votre cours, y compris le nom, le nom abrégé, une description et tout autre détail pertinent. Ensuite, faites défiler vers le bas et cliquez sur * Enregistrer et afficher *.

Votre premier cours Moodle est maintenant prêt. Vous pouvez commencer à ajouter des leçons et des activités au cours en utilisant l’interface de Moodle.

Mais avant de laisser les gens s’inscrire pour suivre votre nouveau cours, vous devez vous assurer que votre installation Moodle est prête pour la production. Pour commencer, vous souhaiterez configurer un certificat TLS / SSL pour Apache afin de chiffrer le trafic entre votre serveur et vos clients. Pour ce faire, suivez le tutoriel Comment sécuriser Apache avec Encryptons sur Ubuntu 16.04. Et pour vous assurer que vos données sont protégées, assurez-vous de https://www.digitalocean.com/community/tutorials/how-to-backup-mysql-databases-on-an-ubuntu-vpsarta de sauvegarder votre base de données MySQL] périodiquement. Vous devez également sauvegarder les fichiers sur le serveur, y compris le dossier + / var / moodledata / +. Le tutoriel Comment choisir une stratégie de sauvegarde efficace pour votre VPS propose des suggestions pour sauvegarde de fichiers.

Conclusion

Dans cet article, vous avez installé et configuré Moodle sur un serveur Ubuntu 16.04. Moodle est une application Web robuste et hautement configurable. Assurez-vous de consulter la documentation Moodle et contactez la communauté mondiale d’utilisateurs et d’administrateurs Moodle pour des idées sur la façon de tirer le meilleur parti possible de celle-ci. Heureux Moodling!