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 03/02/2025, 10:06]
bcag2 [Tests] MAILTO=""
cron [Le 31/10/2025, 09:09] (Version actuelle)
90.65.51.73 [Choix de l'utilisateur Cron] inutile
Ligne 8: Ligne 8:
 **Cron** est un programme pour exécuter automatiquement des scripts, des commandes ou des logiciels à une date et une heure spécifiée précise, ou selon un cycle défini à l’avance. **Cron** est un programme pour exécuter automatiquement des scripts, des commandes ou des logiciels à une date et une heure spécifiée précise, ou selon un cycle défini à l’avance.
  
-Chaque utilisateur a un fichier **crontab**, lui permettant d'​indiquer les actions à exécuter.\\+Chaque utilisateur a un fichier **Crontab**, lui permettant d'​indiquer les actions à exécuter.\\
 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 ».
  
Ligne 23: Ligne 23:
  
 La syntaxe de Cron est plus complexe que celle d'​Anacron. La syntaxe de Cron est plus complexe que celle d'​Anacron.
 +
 +===== Choix de l'​utilisateur Cron  =====
 +Il est important de définir clairement sous quel compte utilisateur est lancé **cron**. Ce peut-être vous (votre //user//), ou ce peut-être //root// (utilisateur qui a tous les droits).
 +
 +Pour des opérations demandant normalement un mot de passe, il faudra utiliser **cron //root//**. En effet, l'​utilisateur //root// peut **tout** faire sans mot de passe. **/!\ Soyez prudents avec ces scripts, ils peuvent tout faire, y compris casser votre système !!**
 +
 +Pour des opérations en espace utilisateur (dans votre /home/), donc sans mot de passe, utilisez le **cron** de votre compte utilisateur.
 +
 +Pour lancer le **cron //root//** : **sudo crontab -e**. Pour consulter ce cron sans l'​ouvrir : **sudo contrab -l**
 +
 +Pour lancer le cron de votre espace utilisateur : **crontab -e**. Pour consulter ce cron sans l'​ouvrir : **contrab -l**
 +
 ===== Comment fonctionne Cron  ===== ===== Comment fonctionne Cron  =====
  
 Les tâches planifiées cron sont définies au niveau du système dans le fichier /​etc/​crontab et dans le dossier /​etc/​cron.d/​\\ Les tâches planifiées cron sont définies au niveau du système dans le fichier /​etc/​crontab et dans le dossier /​etc/​cron.d/​\\
-Pour modifier vos tâches planifiées tapez : **crontab -e** (lance un éditeur du fichier crontab)\\ +Pour modifier vos tâches planifiées tapez : **crontab -e** ou **sudo ​crontab -e** (lance un éditeur du fichier crontab)\\
-Les tâches définies dans **crontab** sont par principe exécutées par //​[[root|root]]//​ (l'​utilisateur avec le maximum de droits), sans demande de mot de passe. Cela permet d'​exécuter potentiellement n'​importe quelle tâche système, d'où un certain risque : soyez prudent, et abstenez-vous si vous ne maîtrisez pas bien ce que vous faites.+
  
 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 *) :
Ligne 36: Ligne 47:
     * //mois// de lancement (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// 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)     * //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 ​(précédée de '​root'​ en cas de crontab //root//.
  
 Récapitulatif des 5 premiers champs : Récapitulatif des 5 premiers champs :
Ligne 113: Ligne 124:
 Quand vous sortez de l'​éditeur,​ le nouveau fichier **crontab** sera installé. Le fichier est stocké dans ///​var/​spool/​cron/​crontabs/<​user>//​ mais doit seulement être modifié par l'​intermédiaire de la commande **crontab**. Quand vous sortez de l'​éditeur,​ le nouveau fichier **crontab** sera installé. Le fichier est stocké dans ///​var/​spool/​cron/​crontabs/<​user>//​ mais doit seulement être modifié par l'​intermédiaire de la commande **crontab**.
  
-Note : sur xubuntu, il faut auparavant indiquer que l'​utilisateur a le droit d'​utiliser crontab. Pour cela il faut créer un fichier ///​etc/​cron.allow//​ et y saisir le nom des utilisateurs autorisés à utiliser crontab.+<note important>​Il ​faut auparavant indiquer que l'​utilisateur a le droit d'​utiliser crontab.\\ 
 +Pour cela il faut créer un fichier ​**///​etc/​cron.allow//​** et y saisir le nom des utilisateurs autorisés à utiliser crontab.</​note>​
  
 L'​éditeur utilisé pour modifier la crontab peut être modifié par la commande : L'​éditeur utilisé pour modifier la crontab peut être modifié par la commande :
  • cron.1738573563.txt.gz
  • Dernière modification: Le 03/02/2025, 10:06
  • par bcag2