En travaillant avec la commande rpm
, j'ai remarqué que si j'avais installé some-package-1.0
puis effectué une autre rpm -ivh some-package-1.1
les deux packages seront répertoriés lorsque je ferai rpm -qa | grep some-package
comme suit:
some-package-1.0
some-package-1.1
Cependant, au lieu d'installer 1.1, si je mets à niveau via le rpm -Uvh some-package-1.1
J'obtiens le résultat souhaité d'un seul paquet (1.1) quand je le fais rpm -qa | grep some-package
.
Le même comportement s'applique-t-il maintenant avec yum install
et yum update
?
Je demande parce qu'avec le rpm -U
(mise à niveau) commande un package ne doit pas exister pour mettre à niveau/installer mais avec yum update
(si je ne me trompe pas) un package doit déjà exister.
Je suis particulièrement intéressé de connaître le résultat de la spécification de packages avec leurs versions telles que some-package-1.0
. Donc, en résumé, ce que je veux savoir, c'est si j'ai deux versions spécifiques telles que some-package-1.0
et some-package-1.1
:
yum install
sur 1.1 après 1.0 est déjà installé, liste 2 packages?yum update some-package-1.1
remplacer avec succès some-package-1.0
?Les principales différences entre YUM et RPM sont que yum
sait comment résoudre les dépendances et peut source ces packages supplémentaires lors de son travail. Bien que rpm
puisse vous alerter sur ces dépendances, il ne peut pas source de packages supplémentaires.
Quant à l'installation vs la mise à niveau. Les deux outils peuvent effectuer une installation et RPM vous permettra même d'installer plusieurs versions simultanément, mais YUM vous indiquera que ce package est déjà installé. Donc, aucun YUM ne vous permettra d'installer plusieurs versions.
Quant à yum update
, cela va réagir de deux manières. Si vous lui indiquez un package que vous souhaitez mettre à jour, il tentera de le faire, en téléchargeant toutes les dépendances nécessaires et en les installant également. Si vous l'exécutez sans nom de package, yum update
tentera de mettre à jour chaque package installé sur votre système.
Si tu utilises yum upgrade
il fera la même chose que yum update
, sauf qu'il tentera de supprimer tous les packages marqués comme "obsolètes".
Voici un scénario qui ne ressemble pas au vôtre. Une nouvelle version de vim-X11
est disponible.
$ yum check-update vim-X11 | expand
Loaded plugins: auto-update-debuginfo, changelog, langpacks, refresh-packagekit
vim-X11.x86_64 2:7.4.417-1.fc19 updates
Et je suis actuellement à cette version:
$ rpm -q vim-X11 | expand
vim-X11-7.4.179-1.fc19.x86_64
Lorsque nous essayons de l'installer:
$ Sudo yum install vim-X11
...
=================================================================================================================================================================
Package Arch Version Repository Size
=================================================================================================================================================================
Updating:
vim-X11 x86_64 2:7.4.417-1.fc19 updates 1.2 M
Updating for dependencies:
vim-common x86_64 2:7.4.417-1.fc19 updates 5.9 M
vim-enhanced x86_64 2:7.4.417-1.fc19 updates 1.0 M
....
Running transaction
Updating : 2:vim-common-7.4.417-1.fc19.x86_64 1/6
Updating : 2:vim-enhanced-7.4.417-1.fc19.x86_64 2/6
Updating : 2:vim-X11-7.4.417-1.fc19.x86_64 3/6
Cleanup : 2:vim-X11-7.4.179-1.fc19.x86_64 4/6
Cleanup : 2:vim-enhanced-7.4.179-1.fc19.x86_64 5/6
Cleanup : 2:vim-common-7.4.179-1.fc19.x86_64 6/6
Verifying : 2:vim-enhanced-7.4.417-1.fc19.x86_64 1/6
Verifying : 2:vim-X11-7.4.417-1.fc19.x86_64 2/6
Verifying : 2:vim-common-7.4.417-1.fc19.x86_64 3/6
Verifying : 2:vim-enhanced-7.4.179-1.fc19.x86_64 4/6
Verifying : 2:vim-X11-7.4.179-1.fc19.x86_64 5/6
Verifying : 2:vim-common-7.4.179-1.fc19.x86_64 6/6
- Réalisera un
yum install
sur 1.1 après 1.0 est déjà installé, liste 2 packages?
Non. YUM effectuera toujours une mise à jour même si vous lui avez demandé d'effectuer une installation si le package est déjà installé.
- Exécute
yum update some-package-1.1
a réussi à remplacer some-package-1.0?
Oui.