Retrouvez cet article dans : Linux Pratique 40
KCron est un outil qui permet de planifier le lancement de programmes ou scripts divers en tâche de fond, comme par exemple le démarrage ou l'arrêt de service, l'écriture de vos données de sauvegarde sur une bande ou un DVD-Rom réinscriptible, le redémarrage de votre machine, etc. KCron est en fait une simple interface graphique sous KDE pour l'outil Cron, le véritable chef d'orchestre en matière d'actions planifiées.
Cron permet d'exécuter des commandes, des programmes ou des scripts (des sortes de groupes de commande) à des dates et horaires spécifiés à l'avance, voire à intervalles réguliers (comme toutes les heures, tous les jours, tous les mois, etc.). C'est un outil particulièrement utile aux administrateurs soucieux de la maintenance de leurs parcs machine ou de leurs réseaux, mais aussi aux « simples » utilisateurs qui souhaitent s'affranchir de contraintes particulières, prévisibles et répétitives. Si l'administrateur n'aura pas trop de mal avec Cron, l'utilisateur appréciera, pour sa part, un outil comme KCron.

Fig. 1 : Le message d'accueil de KCron

Fig. 2 : L'interface simplissime de KCron
Planification d'une tâche
Au lancement de KCron, celui-ci vous accueille avec un message (Fig. 1) vous indiquant la première marche à suivre pour son usage. L'interface en elle-même est minimale, soulignant la simplicité du programme (Fig. 2).
Toutes les tâches et toutes les variables déjà mises en place apparaissent en un clin d’œil, sous forme de répertoires qu'il est possible de déplier pour en apercevoir le contenu. Un utilisateur ne peut visualiser et éditer que les tâches qu'il a mises en place, mais un administrateur peut, quant à lui, visualiser et éditer toutes les tâches mises en place par tous les utilisateurs de la machine.
L'ajout d'une nouvelle tâche est très simple : sélectionnez Tâches dans l'interface de KCron, et utilisez le bouton droit de la souris pour afficher le menu contextuel, puis, enfin, choisissez Nouveau... (alternativement, vous pouvez passer par le menu Edition > Nouveau... ou utiliser le raccourci [Ctrl]+[N]). L'éditeur de tâche fait alors son apparition (Fig. 3). Vous pourrez noter dans le champ Commentaire une description de la tâche, qui apparaîtra par la suite dans l'interface d'accueil de KCron. Le champ Programme fonctionne de deux façons différentes :

Fig. 3 : L'éditeur de tâche permet de planifier celle-ci de façon très fine.
- Saisissez une commande avec les options qui vous intéresseront comme si vous étiez dans une console.
- Utilisez le navigateur (bouton Parcourir...) pour sélectionner un programme à exécuter.
L'option Activer permet d'activer ou désactiver la tâche, tandis que l'option Silencieux oblige KCron à ne pas enregistrer dans son fichier de log la commande à exécuter ainsi que son résultat.
L'essentiel du reste de l'interface permet de planifier l'exécution du programme ainsi défini. Vous pouvez ainsi définir le ou les Mois pour lesquels le programme est exécuté, le ou les Jours du mois, le ou les Jours de la semaine, la ou les Heures du matin ou de l'après-midi, jusqu'aux Minutes d'une heure particulière ! Vous noterez toutefois que l'intervalle de temps le plus faible entre deux exécutions du même programme ne peut être inférieur à 5 minutes. Dans la rubrique Quotidien, l'option Exécuter chaque jour, aux horaires définis après, est éloquente et ne nécessite pas d'explication supplémentaire.
Vous noterez dans l'exemple de la Figure 3 que l'exécution du programme KsystemLog est prévue tous les trois mois, les 1er, 11, 21 et 31 du mois, mais aussi tous les Mercredis. Tous les mois ne comptent pas 31 jours, et le programme sera également exécuté tous les Mercredis, que ce jour tombe un 1er, un 11, etc. ou pas. En fait, KCron inspecte les jours planifiés et lance l'application dès que l'une des conditions est remplie.
Pour valider la tâche planifiée, vous cliquerez sur OK, mais vous n'oublierez pas non plus de sauvegarder votre planification entière, grâce à l'icône appropriée, le menu Fichier > Enregistrer ou le raccourci [Ctrl]+[S].
La tâche que vous venez de créer figure désormais dans la liste de KCron et sera prise en compte lorsque la prochaine condition temporelle sera atteinte.
Bien sûr, grâce aux icônes appropriées, vous pouvez couper, copier, coller des tâches, mais aussi en ajouter des nouvelles, supprimer celles existantes ou encore éditer celle qui est sélectionnée.

 Fig. 4 : Votre première tâche a bien été prise en compte !
La tâche que vous venez de créer figure désormais dans la liste de KCron et sera prise en compte lorsque la prochaine condition temporelle sera atteinte.
Bien sûr, grâce aux icônes appropriées, vous pouvez couper, copier, coller des tâches, mais aussi en ajouter des nouvelles, supprimer celles existantes ou encore éditer celle qui est sélectionnée.
Remarque
Sauvegarder après chaque modification
Lorsque vous ajoutez ou enlevez des Tâches ou des variables, les modifications apportées à la modification ne seront pas prises en compte avant que vous n'ayez sauvegardé votre session de KCron.
Quelques mots sur les variables
L'usage des variables est à réserver aux administrateurs ou aux utilisateurs avertis. KCron vous permet en effet de définir des variables d'environnement qui seront spécifiquement utilisées par les tâches planifiées. Par exemple, si vous automatisez l'envoi d'un courriel rendant compte de l'activité de KCron à une adresse particulière plutôt qu'à l'adresse par défaut de l'utilisateur, vous souhaiterez certainement ajouter une variable MAILTO.
L'ajout d'une variable n'est guère différent de celui d'une tâche : le menu contextuel accessible grâce au bouton droit de la souris, l'icône d'ajout d'un nouvel élément, le menu Fichier ou encore le raccourci clavier approprié fonctionnent tout aussi bien. Les variables disponibles apparaîtront dans un menu déroulant du champ Variable de la fenêtre qui apparaîtra alors (Fig. 5), et le champ Valeur vous permettra de personnaliser celle-ci. Le champ Commentaire permet d'annoter la variable et sera bien sûr repris dans l'interface de KCron, dans la liste des tâches et variables mises en place.

Fig. 5 : Ajout d'une variable MAILTO
Comme précédemment, une nouvelle variable ne sera prise en compte que si vous enregistrez votre session de KCron. Les
autres variables ont chacune leur intérêt propre. Par exemple, HOME permet de définir un répertoire par défaut, en lieu et place du répertoire de démarrage de l'utilisateur. PATH permet de définir le ou les chemins de recherche pour les fichiers exécutables nécessaires à certaines commandes ou tâches planifiées. Enfin, la variable SHELL permet de choisir entre les différents shells existants : sh (« Bourne shell »), bash (« Bourne again shell »), csh (« C Shell »), Tcsh (« Tenex C shell »), ksh (« Korn shell ») et zsh (« Zero shell ») en fonction de celui avec lequel vous êtes le plus à l'aise. Attention, tous ne sont pas forcément installés par votre distribution, et le nom correspond généralement à l'exécutable correspondant.
Conclusion
Si vous n'aurez pas de difficulté à planifier l'exécution de programmes qui vous intéresseront, vous remarquerez rapidement que la plupart des outils nécessiteront plusieurs arguments d'entrée pour définir précisément l'action à réaliser. Pour tirer le meilleur parti de KCron, il sera pratiquement indispensable d'apprendre à travailler (ou simplement à vous familiariser) avec la ligne de commande, dans une console ou un terminal. Ainsi, la commande tar permettra de sauvegarder sur bande des répertoires particuliers, tandis que cdrecord fera de même en spécifiant des formats de fichiers et d'éventuelles options de gravage. Souvent, vous écrirez vos propres scripts bash que vous lancerez grâce à KCron, pour une maîtrise optimale des travaux de maintenance de votre système. Linux Pratique vous invite régulièrement à découvrir les vertus de la ligne de commande. N'hésitez pas à vous y plonger pour tirer le meilleur parti de votre système.
Liens
-  La documentation complète [en] de Kcron : docs.kde.org/stable/en/kdeadmin/kcron/index.html
-  Programmation de travaux (cron et autres outils) : lea-linux.org/cached/index/Admin-admin_tools-automate.html#
-  Les bases du shell : lea-linux.org/cached/index/Shell.html
Retrouvez cet article dans : Linux Pratique 40

