# -*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8 ##@creator: jclain ##@created: 15/03/2012 22:20 ##@modifier: jclain ##@changecount: 1 ##@tags: ##@title: ucrontab {{{ ucrontab: Ajouter/Supprimer une ligne dans crontab USAGE ucrontab [options] ctline OPTIONS -a Ajouter la ligne dans le fichier crontab (par défaut) -r Enlever la ligne dans le fichier crontab -u user Spécifier l'utilisateur pour lequel on modifie crontab. Par défaut, modifier le crontab de root -H host:hosts... Modifier le crontab sur les hôtes distants spécifiés. Avec l'hôte '.' ou 'localhost', la modification est faite sur l'hôte local Si l'action est -a, un script 'undo-ucrontab.sh' est créé dans le répertoire courant, qui annule la planification. Il est possible de lancer ce script le lendemain pour enlever les planifications installées. ctline Ligne de crontab de la forme 'minutes hours days months dows command' Si la ligne est de la forme halt[@hh:mm], la commande 'shutdown -h now' est planifiée pour le LENDEMAIN à hh:mm. si hh:mm n'est pas spécifié, l'arrêt est planifié pour 7:00 -t hh:mm Ignorer la partie 'minutes hours days months dows' de ctline, et la remplacer par une planification à hh:mm le LENDEMAIN. --dom dayOfMonth --month month Spécifier respectivement le jour du mois et le mois (1-12) auquel faire la planification. Par défaut, les planifications sont effectuées pour le LENDEMAIN. Il est conseillé de spécifier les deux arguments si le jour doit être fixé. -s cmdfile Spécifier un fichier, dont le contenu est utilisé pour générer le script qui est planifié. Le fichier doit contenir l'ensemble des commandes à exécuter. Le script est modifié pour s'autodétruire à la fin de son exécution. Si ce comportement n'est pas souhaité, il faut rajouter la commande 'exit 0' à la fin. -S cmd Comme -s, mais spécifier le contenu du fichier directement sur la ligne de commande. -f hostsfile Spécifier un fichier qui contient la liste des hôtes sur lesquels faire les planifications. Les options -s, -S, -H, -d, -n sont ignorées. L'option --add est valide jusqu'au premier @group du fichier. Voici le format de ce fichier: Un groupe d'hôte débute par une ligne de la forme '@group:adelay:gdelay' - adelay est le nombre de minutes à laisser passer entre les hôtes du groupe (par défaut 1) - gdelay est le nombre de minutes à laisser passer après le traitement du groupe (par défaut 15) Les autres lignes sont des hôtes sur lequels planifier l'opération, de la forme 'host:cmd' - host est un nom d'hôte pleinement qualifié, sur lequel il est possible de se connecter par clé. - cmd est une description de la commande à lancer pour effectuer l'opération planifiée. Utiliser la syntaxe '<script' pour prendre le contenu du fichier de script spécifié. Le script est copié dans un fichier temporaire sur l'hôte, et se supprime après son lancement. Sinon, la commande spécifiée est utilisée telle quelle. Si cmd n'est pas spécifié, prendre la commande par défaut donnée par ctline Les lignes vides et commençant par '#' sont ignorées La commande '@include:file' permet d'inclure un autre fichier -d Activer l'incrémentation automatique des heures de planification entre chaque hôte. Ceci permet par exemple de planifier l'arrêt d'un certain nombre de machines dans un ordre précis, en horaire décalé. Cette option est activée par défaut si ctline==halt[@time] -n Désactiver l'incrémentation automatique des heures de planification. --add ADELAY Spécifier le nombre de minutes entre chaque hôte pour l'incrémentation automatique des heures de planification. Par défaut, il y a 1 minute entre chaque hôte. --us undo-script Spécifier le nom du script qui annule la planification. Utiliser "" pour désactiver cette fonctionnalité. --fake Afficher simplement les modifications qui doivent être effectuées. }}}