Trace: » Créer une tâche planifiée

Créer une tâche planifiée

GLPI utilise un “pseudo cron”. C'est à dire qu'il réalise les tâches automatiques tant qu'il y a une activité sur l'application (utilisateurs connectés, appels de pages etc…).

Si vous souhaitez que GLPI réalise les actions automatiques même sans activité apparente, il y a une possibilité offerte : créer une tâche planifiée qui va accéder à un fichier et ceci de façon kwasi régulière.

Vous pouvez consulter l'historique des actions automatiques réalisées par GLPI dans le fichier /files/_log/cron.log.

Sous Linux

Pré-requis avoir installé : php5-cli

Il faut insérer une tâche CRON du type dans votre crontab :

Pour lister le contenu de la crontab: crontab -u apache -l (-u apache permet d'éditer la crontab du user apache)

Pour modifier la crontab : crontab -u apache -e

*/1 * * * * /usr/bin/php5 /var/www/monsite.com/glpi/front/cron.php &>/dev/null

La ligne de commande ci-dessus n'est donnée qu'à titre d'exemple. Il vous incombe de l'adapter à votre distribution. Cette tâche doit être exécutée par le même utilisateur que le serveur web (apache ou www-data suivant la distribution). Notez bien qu'invoquer cron.php via un navigateur où wget ne fonctionne donc pas.

Cette tâche va toutes les minutes accéder au fichier cron.php, ceci va donc créer artificiellement une activité dans GLPI ce qui aura pour conséquence de déclencher les actions automatiques de GLPI.

Si vous remarquez que rien ne se passe, que le cron ne se lance pas automatiquement, vérifiez que dans le fichier

/etc/php5/cli/php.ini

L'information memory est à plus de 16Mo, 32Mo devrait suffire. Sur Ubuntu si vous utilisez IMAP il faut ajouter “extension=imap.so”. Afin de vérifier que cela fonctionne bien un petit :

tail -f /var/www/monsite.com/glpi/files/_log/cron.log

Vous permettra de voir si une activité régulière a lieu.

Installation RPM (Fedora/RHEL/CentOS) : cette tâche est créée par le RPM lors de son installation.

Sous Windows

Il faut utiliser le gestionnaire de tâches planifiées.

Créez une tache planifiée qui s'activera toutes les 5 minutes et configurez la tâche avec le lancement de l'exécutable php + chemin au cron de GLPI

Exemples :

 c:/phpbinphp.exe c:/repertoire_web/glpi/front/cron.php 

Sous Wampp

c:/wampphpphp.exe c:/wamp/www/glpi/front/cron.php

Sous Xampp

C:/(...)xampp/php/php.exe -f C:/(...)xampp/htdocs/glpi/front/cron.php

En utilisant IE (A vérifier)

Vous pouvez également procéder en utilisant le navigateur internet pour faire la requete http : il faut créer un fichier .bat contenant le code suivant (dans le cas de windows XP + internet explorer) :

start "C:/ ... /iexplore.exe" http:// votre serveur/glpi/front/cron.php  

ping -n 10 localhost >NUL

taskkill /F /IM iexplore.exe

Et planifier l'execution de ce fichier à intervales réguliers par une tache planifiée, en indiquant le chemin du fichier .bat.

Sur Windows 2003 avec le problème de charset Si vous avez des caractères illisible: Commenter la ligne:

extension=php_mysqli.dll

En:

;extension=php_mysqli.dll

Créer une tâches planifier avec comme commande:

cmd /C C:/reportoiredephp/php.exe -f C:/repertoireGLPI/front/cron.php"