Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
cron [Le 20/01/2023, 16:27]
62.102.228.254 c'est bien
cron [Le 03/03/2024, 12:57] (Version actuelle)
86.202.8.12 [Distinction avec Anacron] meilleure présentation
Ligne 10: Ligne 10:
 Cron est parfois appelé « planificateur de tâches » ou « gestionnaire de tâches planifiées ». Cron est parfois appelé « planificateur de tâches » ou « gestionnaire de tâches planifiées ».
  
-====Distinction ​d'avec Anacron====+====Distinction avec Anacron====
 Cron est plutôt utilisé pour des machines à fonctionnement permanent (comme les serveurs).\\ Cron est plutôt utilisé pour des machines à fonctionnement permanent (comme les serveurs).\\
 [[Anacron]] est plutôt utilisé pour des machines à fonctionnement discontinu (comme les PC). [[Anacron]] est plutôt utilisé pour des machines à fonctionnement discontinu (comme les PC).
  
-En effetcron lance une tâche à un moment pré-déterminé (« le 14 janvier 2018 à 15h 30 »). Si la machine n'est pas allumée, la tâche n'est pas lancée, et ne le sera jamais, même après le re-démarrage. ​Elle est perdue.+Cron a plus d'​options qu'​Anacron. Comme ce dernier, il peut lancer une tâche à un intervalle déterminé : par exemple chaque 5e jour de la semaine, chaque heure, ou chaque mois. Contrairement à Anacronil peut aussi lancer ​une tâche à un moment pré-déterminé (« le 14 janvier 2018 à 15h 30 »). Limite par rapport à Anacron : si la machine n'est pas allumée, la tâche n'est pas lancée, et ne le sera jamais, même après le re-démarrage. ​__Elle ​est perdue__. Les prochaines seront évidement lancées, si la machine est allumée.
  
-[[Anacron]] utilise ​au contraire ​des indications de temps relatives (« une fois par jour / par semaine / par mois »). Si vous avez demandé une tâche toute les semaines, et que votre PC est démarré seulement au bout de 10 jours, ​anacron ​constatera le retard, et lancera donc la tâche juste après le démarrage de votre PC.+[[Anacron]] ​n'utilise ​que des indications de temps relatives (« une fois par jour / par semaine / par mois »). Autre différence d'avec Cron, Si vous avez demandé une tâche toute les semaines, et que votre PC est démarré seulement au bout de 10 jours, ​Anacron ​constatera le retard, et lancera donc la tâche juste après le démarrage de votre PC.
  
 +Les 2 logiciels peuvent être utilisés sur un PC régulièrement éteint, mais Anacron a le gros avantage de lancer tous les traitements en retard à chaque allumage du PC, même si ceux-ci sont peu nombreux. Avec Cron, des allumages PC trop intermittents risquent d'​annuler une grande partie des traitements programmés.
 ===== Comment fonctionne Cron  ===== ===== Comment fonctionne Cron  =====
  
Ligne 26: Ligne 27:
 Voici une courte description de la structure d'une entrée dans un fichier crontab. Les champs à renseigner sont __dans l'​ordre__ (un champ qu'on ne souhaite pas renseigner doit être rempli avec une *) : Voici une courte description de la structure d'une entrée dans un fichier crontab. Les champs à renseigner sont __dans l'​ordre__ (un champ qu'on ne souhaite pas renseigner doit être rempli avec une *) :
  
-    * //minute// (les minutes se numérotent de 0 à 59) +    * //​minute// ​de lancement ​(les minutes se numérotent de 0 à 59) 
-    * //heure// (les heures se numérotent de 0 à 23) +    * //​heure// ​de lancement ​(les heures se numérotent de 0 à 23) 
-    * //jours dans le mois// (les jours se numérotes de 1 à 31) +    * //jours dans le mois// ​de lancement ​(les jours se numérotes de 1 à 31) 
-    * //mois// (les mois se numérotent de 1 à 12, ou s'​énoncent par leur libellé abrégé anglais - jan ; feb ; mar ; apr ; ...) +    * //​mois// ​de lancement ​(les mois se numérotent de 1 à 12, ou s'​énoncent par leur libellé abrégé anglais - jan ; feb ; mar ; apr ; ...) 
-    * //jour de la semaine// (les jours se numérotent de 1 (lundi) à 7 (dimanche), ou s'​énoncent par leur libellé abrégé anglais - sun ; mon ; tue ; wed ; thu ; fri ; sat)+    * //jour de la semaine// ​de lancement ​(les jours se numérotent de 1 (lundi) à 7 (dimanche), ou s'​énoncent par leur libellé abrégé anglais - sun ; mon ; tue ; wed ; thu ; fri ; sat)
     * La commande à lancer.     * La commande à lancer.
  
Ligne 69: Ligne 70:
     * @midnight     * @midnight
     * @hourly     * @hourly
 +
 +Exemples de lancements de tâches :
 +
 +chaque demie-heure (***/30** est une instruction,​ pas deux)
 +<​code>​*/​30 * * * * commande</​code>​
 +
 +chaque heure, au début de l'​heure (0 minute au démarrage de l'​heure) :
 +<​code>​0 * * * * commande</​code>​
 +chaque heure, à la 30e minute de l'​heure :
 +<​code>​30 * * * * commande</​code>​
 +
 +chaque heure, mais uniquement entre 9h00 et 5h00
 +<​code>​0 9-5 * * * commande</​code>​
  
 Cf. aussi : Cf. aussi :
  
    man 5 crontab    man 5 crontab
- 
  
  
Ligne 82: Ligne 95:
 ===== Commandes pour gérer les tâches planifiées Cron ===== ===== Commandes pour gérer les tâches planifiées Cron =====
  
-Pour examiner les tâches planifiées de l'​utilisateur courant (le contenu de votre **crontab**,​ tapez :+Pour examiner les tâches planifiées de l'​utilisateur courant (le contenu de votre **crontab**), tapez :
  
 <code bash> <code bash>
Ligne 184: Ligne 197:
 Une autre façon de contrôler la bonne exécution des tâches cron est d'​utiliser sa capacité à envoyer des courriels. Une autre façon de contrôler la bonne exécution des tâches cron est d'​utiliser sa capacité à envoyer des courriels.
 Pour cela il suffit de renseigner la variable MAILTO dans votre fichier crontab, exemple : Pour cela il suffit de renseigner la variable MAILTO dans votre fichier crontab, exemple :
-<​code>​MAILTO:jean.dupont@example.com</​code>​ +<​code>​MAILTO="jean.dupont@example.com"</​code>​ 
-**Attention**,​ pour que cela fonctionne il faut que votre machine soit capable d'​envoyer des courriels.+**Attention**,​ pour que cela fonctionne il faut que votre machine soit capable d'​envoyer des courriels. ​(voir par exemple : [[msmtp|MSMTP]] ou [[postfix_systeme_satellite|Système Satellite pour Postfix]], [[exim4-satellite|Système satellite pour exim4]])
  
 Pour plus d'​informations,​ lisez les pages du //man// pour **cron** et **crontab** (le //man// est détaillé sur [[:​tutoriel:​console_ligne_de_commande|les commandes basiques]]). ​ Pour plus d'​informations,​ lisez les pages du //man// pour **cron** et **crontab** (le //man// est détaillé sur [[:​tutoriel:​console_ligne_de_commande|les commandes basiques]]). ​
  • cron.1674228460.txt.gz
  • Dernière modification: Le 20/01/2023, 16:27
  • par 62.102.228.254