Différences
Ci-dessous, les différences entre deux révisions de la page.
| 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, 12:11] bcag2 [Commandes pour gérer les tâches planifiées Cron] | 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 : | ||