Planifier des tâches


DomiX Membre 35 messages
Forumeur balbutiant‚
Posté(e)
horloge.jpg

Planifier des tâches



Maîtriser le temps sous unix/linux avec le daemon crontab. Grâce à ce daemon vous pourrez executer des tâches à une date précise. Par exemple une sauvegarde journalière ou mettre à jour des statistiques toutes les 5 minutes.
[/iNFO]
[iNFO=blank] Auteur: DomiX
Difficulté©: Simple
Duré©e: time.jpg 10 minutes
Logiciels recquis: UNIX / LINUX

1.jpgPré-requis

Avant de poursuivre, assurez que les programmes suivant soient bien présents:

-le daemon cron
-la commande crontab

En général, cela fait partie du système de base. Si ces programmes ne sont pas disponibles, référez vous à la documentation d'installation de votre unix/linux.

Pour que les tâches planifiées puissent être exécutés, il faut obligatoirement que le daemon crond soit démarré. Vérifiez que le processus cron soit bien démarré avec la commande ps. Le mieux c'est de configurer son unix/linux pour lancer au démarrage le daemon cron.

2.jpgFonctionnement

Chaque utilisateur a le droit par défaut de créer sa propre crontab. Cela peut servir par exemple à nettoyer ses fichiers temporaires. L'utilisateur utilisera la commande crontab.

La création d'une tâche planifiée se compose ainsi :

a.jpgLes champs quand? et commande?

Le champ 'quand?' :

On doit indiquer 5 paramètres dans l'ordre suivant:

Paramètre : valeur acceptée
minute : 0-59
heure : 0-23
jour du mois :1-31
mois : 1-12
jour de la semaine : 0-7 (0 et 7 correspondent à dimanche)

Le champ 'commande?' :

On doit indiquer la commande à executer.

b.jpgCréer une crontab

crontab -e

A partir de là, vous pourrez ajouter autant de tâches que vous le souhaitez, suivant le modèle quand? commande?

Lister sa crontab : crontab -l
Supprimer sa crontab : crontab -r

Exemples :

- Executer une sauvegarde hebdomadaire tous les samedi du mois et de l'année à minuit
0 0 * * 6 /bin/sh backup.sh > /dev/null 2>&1

- Executer une mise à jour des statistiques mrtg toutes les 5 minutes:
*/5 * * * * /usr/local/bin/mrtg /usr/local/etc/mrtg/mrtg.cfg

3.jpgAller plus loin

Restreindre l'utilisation des crontab :

Par défaut tout le monde peut créer une crontab. Pour limiter cette utilisation, nous avons la possibilité de créer 2 fichiers: /var/cron/allow qui contient les utilisateurs autorisés et /var/cron/deny qui contient les utilisateurs interdit.

Exemple :

Restreindre l'accès à l'utilisateur 'dom' :
# echo 'dom' >> /var/cron/deny

On vérifie :
$ crontab -l
crontab: you (dom) are not allowed to use this program

Choisir son éditeur de crontab préféré. La variable d'environnement EDITOR ou VISUAL contient le chemin de votre éditeur.


DX

Partager ce message


Lien à poster
Partager sur d’autres sites
Annonces
Maintenant

Messages recommandés

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant