În timp ce lucram cu comanda rpm
am observat că, dacă am instalat some-package-1.0
și apoi am efectuat un alt rpm -ivh some-package-1.1
ambele pachete vor fi listate atunci când fac un rpm -qa | grep some-package
ca următoarele :
some-package-1.0 some-package-1.1
Cu toate acestea, în loc să instalez 1.1, dacă fac upgrade prin rpm -Uvh some-package-1.1
obțin rezultatul dorit al unui pachet unic (1.1) când fac rpm -qa | grep some-package
.
Acum se aplică același comportament cu yum install
și yum update
?
Întreb pentru că cu comanda rpm -U
(upgrade) nu trebuie să existe un pachet pentru a face upgrade / instalați dar cu yum update
(dacă „nu mă înșel) trebuie să existe deja un pachet.
Sunt deosebit de interesat să aflu rezultatul specificării pachetelor cu versiuni precum some-package-1.0
. Deci, în rezumat, ceea ce vreau să știu este dacă am două versiuni specifice, cum ar fi some-package-1.0
și some-package-1.1
:
- Va efectua un
yum install
pe 1.1 după ce 1.0 este deja instalat, va lista 2 pachete? - Va rula
yum update some-package-1.1
înlocuiește cu successome-package-1.0
?
Răspunde
Major diferențele dintre YUM și RPM sunt că yum
știe cum să rezolve dependențele și poate sursa aceste pachete suplimentare atunci când își face treaba. Deși rpm
vă poate avertiza cu privire la aceste dependențe, nu este capabil să furnizeze pachete suplimentare.
În ceea ce privește instalarea vs. actualizarea. Ambele instrumente pot efectua o instalare, iar RPM vă va permite chiar să instalați mai multe versiuni simultan, dar YUM vă va spune că acel pachet este deja instalat. Deci, niciun YUM nu vă va permite să instalați mai multe versiuni.
În ceea ce privește yum update
, acesta va reacționa într-unul din cele două moduri. Dacă îi spuneți un pachet pe care doriți să îl actualizați, acesta va încerca să facă acest lucru, descărcând toate dependențele necesare și instalându-le și ele. Dacă îl rulați fără niciun nume de pachet, yum update
va încerca să actualizeze fiecare pachet instalat pe sistemul dvs.
Dacă utilizați yum upgrade
va face același lucru ca și yum update
, cu excepția faptului că va încerca să elimine orice pachete care au fost marcate ca „învechite”.
Exemplu
Aici „un scenariu nu diferit de al tău. O nouă versiune a vim-X11
este disponibilă.
$ 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
Și acum sunt la această versiune:
$ rpm -q vim-X11 | expand vim-X11-7.4.179-1.fc19.x86_64
Când încercăm să-l instalăm:
$ 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
Deci pe scurt
- Va efectua un
yum install
pe 1.1 după ce 1.0 este deja instalat, listează 2 pachete?
Nu. YUM va efectua în continuare o actualizare chiar și atunci când i-ați spus să facă o instalare dacă pachetul este deja instalat.
- Rularea
yum update some-package-1.1
va înlocui cu succes some-package-1.0?
Da.
yum install
când specific numele pachetului cu versiunea și nu mă preocupă instalarea mai multor versiuni. O situație în care aș vrea să folosescyum update
ar fi atunci când specific numai numele pachetului, corect?yum install
va detecta că un pachet este deja instalat și va trece la actualizarea acestuia față de instalarea acestuia, așa cum am arătat exemplul meu.rpm
este cadpkg
, se referă doar la gestionarea fișierelor de pe discul local. Pentru depozit " management " b / w sistemul dvs. + o repo aveți nevoie de ceva de genulyum
saudnf
.rpm
atunci când este utilizat pentru a instala dintr-o adresă URL nu ' nu faceți niciun depozit de pachet pentru a le trage și el, descarcă rpm-ul local și apoi îl instalează.