GNU/Linux >> Tutoriels Linux >  >> Panels >> Webmin

Tâches Cron planifiées

Tâches Cron planifiées répertorie les tâches planifiées explicitement ou implicitement par d'autres modules tels que Filesystem Backup. Contrairement aux commandes planifiées qui ne sont exécutées qu'une seule fois, les tâches cron planifiées sont exécutées toutes les heures, toutes les semaines ou peu importe.

Écran principal des tâches cron planifiées du module

Une tâche Cron est un terme Unix désignant une commande exécutée régulièrement par le démon cron. Chaque tâche appartient à un utilisateur Unix et s'exécute avec les autorisations de cet utilisateur. Chacun a un ensemble de minutes, d'heures, de jours, de mois et de jours de semaines sur lesquels il s'exécute, ce qui permet une flexibilité considérable dans la planification. Par exemple, un travail peut s'exécuter toutes les 10 minutes, ou à 3 heures du matin tous les jours, ou à 17 heures du lundi au vendredi en janvier, février et mars.

Les tâches cron sont très utiles pour effectuer des tâches système régulières, telles que le nettoyage des fichiers journaux, la synchronisation du type de système, la sauvegarde de fichiers, etc. La plupart des distributions Linux auront plusieurs tâches Cron qui ont été configurées par défaut dans le cadre du processus d'installation du système d'exploitation pour effectuer des opérations telles que la suppression de modules de noyau inutiles, la mise à jour de la base de données utilisée par la commande locate et la rotation des fichiers journaux.

Configuration

Les fichiers de configuration réels des tâches Cron sont stockés à différents endroits, selon qu'ils font partie d'un package inclus dans votre distribution Linux ou créés par un utilisateur. Le répertoire /var/spool/cron est destiné aux travaux créés manuellement par les utilisateurs et contient un fichier par utilisateur Unix. Le fichier /etc/crontab et les fichiers sous le répertoire /etc/cron.d contiennent des travaux qui font partie de packages, tels que ceux qui font partie de votre distribution.

Si un paquet comme 'anacron' est utilisé sur le serveur, quelques répertoires supplémentaires seront utilisés par le système cron mais passeront très probablement inaperçus par les tâches cron planifiées.

Le module Webmin pour l'édition des tâches Cron se trouve dans la catégorie Système. Lorsque vous y entrez, la page principale affiche un tableau de tous les travaux existants sur votre système, comme indiqué ci-dessous. Pour chaque action, le propriétaire, l'état actif et la commande sont répertoriés. Si la commande d'un travail est trop longue, elle sera tronquée pour s'afficher sur la page.

Contenu

Création d'une nouvelle tâche Cron

Créer/Modifier une tâche Cron

En utilisant Webmin, vous pouvez facilement créer une nouvelle tâche Cron qui s'exécutera comme n'importe quel utilisateur Unix sur votre système. Les étapes à suivre pour y parvenir sont :

  1. Sur la page principale du module, cliquez sur le lien *Créer une nouvelle tâche cron planifiée* au-dessus ou en dessous de la liste des tâches existantes. Cela vous mènera au formulaire de création d'emploi ci-dessous.
  2. Dans Exécuter la tâche cron en tant que , entrez le nom de l'utilisateur Unix sous lequel vous souhaitez que le travail s'exécute. La commande exécutée par le travail s'exécutera dans le répertoire personnel de l'utilisateur avec ses autorisations complètes.
  3. L'élément Actif ? le champ peut être défini sur Non si vous ne voulez pas que ce nouveau travail soit réellement exécuté. Ceci est utile pour créer des tâches à activer ultérieurement.
  4. Dans la Commande , entrez les commandes shell que vous souhaitez que la tâche Cron exécute. Tout comme à l'invite du shell, plusieurs commandes peuvent être saisies séparées par ;, et tous les opérateurs shell normaux tels que &tl,> et &&peuvent être utilisés. Par défaut, toute sortie de la commande sera envoyée par e-mail au propriétaire de la tâche Cron. Si vous ne voulez pas que cela se produise, assurez-vous que la sortie est redirigée vers un fichier ou /dev/null.
  5. Tout ce que vous saisissez dans la Saisie de la commande sera envoyé à la commande en tant qu'entrée lors de son exécution. Si, par exemple, votre commande était mail [email protected] , tout ce qui est entré dans le champ serait envoyé à cette adresse e-mail.
  6. Dans le Quand exécuter section , choisissez les heures et les dates auxquelles vous souhaitez que la commande s'exécute. Pour chacune des Minutes , Heures , Jours , Mois et jours de semaine options, vous pouvez choisir plusieurs heures ou dates, ou sélectionner Tous option. Par exemple :
    • Pour qu'une tâche soit exécutée à 3h15 tous les lundi et vendredi , modifiez les Minutes option sur Sélectionné et sélectionnez 15 , modifiez les Heures option sur Sélectionné et sélectionnez _3_, et les Jours de la semaine option sur Sélectionné et sélectionnez lundi et vendredi . Les jours et Mois les options resteraient sur Tous;
    • Pour qu'un travail soit exécuté toutes les minutes. Modifier chaque Minutes , Heures , Jours , Mois et jours de semaine options sur Tous . Le minimum est toutes les minutes.
  7. Cliquez sur Créer bouton pour ajouter la nouvelle tâche Cron. En supposant qu'il n'y a pas d'erreurs dans vos sélections, vous serez renvoyé à la page principale du module et votre nouveau travail devrait apparaître à côté de son propriétaire.

Modifier une tâche Cron

Les tâches Cron existantes, y compris celles créées par les utilisateurs, via Webmin ou incluses avec votre système d'exploitation, peuvent être modifiées et reprogrammées à l'aide de ce module. Soyez prudent lorsque vous éditez des travaux qui faisaient partie de votre distribution, car certains effectuent des tâches importantes telles que la troncature du serveur Web, du courrier et des fichiers journaux de connexion afin qu'ils n'utilisent pas tout votre espace disque. Pour modifier une tâche existante, les étapes à suivre sont :

  1. Sur la page principale du module, cliquez sur la commande du travail que vous souhaitez modifier. Cela vous mènera au formulaire d'édition de module, qui est similaire à l'image ci-dessus.
  2. Modifiez tous les détails de la tâche, y compris l'utilisateur, la commande, l'état actif et les heures et dates d'exécution.
  3. Lorsque vous avez terminé, cliquez sur Enregistrer bouton, et vous serez renvoyé à la page principale du module.

Les tâches Cron existantes peuvent être supprimées en suivant les étapes ci-dessus, mais en cliquant sur Supprimer bouton au lieu de Enregistrer . Vous pouvez également forcer l'exécution immédiate d'une tâche en cliquant sur le bouton *Exécuter maintenant* sur la page d'édition, ce qui exécutera la commande et affichera toute sortie qu'elle produit.

Contrôler l'accès des utilisateurs à Cron

Le module Scheduled Cron Jobs peut également être utilisé pour contrôler l'accès à la commande crontab par les utilisateurs Unix sur la ligne de commande. Cela peut être utile si tous les utilisateurs non fiables se connectent à votre système et que vous souhaitez empêcher certains d'entre eux de configurer des tâches Cron pour exécuter des commandes et prendre du temps CPU lorsqu'ils ne sont pas connectés. Habituellement, par défaut, tous les utilisateurs aura la possibilité de créer des tâches Cron, mais pour changer cela, les étapes à suivre sont :

  1. Au bas de la page principale du module, cliquez sur le lien * Contrôler l'accès des utilisateurs aux tâches cron *. Cela vous mènera à un formulaire pour entrer les noms d'utilisateur des utilisateurs qui peuvent ou ne peuvent pas utiliser Cron.
  2. Pour accorder l'accès à tous les utilisateurs, sélectionnez Autoriser tous les utilisateurs option. Pour accorder l'accès à certains utilisateurs uniquement, sélectionnez l'option *Autoriser uniquement les utilisateurs répertoriés* et saisissez leurs noms d'utilisateur dans le champ de texte. Pour donner accès à tous sauf certains utilisateurs, sélectionnez l'option Refuser uniquement les utilisateurs répertoriés option et entrez les noms d'utilisateur des personnes auxquelles vous souhaitez refuser l'accès dans le champ de texte.
  3. Lorsque vous avez terminé, cliquez sur Enregistrer bouton.

Si un utilisateur s'est vu refuser l'accès à Cron, vous ne pourrez plus utiliser le module pour créer, modifier ou supprimer des tâches lui appartenant. Cependant, les tâches existantes peuvent continuer à s'exécuter !

Options de contrôle d'accès aux modules

Comme décrit dans Utilisateurs Webmin, il est possible d'utiliser le module Utilisateurs Webmin pour contrôler les utilisateurs Unix pour lesquels un utilisateur Webmin peut modifier les tâches Cron. Pour le configurer, vous devez d'abord accorder à l'utilisateur l'accès au module, puis suivre ces étapes :

  1. Dans le module Webmin Users, cliquez sur Scheduled Cron Jobs à côté du nom de l'utilisateur que vous souhaitez restreindre.
  2. Modifier le Peut modifier la configuration du module ? champ sur Non , afin que l'utilisateur ne puisse pas modifier les commandes que Webmin appelle pour créer et modifier des travaux.
  3. Basculez vers Peut modifier les tâches cron pour champ de Tous les utilisateurs à l'une des autres options. Le plus couramment utilisé est *Utilisateurs avec UID dans la plage*, qui vous permet d'entrer un UID minimum et maximum dans les champs à côté. N'autorisez jamais un utilisateur non approuvé à accéder aux tâches Cron d'utilisateurs système tels que root ou bin, car cela lui donnera clairement un accès complet à votre système et annulera ainsi tout autre contrôle d'accès Webmin.
  4. Définissez Peut contrôler l'accès des utilisateurs à cron ? *champ à *Non , afin que l'utilisateur Webmin ne puisse pas empêcher les utilisateurs hors de son contrôle d'utiliser Cron.
  5. Cliquez sur Enregistrer bouton en bas de la page pour activer le contrôle d'accès.

Configuration du module Tâches Cron planifiées

La plupart des paramètres du module que vous pouvez afficher en cliquant sur Module Config lien sur la page principale sont définis par défaut pour correspondre au système d'exploitation installé, et varient rarement doivent être modifiés. Cependant, il existe un champ qui affecte l'interface utilisateur du module, indiqué dans le tableau ci-dessous :

Autres systèmes d'exploitation

Cron est disponible sur presque tous les systèmes Unix, avec des fonctionnalités très similaires. Cela signifie que ce module apparaît presque identique sur tous les systèmes d'exploitation, avec seulement quelques différences mineures. Sur certains, il n'y a pas d'Entrée à commander disponible lors de la création ou de la modification d'une tâche. Sur d'autres, lors du contrôle des utilisateurs ayant accès à Cron, la valeur par défaut Autoriser tous les utilisateurs l'option sera remplacée par Autoriser tous les utilisateurs sauf root ou Refuser tous les utilisateurs .

En interne, d'autres systèmes d'exploitation utilisent des répertoires différents pour stocker les tâches Cron - Solaris, par exemple, utilise /var/spool/cron/crontabs au lieu de /var/spool/cron sur Linux. La plupart des autres systèmes n'ont pas de /etc/crontab fichier ou /etc/cron.d répertoire non plus. Cependant, lorsque vous utilisez Webmin, vous n'avez pas à vous soucier de ces différences, car il connaît les chemins utilisés par d'autres variantes Unix et affiche tous les travaux Cron en utilisant la même interface, quel que soit le fichier dans lequel ils sont stockés.

Voir aussi

  • Commandes planifiées
  • Développer des tâches Cron planifiées

Webmin
  1. Tâches Cron de cluster

  2. Utilisation et politique des tâches Cron

  3. Tâches cron intensives ou tâches planifiées

  4. Comment cron planifie-t-il les tâches en interne ?

  5. Tester une tâche cron hebdomadaire

Comment configurer une tâche Cron sous Linux

Un guide du débutant sur les tâches Cron

Comment vérifier la sortie des tâches Cron chez Hostinger ?

Comment configurer les tâches cPanel Cron à partir de WHM

Comment ajouter des tâches Cron dans cPanel

Qu'est-ce qu'un travail Cron sous Linux