2 votes

Problèmes potentiels avec "yum update ./*.rpm" ?

J'ai un lot de machines à mettre à jour cette semaine, mais je ne suis pas tout à fait sûr de notre procédure établie. En gros, ça se passe comme ça pour chaque machine :

  1. Monter un répertoire partagé particulier à la version/bitness du système d'exploitation, par exemple : mount -t cifs //server/share/rhel5.3-64/ /mnt/updates/
  2. yum update --downloadonly --downloaddir=/mnt/updates/
  3. yum update /mnt/updates/*.rpm

Nous utilisons le montage pour réduire la quantité de bande passante du réseau que nous utilisons, mais comme chaque machine peut avoir des ensembles de paquets très différents installés, il y aura des paquets inclus dans la commande "update" qui ne sont même pas présents sur le système, ainsi que plusieurs anciennes versions de certains paquets.

Est-ce un problème ? Est-ce que yum sautera/supprimera tout paquet inutile/obsolète avant d'appliquer les changements ?

modifier

Après avoir lu la réponse de @aaron-copley, j'ai décidé de faire quelques tests. J'ai ouvert une session sur le serveur, monté le partage, exécuté yum update --downloadonly --downloaddir=/mnt/updates/ a démonté le partage, a fait un yum clean all il est remonté, et a ré-exécuté la commande. Rien n'a été téléchargé. [yay]

J'ai supprimé un rpm, j'ai relancé la commande, et seul ce paquet s'est téléchargé. [aussi yay]

J'ai monté le partage sur une autre machine exécutant la même version de RHEL, puis j'ai exécuté les commandes suivantes yum update --downloadonly --downloaddir=/mnt/updates/ et même s'il a marqué 221 paquets à télécharger, il ne télécharge que les 30 qui ne sont pas déjà dans le partage. [super yay]

En bonus, yum liste également en gras les paquets déjà téléchargés.

1voto

Aaron Copley Points 12225

Yum ne remplacera les paquets installés que s'il est utilisé avec update . Vous avez raison cependant, il se peut que vous ne téléchargiez pas les paquets nécessaires à un autre système.

Ce que vous pouvez faire, c'est utiliser un outil comme mrepo pour construire et maintenir un référentiel local de tous les errata de Red Hat. Ce système serait synchronisé avec le RHN et maintiendrait tous les paquets sur le réseau local. Chaque système pointe ensuite vers cet hôte en interne pour les mises à jour afin de réduire la consommation de bande passante du réseau étendu. Vous n'auriez pas non plus à vous occuper des montages, vous pourriez utiliser Yum via HTTP.

mrepo : Miroir du dépôt Yum/Apt (fka yam)

0 votes

El yum update --downloadonly est exécutée sur chaque machine avant l'installation, de sorte que chaque machine devrait ont tous les rpms nécessaires. Ma préoccupation était que extra ou des paquets obsolètes ont pu être installés sur une machine qui n'en avait pas besoin. D'après ce que j'ai entendu jusqu'à présent, cela ne devrait pas être un problème.

0 votes

C'est bon, j'ai mal compris ce que tu voulais dire. Vous n'économisez pas de bande passante alors, je ne crois pas. Vous téléchargez les mêmes paquets encore et encore. Jetez un coup d'oeil à mrepo si vous êtes intéressé.

0 votes

Oh, c'est nul. Je suppose que je vais juste faire un simple yum update sur chaque machine et regarder dans mrepo pour le prochain cycle de patch.

1voto

Zack Sheffield Points 43

Yum installe uniquement les versions les plus récentes des paquets. Vous pouvez utiliser createrepo pour créer un dépôt avec des mises à jour et remplir le fichier de configuration /etc/yum.repos.d/company-updates.repo avec le contenu :

[rhel-company-updates]
name=RHEL-company-updates
baseurl=file:///mnt/updates/
gpgcheck=0
enabled=1

La procédure se simplifie :

# mount -t cifs //server/share/rhel5.3-64/ /mnt/updates/
# yum update

En fait, la prochaine étape à optimiser est d'utiliser autofs avec cifs pour monter automatiquement /mnt/updates/ lorsqu'un yum tente d'accéder à ce dossier.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X