Différences entre versions de « Exécuter automatiquement des scripts sous Linux »
(13 versions intermédiaires par 3 utilisateurs non affichées) | |||
Ligne 1 : | Ligne 1 : | ||
+ | <span data-link_translate_fr_title="Exécuter automatiquement des scripts sous Linux" data-link_translate_fr_url="Exécuter automatiquement des scripts sous Linux"></span>[[:fr:Exécuter automatiquement des scripts sous Linux]][[fr:Exécuter automatiquement des scripts sous Linux]] | ||
+ | <span data-link_translate_he_title="הפעל אוטומטית את קבצי ה-script תחת לינוקס" data-link_translate_he_url="%D7%94%D7%A4%D7%A2%D7%9C+%D7%90%D7%95%D7%98%D7%95%D7%9E%D7%98%D7%99%D7%AA+%D7%90%D7%AA+%D7%A7%D7%91%D7%A6%D7%99+%D7%94-script+%D7%AA%D7%97%D7%AA+%D7%9C%D7%99%D7%A0%D7%95%D7%A7%D7%A1"></span>[[:he:הפעל אוטומטית את קבצי ה-script תחת לינוקס]][[he:הפעל אוטומטית את קבצי ה-script תחת לינוקס]] | ||
+ | <span data-link_translate_ro_title="Rula automat script-uri sub Linux" data-link_translate_ro_url="Rula+automat+script-uri+sub+Linux"></span>[[:ro:Rula automat script-uri sub Linux]][[ro:Rula automat script-uri sub Linux]] | ||
+ | <span data-link_translate_ru_title="Автоматически запускать скрипты под Linux" data-link_translate_ru_url="%D0%90%D0%B2%D1%82%D0%BE%D0%BC%D0%B0%D1%82%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8+%D0%B7%D0%B0%D0%BF%D1%83%D1%81%D0%BA%D0%B0%D1%82%D1%8C+%D1%81%D0%BA%D1%80%D0%B8%D0%BF%D1%82%D1%8B+%D0%BF%D0%BE%D0%B4+Linux"></span>[[:ru:Автоматически запускать скрипты под Linux]][[ru:Автоматически запускать скрипты под Linux]] | ||
+ | <span data-link_translate_pl_title="Automatycznie uruchamiać skrypty pod Linuksem" data-link_translate_pl_url="Automatycznie+uruchamia%C4%87+skrypty+pod+Linuksem"></span>[[:pl:Automatycznie uruchamiać skrypty pod Linuksem]][[pl:Automatycznie uruchamiać skrypty pod Linuksem]] | ||
+ | <span data-link_translate_ja_title="Linux のスクリプトを自動的に実行します。" data-link_translate_ja_url="Linux+%E3%81%AE%E3%82%B9%E3%82%AF%E3%83%AA%E3%83%97%E3%83%88%E3%82%92%E8%87%AA%E5%8B%95%E7%9A%84%E3%81%AB%E5%AE%9F%E8%A1%8C%E3%81%97%E3%81%BE%E3%81%99%E3%80%82"></span>[[:ja:Linux のスクリプトを自動的に実行します。]][[ja:Linux のスクリプトを自動的に実行します。]] | ||
<span data-link_translate_ar_title="تلقائياً بتشغيل البرامج النصية تحت لينكس" data-link_translate_ar_url="%D8%AA%D9%84%D9%82%D8%A7%D8%A6%D9%8A%D8%A7%D9%8B+%D8%A8%D8%AA%D8%B4%D8%BA%D9%8A%D9%84+%D8%A7%D9%84%D8%A8%D8%B1%D8%A7%D9%85%D8%AC+%D8%A7%D9%84%D9%86%D8%B5%D9%8A%D8%A9+%D8%AA%D8%AD%D8%AA+%D9%84%D9%8A%D9%86%D9%83%D8%B3"></span>[[:ar:تلقائياً بتشغيل البرامج النصية تحت لينكس]][[ar:تلقائياً بتشغيل البرامج النصية تحت لينكس]] | <span data-link_translate_ar_title="تلقائياً بتشغيل البرامج النصية تحت لينكس" data-link_translate_ar_url="%D8%AA%D9%84%D9%82%D8%A7%D8%A6%D9%8A%D8%A7%D9%8B+%D8%A8%D8%AA%D8%B4%D8%BA%D9%8A%D9%84+%D8%A7%D9%84%D8%A8%D8%B1%D8%A7%D9%85%D8%AC+%D8%A7%D9%84%D9%86%D8%B5%D9%8A%D8%A9+%D8%AA%D8%AD%D8%AA+%D9%84%D9%8A%D9%86%D9%83%D8%B3"></span>[[:ar:تلقائياً بتشغيل البرامج النصية تحت لينكس]][[ar:تلقائياً بتشغيل البرامج النصية تحت لينكس]] | ||
<span data-link_translate_zh_title="自动运行在 Linux 下的脚本" data-link_translate_zh_url="%E8%87%AA%E5%8A%A8%E8%BF%90%E8%A1%8C%E5%9C%A8+Linux+%E4%B8%8B%E7%9A%84%E8%84%9A%E6%9C%AC"></span>[[:zh:自动运行在 Linux 下的脚本]][[zh:自动运行在 Linux 下的脚本]] | <span data-link_translate_zh_title="自动运行在 Linux 下的脚本" data-link_translate_zh_url="%E8%87%AA%E5%8A%A8%E8%BF%90%E8%A1%8C%E5%9C%A8+Linux+%E4%B8%8B%E7%9A%84%E8%84%9A%E6%9C%AC"></span>[[:zh:自动运行在 Linux 下的脚本]][[zh:自动运行在 Linux 下的脚本]] | ||
Ligne 7 : | Ligne 13 : | ||
<span data-link_translate_es_title="Ejecutar automáticamente secuencias de comandos en Linux" data-link_translate_es_url="Ejecutar+autom%C3%A1ticamente+secuencias+de+comandos+en+Linux"></span>[[:es:Ejecutar automáticamente secuencias de comandos en Linux]][[es:Ejecutar automáticamente secuencias de comandos en Linux]] | <span data-link_translate_es_title="Ejecutar automáticamente secuencias de comandos en Linux" data-link_translate_es_url="Ejecutar+autom%C3%A1ticamente+secuencias+de+comandos+en+Linux"></span>[[:es:Ejecutar automáticamente secuencias de comandos en Linux]][[es:Ejecutar automáticamente secuencias de comandos en Linux]] | ||
<span data-link_translate_en_title="Automatically run scripts under Linux" data-link_translate_en_url="Automatically+run+scripts+under+Linux"></span>[[:en:Automatically run scripts under Linux]][[en:Automatically run scripts under Linux]] | <span data-link_translate_en_title="Automatically run scripts under Linux" data-link_translate_en_url="Automatically+run+scripts+under+Linux"></span>[[:en:Automatically run scripts under Linux]][[en:Automatically run scripts under Linux]] | ||
− | |||
− | |||
− | == | + | {{#seo: |
− | + | |title=Exécuter automatiquement des scripts sous Linux. | |
− | < | + | |title_mode=append |
− | + | |keywords=these,are,your,keywords | |
− | < | + | |description=Découvrez dans cet article comment exécuter automatiquement des scripts sous Linux grâce. Vous y trouverez le fonctionnement de "cron" ainsi que la création de tâche planifiée récurrente avec ''crontab''. |
− | + | |image=Uploaded_file.png | |
+ | |image_alt=Wiki Logo | ||
+ | }} | ||
+ | |||
+ | |||
+ | Cet article explique le fonctionnement de ''cron'' et comment créer une tâche planifiée récurrente avec ''crontab''. | ||
+ | |||
+ | == Le fonctionnement de Cron == | ||
+ | |||
+ | === Vérification === | ||
+ | Le service ''cron'' s'exécute au démarrage de la machine et lance les lignes de commandes en fonction de ce qui est renseigné dans ses fichiers de configuration. | ||
+ | |||
+ | Pour vérifier que le service ''cron'' est fonctionnel, lancez la commande : | ||
+ | <pre>$ systemctl status cron.service</pre> | ||
+ | |||
+ | === Installation === | ||
+ | [[Fichier:Crontab.png|650px|vignette|droite|Contenu du fichier <code>/etc/crontab</code> par défaut]] | ||
+ | |||
+ | Dans de très rare cas, le service ''cron'' n'est pas installé par défaut sur le système. | ||
+ | |||
+ | Pour un système Debian/Ubuntu : | ||
+ | <pre>$ sudo apt install cron</pre> | ||
+ | |||
+ | Pour un système Centos : | ||
+ | <pre>$ sudo dnf install cronie</pre> | ||
+ | |||
+ | === Fichiers et dossiers de configuration === | ||
+ | Le fichier de configuration principal est <code>/etc/crontab</code>. | ||
+ | |||
+ | Il est par défaut configuré pour exécuter avec l'utilisateur ''root'' les scripts stockés dans ces dossiers : | ||
+ | * <code>/etc/cron.hourly</code> : Toutes les heures | ||
+ | * <code>/etc/cron.daily</code> : Tous les jours | ||
+ | * <code>/etc/cron.weekly</code> : Toutes les semaines | ||
+ | * <code>/etc/cron.monthly</code> : Tous les mois | ||
+ | |||
+ | == Ajouter une tâche == | ||
+ | Pour ajouter une tâche, il n'est pas conseillé de modifier directement le fichier <code>/etc/crontab</code>. | ||
+ | |||
+ | Pour cela, nous préférerons utiliser la commande ''crontab'' qui modifiera le fichier après une avoir vérifié la syntaxe. | ||
+ | |||
+ | === Utilisation de ''crontab''=== | ||
+ | |||
+ | ;crontab -l : Lister les planifications | ||
+ | ;crontab -r : Supprimer toutes les planifications | ||
+ | ;crontab -e : Éditer les planifications | ||
+ | |||
+ | |||
+ | Pour ajouter une ligne de commande qui va s’exécuter régulièrement, nous allons donc utiliser : | ||
+ | <pre># crontab -e</pre> | ||
+ | |||
+ | Un éditeur de texte se lance et on peut y ajouter une ligne. | ||
Voici la composition d'une ligne ''cron'': | Voici la composition d'une ligne ''cron'': | ||
− | '''[minute] [heure] [jour du mois] [mois] [jour de la semaine] [commande à lancer]''' | + | '''[minute] [heure] [jour du mois] [mois] [jour de la semaine] [commande à lancer]''' |
+ | |||
===Exemples=== | ===Exemples=== | ||
<pre> | <pre> | ||
− | |||
#Programmation du reboot soft tous les Lundi, Mardi, Jeudi, Samedi a 6h30 | #Programmation du reboot soft tous les Lundi, Mardi, Jeudi, Samedi a 6h30 | ||
30 6 * * 1,2,4,6 root reboot | 30 6 * * 1,2,4,6 root reboot | ||
+ | </pre> | ||
− | #Programmation d'un script http appelé toutes les minutes | + | <pre> |
− | */ | + | #Programmation d'un script http appelé toutes les 5 minutes |
− | + | */5 * * * * root GET http://votre-domaine.com/test.php | |
</pre> | </pre> | ||
[[Catégorie:Linux]] | [[Catégorie:Linux]] | ||
− | < | + | [[Catégorie:Serveur VPS]] |
+ | [[Catégorie:Serveur dédié]] | ||
+ | |||
+ | |||
+ | Cet article vous a semblé utile ? <vote /> | ||
+ | |||
<comments /> | <comments /> |
Version actuelle datée du 19 février 2021 à 17:14
fr:Exécuter automatiquement des scripts sous Linux he:הפעל אוטומטית את קבצי ה-script תחת לינוקס ro:Rula automat script-uri sub Linux ru:Автоматически запускать скрипты под Linux pl:Automatycznie uruchamiać skrypty pod Linuksem ja:Linux のスクリプトを自動的に実行します。 ar:تلقائياً بتشغيل البرامج النصية تحت لينكس zh:自动运行在 Linux 下的脚本 de:Automatische Ausführung von Skripten unter Linux nl:Automatisch uitvoeren van scripts onder Linux it:Eseguire automaticamente script sotto Linux pt:Automaticamente executar scripts no Linux es:Ejecutar automáticamente secuencias de comandos en Linux en:Automatically run scripts under Linux
Cet article explique le fonctionnement de cron et comment créer une tâche planifiée récurrente avec crontab.
Le fonctionnement de Cron
Vérification
Le service cron s'exécute au démarrage de la machine et lance les lignes de commandes en fonction de ce qui est renseigné dans ses fichiers de configuration.
Pour vérifier que le service cron est fonctionnel, lancez la commande :
$ systemctl status cron.service
Installation
Dans de très rare cas, le service cron n'est pas installé par défaut sur le système.
Pour un système Debian/Ubuntu :
$ sudo apt install cron
Pour un système Centos :
$ sudo dnf install cronie
Fichiers et dossiers de configuration
Le fichier de configuration principal est /etc/crontab
.
Il est par défaut configuré pour exécuter avec l'utilisateur root les scripts stockés dans ces dossiers :
/etc/cron.hourly
: Toutes les heures/etc/cron.daily
: Tous les jours/etc/cron.weekly
: Toutes les semaines/etc/cron.monthly
: Tous les mois
Ajouter une tâche
Pour ajouter une tâche, il n'est pas conseillé de modifier directement le fichier /etc/crontab
.
Pour cela, nous préférerons utiliser la commande crontab qui modifiera le fichier après une avoir vérifié la syntaxe.
Utilisation de crontab
- crontab -l
- Lister les planifications
- crontab -r
- Supprimer toutes les planifications
- crontab -e
- Éditer les planifications
Pour ajouter une ligne de commande qui va s’exécuter régulièrement, nous allons donc utiliser :
# crontab -e
Un éditeur de texte se lance et on peut y ajouter une ligne.
Voici la composition d'une ligne cron: [minute] [heure] [jour du mois] [mois] [jour de la semaine] [commande à lancer]
Exemples
#Programmation du reboot soft tous les Lundi, Mardi, Jeudi, Samedi a 6h30 30 6 * * 1,2,4,6 root reboot
#Programmation d'un script http appelé toutes les 5 minutes */5 * * * * root GET http://votre-domaine.com/test.php
Cet article vous a semblé utile ?
Activer l'actualisation automatique des commentaires