miam équivalent à apt-get upgrade vs apt-get dist-upgrade?

31

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 upgradesur mes serveurs basés sur Debian pour des mises à niveau "normales" et apt-get dist-upgradepour permettre des mises à niveau du noyau ou permettre de nouvelles mises à niveau de versions de paquets majeures.

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 updateet ne yum upgradesemblent 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 du --obsoletesdrapeau est un peu cryptique pour moi. Alors laissez-moi reformuler ce que j'en comprends: Dois-je comprendre que yum updatecela n'installera pas un nouveau noyau car cela signifierait de marquer comme obsolète le noyau actuel? Puis-je supposer que cela yum upgradefait la même chose ou presque la même chose que apt-get dist-upgrade?

ÉDITÉ 2

Ce que j'aime le plus, apt-get upgradec'est qu'il me dit quels paquets restent conservés pour que je puisse agir en conséquence; avec apt-get dist-upgradeou 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 obsolètes dans yum.conf (comme décrit par Steven Pritchard dans sa réponse ) et exécuter au début yum update. Une fois toutes les mises à jour installées, exécutez une seconde yum update --obsoletespour vérifier quels packages ont été conservés et agir en fonction de ses résultats.

Ça marchera?

hmontoliu
la source

Réponses:

57

yum updateà l'origine vient de faire des mises à niveau des packages vers de nouvelles versions. Si, par exemple, foo-awesomeobsolète foo, yum updatene proposerait pas de passer de fooà foo-awesome. L'ajout de l' --obsoletesindicateur pour yum updatelui faire faire les vérifications supplémentaires pour offrir également ce chemin de mise à niveau. yum upgradea été ajouté comme (essentiellement) un alias pour yum --obsoletes update. Étant donné que c'est le comportement que presque tout le monde veut tout le temps, l'option de configuration a obsoletes=1été ajoutée à la valeur par défaut /etc/yum.conf, faisant yum updateet yum upgradeéquivalente sur tout stock récent, Fedora / RHEL / CentOS / etc.

Si vous voulez éviter les mises à jour du noyau lorsque vous exécutez yum update, vous pouvez simplement le 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.

Steven Pritchard
la source
+1 Steven; Je suppose qu'il n'y aura pas de bonne réponse , c'est pourquoi je veux autant de retours que possible. Votre réponse est excellente. Permettez-moi d'attendre que d'autres personnes approchent :-)
hmontoliu
Voir mon EDITED 2 , jusqu'à présent, je pense que c'est une bonne approche pour imiter le comportement apt-get.
hmontoliu
Vous pouvez également ajouter des exclusions au fichier yum.conf.
Pas maintenant
3

Essayer

# yum upgrade yum kernel
# yum -y upgrade
af-au travail
la source