GNU/Linux >> Tutoriels Linux >  >> Linux

Planification des mises à jour sous Linux à l'aide de yum-cron

Chaque fois que je configure un nouveau script pour l'automatisation d'une tâche, je dois regarder un exemple cron, ou je dois en chercher un sur Google. Je n'arrive pas à me souvenir de la syntaxe de crontab. Et c'est comme ça pour moi depuis 20 ans. J'ai un bloc de cron pathologique. C'est pourquoi quand j'ai découvert le yum-cron paquet, j'étais plutôt content. Le yum-cron package s'occupe de la planification pour moi. Je n'ai qu'à apporter une modification au fichier de configuration et tout fonctionne. Voici un court tutoriel pour obtenir ces mises à jour automatiques aujourd'hui sans créer votre propre script ou lutter avec cron .

yum-cron - une interface pour appeler facilement yum depuis cron

Installation

Vous n'avez rien de spécial à faire pour installer yum-cron car il fait partie du référentiel de base, alors récupérez-le simplement via dnf .

$ sudo dnf -y yum-cron

Le yum-cron La commande est en fait un script Python que vous pouvez examiner. Il s'installe dans /sbin , si vous voulez le vérifier.

Configuration et première exécution

Une fois installé, vous devez modifier le fichier de configuration par défaut, qui est /etc/yum/yum-cron.conf . Ce fichier configure l'exécution cron quotidienne, mais je vais également vous montrer comment l'exécuter immédiatement. Ouvrez /etc/yum/yum-cron.conf avec votre éditeur préféré et changez les deux lignes suivantes de :

apply_updates = no
...
random_sleep = 360

À :

apply_updates = yes
...
random_sleep = 0

Changer le paramètre random_sleep provoque yum-cron courir immédiatement. La raison pour laquelle random_sleep Le paramètre existe afin que vous ne grignotiez pas beaucoup de bande passante pour les mises à jour se produisant toutes en même temps.

[ Cours en ligne gratuit :Présentation technique de Red Hat Enterprise Linux. ]

Configurer yum-cron pour qu'il s'exécute maintenant et au démarrage du système

Ensuite, activez yum-cron pour s'exécuter automatiquement au démarrage du système, puis le démarrer.

$ sudo systemctl start yum-cron

$ sudo systemctl enable yum-cron

Après quelques minutes, vérifiez le yum.log pour voir si des mises à jour ont été téléchargées et appliquées à votre système. L'apparition des mises à jour peut prendre un peu plus de temps en fonction du nombre de mises à jour requises par votre système.

$ sudo tail -10 /var/log/yum.log

Aug 04 10:59:54 Installed: libmodman-2.0.1-8.el7.x86_64
Aug 04 10:59:54 Installed: libproxy-0.4.11-11.el7.x86_64
Aug 04 10:59:54 Installed: glib-networking-2.56.1-1.el7.x86_64
Aug 04 10:59:54 Installed: cockpit-bridge-195.6-1.el7.centos.x86_64
Aug 04 10:59:55 Installed: cockpit-system-195.6-1.el7.centos.noarch
Aug 04 10:59:55 Installed: cockpit-ws-195.6-1.el7.centos.x86_64
Aug 04 10:59:55 Installed: cockpit-195.6-1.el7.centos.x86_64
Aug 04 16:47:55 Installed: python-chardet-2.2.1-3.el7.noarch
Aug 04 16:47:55 Installed: python-kitchen-1.1.1-5.el7.noarch
Aug 04 16:47:55 Installed: yum-utils-1.1.31-54.el7_8.noarch

Dans la capture d'écran ci-dessus, vous pouvez voir que j'ai eu plusieurs mises à jour. Je n'ai regardé que les dix derniers pour voir si cela s'était produit. C'est fait.

Reconfiguration

Après l'exécution initiale, vous devez modifier le /etc/yum/yum-cron.conf fichier à nouveau et restaurer le random_sleep paramètre à sa valeur d'origine de 360 si vous avez plus d'une poignée de serveurs.

Des choses aléatoires que vous voudrez peut-être savoir

Bien que vous ayez installé et configuré yum-cron en tant que root, la planification n'affecte pas la crontab de root. En d'autres termes, il n'y est pas répertorié. Vous trouverez le planning astucieusement caché sous /etc/cron.daily dans un fichier nommé 0yum-daily.cron . Vous pouvez également configurer le /etc/yum/yum-cron-hourly.conf courir toutes les heures. Semblable à l'exécution quotidienne, le fichier de planification horaire réside sous /etc/cron.hourly comme 0yum-hourly.cron .

Si vous souhaitez uniquement installer les mises à jour de sécurité via yum-cron , modifiez le update_cmd paramètre dans /etc/yum/yum-cron.conf à "sécurité" ou à d'autres valeurs comme suit :

[commands]
#  What kind of update to use:
# default                            = yum upgrade
# security                           = yum --security upgrade
# security-severity:Critical         = yum --sec-severity=Critical upgrade
# minimal                            = yum --bugfix update-minimal
# minimal-security                   = yum --security update-minimal
# minimal-security-severity:Critical =  --sec-severity=Critical update-minimal
update_cmd = default

Le yum-cron la page de manuel est presque inutile sauf pour vous dire que vous pouvez créer et utiliser différents fichiers de configuration qui doivent être spécifiés dans le /sbin/yum-cron Script Python en tant que default_config_file . L'ajout d'un nouveau référentiel, tel que EPEL, ne nécessite aucune configuration supplémentaire de yum-cron . Il tentera de se mettre à jour à partir de tous les référentiels, quel que soit le moment où vous les avez ajoutés et sans redémarrer le yum-cron services.

Si je gérais encore des centaines, voire des dizaines de systèmes Linux, j'utiliserais yum-cron . J'installerais aussi yum-cron et distribuez yum-cron.conf fichiers via Ansible pour éviter de toucher individuellement chaque système.

Récapitulez

Le yum-cron package est un utilitaire facile à installer et à utiliser pour moi. En tant qu'administrateur système, j'ai besoin d'applications d'automatisation et de "sauvegarde d'étapes" pour m'aider à administrer les systèmes Linux. J'aime aussi le fait que le programme soit léger et soit essentiellement un script Python. Il contient des fichiers de configuration que je peux modifier pour répondre à mes besoins. Honnêtement, yum-cron entre dans ma boîte à outils comme l'un des utilitaires d'administration système essentiels que je continuerai à utiliser tout au long de ma carrière et sur tous les systèmes que je gère.

[ Téléchargement gratuit :Aide-mémoire sur les commandes avancées de Linux. ]


Linux
  1. Identifier les propriétés de sécurité sous Linux à l'aide de checksec

  2. Exemple d'utilisation de getnstimeofday dans le noyau Linux

  3. Déplacer un dossier sous Linux à l'aide de la commande mv

  4. IPC utilisant des signaux sur Linux

  5. Système de file d'attente Linux

Comment répertorier les packages installés sous Linux

Installer MongoDB à l'aide de Vagrant sous Linux

Planification d'une tâche sous Linux à l'aide de Crontab

Utilisation de la commande Watch sous Linux

Utilisation de cut sur Linux Terminal

Comment répertorier les packages installés sous Linux à l'aide de la gestion des packages