Je suis un gars * .deb et je me sens assez mal à l'aise lors de la gestion des RPM.
J'ai l'habitude d'exécuter apt-get upgrade
dans mes serveurs basés sur Debian pour les mises à niveau "normales" et apt-get dist-upgrade
pour autoriser les mises à niveau du noyau ou autoriser les nouvelles mises à niveau des versions majeures des packages.
Dans les serveurs CentOS que j'administre, j'aimerais avoir une fonctionnalité similaire, mais man yum ne semble pas offrir un tel comportement. Et les différences entre yum update
et yum upgrade
ne semble pas être ce que je recherche.
Jusqu'à présent, ma meilleure approche consiste à ajouter et supprimer le paramètre suivant dans /etc/yum.conf
:
exclude=kernel*
Il doit y avoir une meilleure approche. Toute suggestion sera la bienvenue.
ÉDITÉ:
La description de la page de manuel du yum et le --obsoletes
le drapeau est un peu énigmatique pour moi. Alors laissez-moi reformuler ce que j'en comprends: dois-je comprendre que yum update
n'installera pas de nouveau noyau car cela signifierait de marquer comme obsolète le noyau actuel? Puis-je supposer que yum upgrade
fait la même chose ou presque la même chose que apt-get dist-upgrade
?
ÉDITÉ 2
Ce que j'aime le plus de apt-get upgrade
est qu'il me dit quels paquets restent conservés pour que je puisse agir en conséquence; soit avec apt-get dist-upgrade
ou avec explicite apt-get install package
.
Donc, après avoir réfléchi un peu, ma meilleure approche en ce moment sera: désactiver le paramètre obsoletes dans yum.conf ( comme décrit par Steven Pritchard dans sa réponse ) et exécutez d'abord yum update
. Une fois toutes les mises à jour installées, exécutez une seconde yum update --obsoletes
pour vérifier quels packages ont été retenus et agir en fonction de ses résultats.
Ça marchera?
yum update
à l'origine vient de faire des mises à niveau des packages vers de nouvelles versions. Si, par exemple, foo-awesome
obsolète foo
, yum update
ne proposerait pas de passer de foo
à foo-awesome
. Ajout du --obsoletes
drapeau à yum update
l'a fait faire des vérifications supplémentaires pour offrir également ce chemin de mise à niveau. yum upgrade
a été ajouté comme (essentiellement) un alias pour yum --obsoletes update
. Comme c'est le comportement que presque tout le monde veut tout le temps, l'option de configuration obsoletes=1
a été ajouté à la valeur par défaut /etc/yum.conf
, faisant yum update
et yum upgrade
équivalent sur tout stock récent, Fedora/RHEL/CentOS/etc.
Si vous souhaitez éviter les mises à jour du noyau lorsque vous exécutez yum update
, vous pouvez simplement faire yum --exclude=kernel* update
. Si vous souhaitez que les mises à jour automatiques soient activées, mais que vous souhaitez éviter les mises à niveau automatiques du noyau, l'ajout de l'exclusion à yum.conf est probablement la bonne réponse.
Il n'y a probablement pas de bonne réponse à votre question. Les distributions RHEL et RHEL n'ont pas la même philosophie que les développeurs Debian en ce qui concerne les mises à jour, donc les outils n'encouragent pas les mêmes types de comportement.
Essayer
# yum upgrade yum kernel
# yum -y upgrade