Attention : vous consultez actuellement la documentation dédiée aux versions 2.x de Moodle. La documentation pour les versions 3.x de Moodle est consultable ici : Administration en ligne de commande et celle pour Moodle 4.x est consultable là : Administration en ligne de commande.

« Administration en ligne de commande » : différence entre les versions

De MoodleDocs
Aller à :navigation, rechercher
Aucun résumé des modifications
(Continuation de la traduction)
Ligne 1 : Ligne 1 :
{{Traduction}}
{{Traduction}}
If you have shell access to your web server, you may find various CLI (command line interface) scripts useful during Moodle administration. All command line tools are located in <code>admin/cli/*</code> directory. To avoid problems with access control, you should run them as the owner of the web server process. It is especially important for CLI installation and upgrade as they create new files in moodledata directory and the web server has to have write access to them. In Linux distributions, the user that runs the web server is usually apache or wwrun or httpd or something similar. As a root, you will probably want to execute Moodle CLI scripts like this:
Si vous avez accès en ligne de commande à votre serveur web, différents scripts pourront vous être utiles pour l'administration de Moodle. Les outils pré-installés en standard sont situés dans le dossier <code>admin/cli/*</code> ('''CLI''' = ''command line interface''). Des plugins fournissent leurs propres outils en ligne de commande dans des scripts situés dans leur propre dossier <code>cli</code>. Par exemple, le script de synchronisation enrol_db est situé dans enrol/db/cli/.  


     $ cd /chemin/vers/votre/moodle/dossier
Pour éviter des problèmes de contrôle d'accès, ces scripts doivent être lancés sou le nom de l'utilisateur possesseur du processus du serveur web (''apache'', ''www'', ''wwrun'', ''httpd'', etc.). Ceci est particulièrement important pour les tâches d'installation et de mise à jour en ligne de commande, puisque durant ces tâches des fichiers sont créés dans le dossier de données ''moodledata'' et que le serveur web doit y avoir accès en écriture. Si vous êtes connecté en tant que root, vous lancerez donc les scripts ainsi :
 
     $ cd /chemin/vers/votre/dossier/moodle
     $ sudo -u apache /usr/bin/php admin/cli/somescript.php --params
     $ sudo -u apache /usr/bin/php admin/cli/somescript.php --params


Ligne 9 : Ligne 11 :
     $ sudo -u apache /usr/bin/php admin/cli/install.php --help
     $ sudo -u apache /usr/bin/php admin/cli/install.php --help


== Mise à jour en ligne de commande ==
Moodle peut être mis à jour en ligne de commande. Tout comme pour le script d'installation, il y a pour la mise à jour un mode interactif et un mode non-interactif. Le script ne met pas le site en mode de maintenance. Vous devrez le faire vous-même (en ligne de commande, par exemple). En outre, le script n'effectue aucune sauvegarde (mais si vous lisez cette page, vous avez certainement mis en place vos propres scripts de sauvegarde de moodledata et de la base de données, n'est-ce-pas ?). La commande est la suivante :
    $ sudo -u apache /usr/bin/php admin/cli/upgrade.php
La mise à jour en CLI est très confortable, notamment en combinaison avec l'utilisation de Git pour télécharger le code source de Moodle (voir [[Git pour Administrateurs]]). La procédure ci-dessous montre comment mettre à jour votre site en quelques secondes, tout en préservant vos éventuelles personnalisations locales :
    $ cd /var/www/sites/moodle/htdocs/
    $ sudo -u apache /usr/bin/php admin/cli/maintenance.php --enable
    $ git pull
    $ sudo -u apache /usr/bin/php admin/cli/upgrade.php
    $ sudo -u apache /usr/bin/php admin/cli/maintenance.php --disable


== Installation en ligne de commande ==
== Installation en ligne de commande ==


Depuis Moodle 2.0, Moodle peut-être installé en ligne de commande. Il y a deux modes d'installation. En mode interactif, le scripts d'installation vous demandera toutes les données nécessaires afin de procéder à l'installation correctement. En mode non-interactif, vous devez fournir toutes les données nécessaires comme paramètres du script et le nouveau site sera créé automatiquement. Les paramètres peuvent également être passés en mode interactif, elles seront dans ce cas utilisées comme valeur par défaut durant la session interactive.
Depuis Moodle 2.0, Moodle peut-être installé en ligne de commande. Il y a deux modes d'installation. En mode interactif, le script d'installation vous demandera toutes les données nécessaires afin de procéder à l'installation correctement. En mode non-interactif, vous devez fournir toutes les données nécessaires comme paramètres du script et le nouveau site sera créé automatiquement. Les paramètres peuvent également être passés en mode interactif ; ils seront dans ce cas utilisés comme valeur par défaut durant la session interactive.


     $ sudo -u apache /usr/bin/php admin/cli/install.php --lang=fr
     $ sudo -u apache /usr/bin/php admin/cli/install.php --lang=fr
Ligne 18 : Ligne 33 :
== Mode de maintenance ==
== Mode de maintenance ==


Pour mettre votre site en mode de maintenant, vous pouvez utiliser :
Pour mettre votre site en mode de maintenance, vous pouvez utiliser :


     $ sudo -u apache /usr/bin/php admin/cli/maintenance.php --enable
     $ sudo -u apache /usr/bin/php admin/cli/maintenance.php --enable


Pour désactiver la maintenance, il suffit d'utiliser plutôt le paramètre --disable
Pour désactiver la maintenance, il suffit d'utiliser plutôt le paramètre --disable
    $ sudo -u apache /usr/bin/php admin/cli/maintenance.php --disable


== Mode hors ligne ==
== Mode hors ligne ==
Ligne 32 : Ligne 49 :


You can prepare a nice formatted HTML page to inform your users about the server being down and keep in the moodledata directory under a name like <code>climaintenance.off</code> and rename it to the <code>climaintenance.html</code> if needed.
You can prepare a nice formatted HTML page to inform your users about the server being down and keep in the moodledata directory under a name like <code>climaintenance.off</code> and rename it to the <code>climaintenance.html</code> if needed.
== Mise à jour en ligne de commande ==
Moodle can be upgraded from the command line. As with the installation script, there is either interactive or non-interactive mode of the upgrade. The script itself does not put the site into the maintenance mode, you have to do it on your own. Also, the script does not backup any data (if you read this page, you probably have some own scripts to backup your moodledata and the database, right?)
    $ sudo -u apache /usr/bin/php admin/cli/upgrade.php --non-interactive
Upgrading via command line is a very comfortable way of Moodle upgrade if you use [[CVS]] or [[Git|git]] checkout of the Moodle source code. See the following procedure how to upgrade your site within several seconds to the most recent version while preserving your eventual local customizations tracked in git repository:
    $ cd /var/www/sites/moodle/htdocs/
    $ git fetch
    $ sudo -u apache /usr/bin/php admin/cli/maintenance.php --enable
    $ git merge origin/cvshead
    $ sudo -u apache /usr/bin/php admin/cli/upgrade.php
    $ sudo -u apache /usr/bin/php admin/cli/maintenance.php --disable
=== Problèmes avec la mise à jour en ligne de commande ===
if your config.php contains information about several moodle instances (distinct moodle websites and databases sharing the same codebase), then this script will silently fail
The solution is to temporarily eliminate from config.php all but the one instance you want to upgrade
If this is a problem for the other instances (production sites), then modify the cli script to point to a copy of config.php  (which will be the one edited to contain only one moodle instance at a time)


== Modification des valeurs par défaut ==
== Modification des valeurs par défaut ==

Version du 13 avril 2013 à 10:39

Remarque : la traduction de cette page n'est pas terminée. N'hésitez pas à traduire tout ou partie de cette page ou à la compléter. Vous pouvez aussi utiliser la page de discussion pour vos recommandations et suggestions d'améliorations.

Remarque : cet article est en cours de rédaction. N'hésitez pas à le compléter. Veuillez utiliser la page de discussion ou un forum adéquat de Moodle en français pour vos recommandations et suggestions d'améliorations.


Si vous avez accès en ligne de commande à votre serveur web, différents scripts pourront vous être utiles pour l'administration de Moodle. Les outils pré-installés en standard sont situés dans le dossier admin/cli/* (CLI = command line interface). Des plugins fournissent leurs propres outils en ligne de commande dans des scripts situés dans leur propre dossier cli. Par exemple, le script de synchronisation enrol_db est situé dans enrol/db/cli/.

Pour éviter des problèmes de contrôle d'accès, ces scripts doivent être lancés sou le nom de l'utilisateur possesseur du processus du serveur web (apache, www, wwrun, httpd, etc.). Ceci est particulièrement important pour les tâches d'installation et de mise à jour en ligne de commande, puisque durant ces tâches des fichiers sont créés dans le dossier de données moodledata et que le serveur web doit y avoir accès en écriture. Si vous êtes connecté en tant que root, vous lancerez donc les scripts ainsi :

   $ cd /chemin/vers/votre/dossier/moodle
   $ sudo -u apache /usr/bin/php admin/cli/somescript.php --params

La plupart des scripts acceptent la paramètre standard --help (ou -h) pour afficher l'aide sur l'utilisation du script, par exemple :

   $ sudo -u apache /usr/bin/php admin/cli/install.php --help

Mise à jour en ligne de commande

Moodle peut être mis à jour en ligne de commande. Tout comme pour le script d'installation, il y a pour la mise à jour un mode interactif et un mode non-interactif. Le script ne met pas le site en mode de maintenance. Vous devrez le faire vous-même (en ligne de commande, par exemple). En outre, le script n'effectue aucune sauvegarde (mais si vous lisez cette page, vous avez certainement mis en place vos propres scripts de sauvegarde de moodledata et de la base de données, n'est-ce-pas ?). La commande est la suivante :

   $ sudo -u apache /usr/bin/php admin/cli/upgrade.php

La mise à jour en CLI est très confortable, notamment en combinaison avec l'utilisation de Git pour télécharger le code source de Moodle (voir Git pour Administrateurs). La procédure ci-dessous montre comment mettre à jour votre site en quelques secondes, tout en préservant vos éventuelles personnalisations locales :

   $ cd /var/www/sites/moodle/htdocs/
   $ sudo -u apache /usr/bin/php admin/cli/maintenance.php --enable
   $ git pull
   $ sudo -u apache /usr/bin/php admin/cli/upgrade.php
   $ sudo -u apache /usr/bin/php admin/cli/maintenance.php --disable

Installation en ligne de commande

Depuis Moodle 2.0, Moodle peut-être installé en ligne de commande. Il y a deux modes d'installation. En mode interactif, le script d'installation vous demandera toutes les données nécessaires afin de procéder à l'installation correctement. En mode non-interactif, vous devez fournir toutes les données nécessaires comme paramètres du script et le nouveau site sera créé automatiquement. Les paramètres peuvent également être passés en mode interactif ; ils seront dans ce cas utilisés comme valeur par défaut durant la session interactive.

   $ sudo -u apache /usr/bin/php admin/cli/install.php --lang=fr

Mode de maintenance

Pour mettre votre site en mode de maintenance, vous pouvez utiliser :

   $ sudo -u apache /usr/bin/php admin/cli/maintenance.php --enable

Pour désactiver la maintenance, il suffit d'utiliser plutôt le paramètre --disable

   $ sudo -u apache /usr/bin/php admin/cli/maintenance.php --disable

Mode hors ligne

In some situations, you may want to switch your Moodle site into offline mode so that it is not accessible via the web but you can not stop the web server completely (typically because there are other web pages and applications running there). If a file called climaintenance.html exists in the root folder of moodledata directory, Moodle will automatically display the contents of that file instead of any other page.

   $ cd /var/www/sites/moodle/moodledata/
   $ echo '<h1>Sorry, maintenance in progress</h1>' > climaintenance.html

You can prepare a nice formatted HTML page to inform your users about the server being down and keep in the moodledata directory under a name like climaintenance.off and rename it to the climaintenance.html if needed.

Modification des valeurs par défaut

Durant l'installation ou la mise à jour en ligne de commande, Moodle défini des variables d'administration à leur valeur par défaut. Vous pouvez utiliser/forcer d'autres valeurs par défaut. Voyez MDL-17850 pour les détails. En résumé, il suffit de créer un fichier local/defaults.php dans votre installation Moodle. Le format de ce fichier est le suivant :

<?php $defaults['pluginname']['settingname'] = 'settingvalue'; // pour les plugins $defaults['moodle']['settingname'] = 'settingvalue'; // pour les paramètres du cœur de Moodle

Ces valeurs par défaut sont utilisées lors de l'installation, la mise à jour, et sont affichées (comme valeur par défaut) dans les pages d'administration du site.

Réinitialiser le mot de passe

Si vous avez perdu votre mot de passe administrateur (ou souhaitez définir le mot de passe d'un autre utilisateur), vous pouvez utiliser le script reset_password.php. Ce script défini correctement le mot de passe de l'utilisateur spécifié, en tenant compte du sel de mot de passe.

   $ sudo -u apache /usr/bin/php admin/cli/reset_password.php

Conversion du moteur de stockage MySQL

Si votre site Moodle utilise la base de données MySQL et utilise par défaut le moteur de stockage MyISAM pour vos tables, vous pourriez vouloir les convertir pour utiliser un autre moteur plus performant comme InnoDB (certains diraient que vous devriez même quitter MySQL et passer à PostgreSQL ;-) ).

   $ sudo -u apache /usr/bin/php admin/cli/mysql_engine.php --engine=InnoDB

Exécution du cron en ligne de commande

Dans les versions 1.x, vous pouviez exécuter admin/cron.php soit depuis la ligne de commande, soit depuis le web. Depuis Moodle 2.0, seul le script admin/cli/cron.php peut être exécuté via la ligne de commande.