Manuel:Scripts de maintenance

From MediaWiki.org
Jump to navigation Jump to search
This page is a translated version of the page Manual:Maintenance scripts and the translation is 100% complete.
Other languages:
Deutsch • ‎English • ‎dansk • ‎español • ‎français • ‎magyar • ‎polski • ‎português • ‎português do Brasil • ‎čeština • ‎русский • ‎हिन्दी • ‎中文 • ‎日本語 • ‎한국어
Community Noun project 2280.svg Utilisateurs Octicons-terminal.svg Administrateurs système Source code project 1171.svg Développeurs OOjs UI icon language-ltr.svg Traducteurs

Les scripts de maintenance sont utilisés pour réaliser des tâches administratives variées, des importations, de la maintenance, extraire des rapports et faire les mises à jour. Les scripts sont écrits en PHP et sont rangés dans le sous-répertoire maintenance des installations MediaWiki.

Il existe des dizaines de scripts avec différents niveaux d'utilité générale et de qualité. Vous devez lire soigneusement la document du script avant de l'utiliser; si un script n'a pas de documentation, prenez toutes vos précautions avant de l'utiliser.

Configuration

Les variables de configuration $wgDBadminuser et $wgDBadminpassword doivent être définies pour exécuter les scripts de maintenance qui doivent modifier la structure de la base de données (comme Manuel:Update.php ) si l'utilisateur configuré dans Manuel:$wgDBuser n'a pas assez de droits. Par ailleurs, vous pouvez passez les paramètres --dbuser et --dbpass au script. les valeurs de ces variables diffèrent en fonction du moteur de base de données utilisé pour faire fonctionner votre installation de MediaWiki. Si non initialisé, va utiliser la valeur configurée de l'utilisateur dans Manuel:$wgDBuser .

MySQL

Certains des scripts de maintenance nécessitent des autorisations pour la base de données que, pour des raisons de sécurité, le compte principal de la base de données MediaWiki peut ne pas avoir. Un compte séparé pour la base de données avec des privilèges de 'super-utilisateur' uniquement pour la base de données MediaWiki doit être créé (s'il n'existe pas déjà). Si la base de données que vous utilisez pour MediaWiki est appelée wikidb, alors le SQL suivant va créer un tel utilisateur qui peut utiliser les privilèges de super-utilisateur sur localhost. :

GRANT ALL PRIVILEGES ON wikidb.* TO 'wikidbadmin'@'localhost' IDENTIFIED BY 'strong-password';

Une fois que le compte existe, le nom du compte doit être initialisé dans la variable de configuration $wgDBadminuser. Comme les autres variables de configuration, $wgDBadminuser doivent être initialisées dans LocalSettings.php. Un mot de passe pour $wgDBadminuser doit être défini dans la variable de configuration $wgDBadminpassword.

PostgreSQL

PostgreSQL utilise un modèle différent de sécurité que MySQL et le même compte de serveur PostgreSQL utilisé pour les opérations quotidiennes sur l'installation MediaWiki doit aussi doit être utilisé pour lancer les scripts de maintenance. Ceci est nécessaire pour s'assurer que le propriétaire des nouvelles tables créées par les scripts de maintenance est initialisé correctement. Vous n'avez alors pas besoin de définir $wgDBadminuser ni $wgDBadminpassword .

Exécuter les scripts

Exemple d'adresse IP et de nom utilisateur FTP avec le mot de passe pour le site d'hébergement Godaddy.com .

Les scripts de maintenance doivent ensuite être lancés à parir de la ligne de commande. Les utilisateurs qui n'accèdent pas au serveur directement à partir de son terminal utiliseront habituellement une connection ssh. Pour les utilisateurs Linux/Unix cela se fait en utilisant le client ssh dans un shell. Pour les utilisateurs Windows l'utilisation d'une application cliente ssh telle que celle présentée ci-dessous, est nécessaire.

Program requis pour les utilisateurs Windows: PuTTY ou tout autre émulateur de terminal

Sous Nom de l'hôte (ou adresse IP) mettre l'addresse IP de votre site web hôte.
  • Etape 2: dans PuTTy, sous Nom de l'hôte (ou adresse IP) mettre l'adresse IP de votre site web hôte (contactez votre fournisseur de site web si nécessaire) et cliquez sur Ouvrir.
Sur la ligne Se connecter en tant que : entrez le nom de l'utilisateur FTP.
  • Etape 3: un écran de commande va apparaître. Sur la ligne Se connecter en tant que : entrez le nom d'utilisateur FTP.
Sur la ligne Mot de passe de l'utilisateur FTP à l'adresse IP : entrez le mot de passe FTP.
  • Etape 4: entrez le mot de passe FTP.
La ligne de commande putty.
  • Etape 5: modifiez le dossier actuel qu'il soit le sous-répertoire de maintenance. Vous pouvez entrer pwd pour voir où vous vous trouvez. Le répertoire de maintenance se trouve à la racine du dossier mediawiki.
$ cd maintenance
  • Etape 6: exécutez le script de maintenance choisi :
$ php rebuildall.php
Si vous obtenez une erreur (par exemple: php.exe n'est pas une apllication Win32 valide), essayez ce qui suit :
$ php-cgi rebuildall.php
Sous Windows, la commande est :
$ C:\path\to\php\php-win.exe C:\path\to\mediawiki\maintenance\rebuildall.php
Si votre script ne peut pas s'exécuter correctement, et génère beaucoup de messages d'erreur, la première chose à essayer est d'initialiser la variable d'environnement MW_INSTALL_PATH pour qu'elle pointe à la racine de votre installation MediaWiki. Cela aidera les scripts à trouver les fichiers nécessaires, et est particulièrement important lorsque vous exécutez les scripts de maintenance fournis par les extensions tierces.

Options standards de la ligne de commande

Presque tous les scripts PHP dans /maintenance prennent en charge plusieurs options standards :

--help
Affiche un message d'aide
--conf <path>
Emplacement de LocalSettings.php, si ce n'est pas la valeur par défaut (dans le répertoire parent du script)
--dbuser <username>
Compte de la base de données à utiliser à la place de celui spécifié dans LocalSettings.php, non utilisé pour les scripts qui n'ont pas besoin d'une connexion de base de données ou si vous utilisez le noyau de la base de données SQLite
--dbpass <password>
Mot de passe de la base de données à utiliser à la place de celui spécifié dans LocalSettings.php, non utilisé pour les scripts qui n'ont pas besoin d'une connexion de base de données ou si vous utilisez le noyau de la base de données SQLite
--globals
Génère les variables globales à l'issue du traitement à des fins de débogage
--memory-limit <value>
Définit les limies mémoire pour le script. Accepte les nombres ordinaires, les abbréviations standards de php.ini (1024K, 20M, 1G), max si aucune limite n'est imposée (utilisé par défaut si omis) et default pour ne rien changer. (introduit dans 1.17)
--quiet
Supprimer les sorties qui ne sont pas en faute
--wiki <id>
ID du wiki ID dans le cas des fermes de wikis. Peut être de la forme dbname ou dbname-prefix. LocalSettings.php sera exécuté avec les constantes MW_DB et MW_PREFIX définies en conséquence.
--profiler
Format de sortie du profiler (habituellement « text »). (introduit dans 1.22)
--mwdebug
Activer les paramètres de développement MediaWiki intégrés. (introduit dans 1.31)

Installations MediaWiki utilisant les symlinks

Dans le cas où les fichiers php MediaWiki sont des liens (symlink) vers une installation centrale vous devrez préciser dans le script de maintenance le chemin du fichier LocalSettings.php. Par exemple :

php maintenance/importImages.php --conf /var/wwwdata/website.org/wiki/LocalSettings.php /tmp/wikiimages .jpg .png .svg

Sinon vous obtiendrez cette erreur :

A copy of your installation's LocalSettings.php
must exist and be readable in the source directory.

Installations MediaWiki utilisant des paramètres partagés (de type famille)

Quelquefois, MediaWiki est installé comme une famille pour plusieurs langues et les paramètres (LocalSettings.php) sont partagés en une partie commune et une partie dépendant de la langue (voir Manual:Wiki family#Shared Settings ) où la partie commune est située en dehors du répertoire /w et accédée en utilisant un lien relatif (require_once "../ExtensionSettings.php";). Dans ce cas les scripts de maintenance ne fonctionneront pas s'ils sont lancés depuis le répertoire /w/maintenance . Exécutez les plutôt à partir du répertoire /w :

$ php maintenance/rebuildall.php

Pas d'accès au shell

Sur beaucoup d'hôtes partagés, vous n'avez pas d'accès au shell. Les extensions suivantes peuvent être utiles pour exécuter des scripts de maintenance via le web: Maintenance and MaintenanceShell .

Liste des scripts de maintenance

A la place de cette liste probablement obsolète,

Voici la liste des fichiers inclus dans le sous-répertoire maintenance situé à la racine d'une installation MediaWiki . Vous pouvez contribuer à ce manuel en maintenant cette liste, en ajoutant une description spécifique sur l'utilisation de ces fichiers et comment un administrateur doit les utiliser (exemples de ligne de commande, etc.). Soyez conscient que ceux-ci ont été créés et nommés sur une base adaptée et qu'ils peuvent présenter des problèmes d'utilisation . Veuillez ajouter ceux que vous relevez dans $1.

maintenance/

maintenance/archives

maintenance/benchmarks

maintenance/dev/includes

maintenance/language

maintenance/oracle

maintenance/storage

maintenance/term

Voir aussi