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

Automatiser les tâches système à l'aide de Crontab sur Ubuntu

Dans ce tutoriel, nous allons vous montrer comment utiliser la crontab Ubuntu . En quelques étapes simples, nous vous expliquerons comment automatiser vos tâches système sur Ubuntu, en utilisant la crontab dans Ubuntu. L'utilitaire logiciel cron est un planificateur de tâches basé sur le temps dans les systèmes d'exploitation de type Unix. Cron est piloté par un fichier crontab (table cron), un fichier de configuration qui spécifie les commandes shell à exécuter périodiquement selon un calendrier donné. Les fichiers crontab sont stockés là où sont conservées les listes de travaux et autres instructions au démon cron. Les utilisateurs peuvent avoir leurs propres fichiers crontab individuels et il existe souvent un fichier crontab à l'échelle du système (généralement dans /etc ou un sous-répertoire de /etc) que seuls les administrateurs système peuvent modifier.

Vous pouvez utiliser cron sur Ubuntu pour exécuter automatiquement des scripts dans un délai spécifié, créer une sauvegarde de vos bases de données ou d'autres fichiers importants, surveiller les services en cours d'exécution sur votre serveur et bien d'autres choses. Suivez les étapes ci-dessous pour configurer la crontab Ubuntu.

1. Connectez-vous à votre serveur et mettez à jour votre système

Avant de commencer à configurer crontab sur votre serveur Ubuntu, connectons-nous à votre VPS via SSH et mettons à jour votre logiciel système vers la dernière version disponible.

Nous pouvons le faire en exécutant la commande suivante :

apt-get update && apt-get upgrade

2. Vérifiez si le paquet cron est installé

Pour utiliser l'utilitaire cron, nous devons nous assurer que le package cron est installé sur votre serveur.

Pour vérifier si cron est installé, nous pouvons lancer la commande suivante :

dpkg -l cron

3. Installez le paquet cron sur Ubuntu

Si le package cron n'est pas installé sur votre serveur, vous pouvez l'installer avec le gestionnaire de packages :

apt-get install cron

4.Vérifiez si le service cron est en cours d'exécution

Pour vérifier si le service cron est en cours d'exécution sur votre système, nous pouvons utiliser la commande suivante :

systemctl status cron

5. Configurer les tâches cron sur Ubuntu

Pour configurer les tâches cron, vous devez modifier le fichier /etc/crontab. Veuillez noter que ce fichier ne peut être modifié que par l'utilisateur root.
Vous pouvez modifier le fichier crontab avec votre éditeur de texte préféré, par exemple :

nano /etc/crontab

Le contenu de ce fichier ressemble généralement à ceci :

SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root

# For details see man 4 crontabs

# Example of job definition:
# .---------------- minute (0 - 59)
# | .------------- hour (0 - 23)
# | | .---------- day of month (1 - 31)
# | | | .------- month (1 - 12) OR jan,feb,mar,apr ...
# | | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
# | | | | |
# * * * * * user-name command to be executed
37 * * * * root run-parts /etc/cron.hourly
23 5 * * * root run-parts /etc/cron.daily
19 3 * * 0 root run-parts /etc/cron.weekly
23 0 6 * * root run-parts /etc/cron.monthly

Comme vous pouvez le voir, le fichier crontab contient déjà une explication sur la façon de définir vos propres tâches cron. La syntaxe est la suivante :

minute hour day month day_of_week username command

Un astérisque (*) dans la crontab peut être utilisé pour spécifier toutes les valeurs valides, donc si vous avez besoin qu'une commande soit exécutée tous les jours à minuit, vous pouvez ajouter la tâche cron suivante :

0 0 * * * root /sample_command >/dev/null 2>&1

Des utilisateurs spécifiques peuvent également créer des tâches cron. Les tâches cron spécifiques à l'utilisateur se trouvent dans /var/spool/cron/username.

Lorsque vous créez des tâches cron pour des utilisateurs spécifiques, vous n'avez pas besoin de spécifier le nom d'utilisateur dans la tâche cron. La syntaxe des tâches cron spécifiques à l'utilisateur devrait ressembler à ceci :

minute hour day month day_of_week command

6. Exemples de crontab Ubuntu

Jetons un coup d'œil à quelques exemples de crontab plus utiles.

Disons que nous voulons programmer un script de sauvegarde pour qu'il s'exécute tous les jours à 4h30. Nous pouvons alors mettre en place la tâche cron suivante :

30 4 * * * /path/to/script/backup-script.sh

Ou, par exemple, si nous voulons programmer la sauvegarde le premier jour de chaque mois à 20 h 00, nous pouvons à la place définir la tâche cron suivante :

0 18 1 * * /path/to/script/backup-script.sh

Nous pouvons également utiliser certains des horodatages suivants :

@hourly path/to/script/script.sh
@daily path/to/script/script.sh
@weekly path/to/script/script.sh
@monthly path/to/script/script.sh
@reboot path/to/script/script.sh

Cela programmera l'exécution de la tâche cron au début de chaque heure/jour/semaine/mois ou au redémarrage du serveur.

Si les scripts génèrent n'importe quel type de sortie, y compris des erreurs, nous pouvons configurer la tâche cron pour consigner cette sortie dans un fichier séparé. Par exemple, le cron suivant sera exécuté trois fois par jour à 4 h, 10 h et 16 h tous les mercredis et samedis et toute sortie (standard et erreur) sera enregistrée dans le fichier backup.log :

0 4,10,16 * * wed,sat path/to/script/script.sh > /path/to/logs/backup.log 2>&1

Si nous ne voulons pas qu'une sortie soit générée, nous pouvons rediriger à la fois l'erreur standard et la sortie standard vers /dev/null qui supprimera toutes les informations qui y sont écrites :

0 4,10,16 * * wed,sat path/to/script/script.sh > /dev/null 2>&1

7. Redémarrez le service cron

Après avoir apporté les modifications à la crontab, vous devrez redémarrer le service cron à l'aide de la commande suivante :

systemctl restart cron

8. Manuel crontab Linux

Pour plus d'informations sur Linux cron, vous pouvez également consulter les pages de manuel avec :

man cron

et

man crontab

S'il vous est difficile de configurer les tâches cron correctes au début, vous pouvez utiliser une calculatrice de tâches cron pour générer l'expression de la tâche cron. Il existe plusieurs bons calculateurs de tâches cron disponibles sur Internet.

Voir aussi :Automatiser les tâches système avec Crontab sur CentOS 7

Bien sûr, vous n'êtes pas obligé d'utiliser la crontab Ubuntu si vous utilisez l'un de nos hébergements Ubuntu entièrement gérés, auquel cas vous pouvez simplement demander à nos administrateurs Linux experts de vous aider avec crontab sur Ubuntu pour automatiser les tâches système. Ils sont disponibles 24h/24 et 7j/7 et planifieront immédiatement toutes les tâches système à l'aide de crontab sur votre serveur Ubuntu !

PS. Si vous avez aimé cet article sur Crontab Ubuntu et comment automatiser les tâches système , partagez-le avec vos amis sur les réseaux sociaux en utilisant les boutons à gauche ou laissez simplement une réponse ci-dessous. Merci


Panels
  1. Surveillance des ressources système à l'aide de SAR sur Ubuntu 20.04

  2. Planification des tâches système avec Cron sous Linux

  3. Comment créer un script de démarrage à l'aide de Crontab dans Lubuntu Linux

  4. Automatisez les tâches système avec crontab sur CentOS 7

  5. Comment définir des tâches automatisées sur un VPS Linux à l'aide de Cron ?

Comment automatiser les redémarrages du système à l'aide du module de redémarrage Ansible

Comment automatiser des tâches avec des tâches cron sous Linux

Sauvegarder et restaurer les applications Ubuntu à l'aide d'Aptik

Comment planifier des tâches sur Ubuntu 20.04 à l'aide de Crontab

Comment nettoyer votre système Ubuntu à l'aide de l'outil Bleachbit

Comment installer Webmin sur Ubuntu 20.04