GNU/Linux >> Tutoriels Linux >  >> Cent OS

CentOS / RHEL :bases d'anacron (Qu'est-ce qu'anacron et comment le configurer)

Qu'est-ce qu'anacron et en quoi est-il différent de cron ?

Anacron est utilisé pour exécuter des commandes périodiquement, avec une fréquence spécifiée en jours. Contrairement à cron, il ne suppose pas que la machine fonctionne en continu. Par conséquent, il peut être utilisé sur des machines qui ne fonctionnent pas 24 heures sur 24 pour contrôler les travaux réguliers en tant que travaux quotidiens, hebdomadaires et mensuels. Anacron essaie d'exécuter les tâches planifiées aussi près que le temps de disponibilité du système le permet.

fichier de configuration anacron

/etc/anacrontab est le fichier de configuration anacron. Vous trouverez ci-dessous un exemple de fichier anacron non édité :

# cat /etc/anacrontab 
# /etc/anacrontab: configuration file for anacron

# See anacron(8) and anacrontab(5) for details.

SHELL=/bin/sh
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
# the maximal random delay added to the base delay of the jobs
RANDOM_DELAY=45
# the jobs will be started during the following hours only
START_HOURS_RANGE=3-22

#period in days    delay in minutes   job-identifier   command
1	5	cron.daily		nice run-parts /etc/cron.daily
7	25	cron.weekly		nice run-parts /etc/cron.weekly
@monthly 45	cron.monthly		nice run-parts /etc/cron.monthly

Ici :
1. période en jours :précise la fréquence d'exécution d'un job en jours. Cette variable peut être représentée par un entier ou une macro (@daily, @weekly, @monthly), où @daily désigne la même valeur que l'entier 1, @weekly la même que 7 et @monthly spécifie que le travail est exécuté une fois par mois, indépendamment de la durée du mois.
2. délai en minutes :spécifie le nombre de minutes qu'anacron attend, si nécessaire, avant d'exécuter une tâche. Cette variable est représentée par un nombre entier où 0 signifie aucun délai.
3. identifiant de poste  :spécifie un nom unique de travail qui est utilisé dans les fichiers journaux.
4. commande :spécifie la commande à exécuter. La commande peut être une commande telle que ps -ef>> /tmp/processes ou une commande pour exécuter un script personnalisé.

Les 3 lignes à la fin des fichiers de configuration sont des tâches cron définies par le système.

1	5	cron.daily		nice run-parts /etc/cron.daily
7	25	cron.weekly		nice run-parts /etc/cron.weekly
@monthly 45	cron.monthly		nice run-parts /etc/cron.monthly

Le reste des variables est expliqué avec un exemple ci-dessous.

Exemple de configuration anacron

Voyons un exemple de configuration d'anacron. Nous créons une tâche anacron pour exécuter quotidiennement un script nommé "daily_job.sh" avec un délai de 35 minutes après le démarrage du système.

# cat /etc/anacrontab
RANDOM_DELAY=30
START_HOURS_RANGE=10-18
1       35      daily_job      sh /var/tmp/daily_job.sh

Si le système est en cours d'exécution, la tâche s'exécutera selon START_HOURS_RANGE qui est défini dans le fichier /etc/anacrontab. La variable START_HOURS_RANGE définit la plage d'heures pendant lesquelles la tâche planifiée est autorisée à s'exécuter. Dans notre cas, il est 10h. à 18h (10-18)

# grep -i START_HOURS_RANGE /etc/anacrontab  
START_HOURS_RANGE=10-18

Le RANDOM_DELAY La variable indique le nombre maximum de minutes qui seront ajoutées à la variable de délai en minutes qui est spécifiée pour chaque travail. Un RANDOM_DELAY défini sur 30 ajouterait donc, de manière aléatoire, entre 0 et 30 minutes au délai en minutes pour chaque travail dans cet anacrontab particulier. Lorsqu'il est défini sur 0, aucun délai aléatoire n'est ajouté.

# grep -i RANDOM_DELAY /etc/anacrontab  
RANDOM_DELAY=30


Cent OS
  1. CentOS / RHEL 7 :Comment installer et configurer telnet

  2. Comment configurer le serveur et le client NTP dans CentOS / RHEL 7

  3. Comment installer et configurer Samba dans CentOS / RHEL

  4. Comment configurer le VLAN 802.1q sur la carte réseau sur CentOS/RHEL 7 et 8

  5. Comment installer et configurer telnet dans RHEL / CentOS 5,6

Comment installer et configurer le serveur VNC dans CentOS 7 / RHEL 7

Comment configurer l'adresse IP dans CentOS 7 / RHEL 7 et CentOS 6 / RHEL 6

Comment installer et configurer Jenkins sur CentOS 8 / RHEL 8

Comment configurer FirewallD dans RHEL, CentOS et Fedora

Comment installer et configurer MariaDB dans CentOS / RHEL 7

Comment installer et configurer VNC Server sur CentOS/RHEL 8