Diferența dintre yum update și yum install

Î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:

  1. Va efectua un yum install pe 1.1 după ce 1.0 este deja instalat, va lista 2 pachete?
  2. Va rula yum update some-package-1.1 înlocuiește cu succes some-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

  1. 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.

  1. Rularea yum update some-package-1.1 va înlocui cu succes some-package-1.0?

Da.

Comentarii

  • Vă mulțumim pentru răspunsul mult mai detaliat. Deci, așa cum îl văd, pot continua să folosesc 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ă folosesc yum update ar fi atunci când specific numai numele pachetului, corect?
  • @aspiringCodeArtisan – ' este parțial 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.
  • @slm – Pentru a clarifica, poate rpm căutați un depozit similar cu căutarea zypper pentru un anumit pachet?
  • @Motivated – nu rpm este ca dpkg , 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 genul yum sau dnf.
  • @Motivated – 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ă.

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *