Skillnad mellan yum update vs yum install

När jag arbetade med kommandot rpm såg jag att om jag installerade some-package-1.0 och utförde sedan en annan rpm -ivh some-package-1.1 båda paketen kommer att listas när jag gör en rpm -qa | grep some-package som följande :

some-package-1.0 some-package-1.1 

Men istället för att installera 1.1 får jag det önskade resultatet av en om jag uppgraderar via rpm -Uvh some-package-1.1 enda paket (1.1) när jag gör rpm -qa | grep some-package.

Nu gäller samma beteende med yum install och yum update?

Jag frågar för att med paketet rpm -U (uppgradering) behöver det inte finnas ett paket för att uppgradera / installera men med yum update (om jag inte tar fel) måste det redan finnas ett paket.

Jag är särskilt intresserad av att veta resultatet av att ange paket med deras versioner som some-package-1.0. Sammanfattningsvis, vad jag vill veta är om jag har två specifika versioner som some-package-1.0 och some-package-1.1:

  1. Kommer att utföra en yum install 1.1 efter att 1.0 redan är installerad, lista 2 paket?
  2. Kommer yum update some-package-1.1 ersätt some-package-1.0?

Svar

Major skillnader mellan YUM och RPM är att yum vet hur man kan lösa beroenden och kan hämta dessa ytterligare paket när de gör sitt arbete. Även om rpm kan varna dig för dessa beroenden, kan det inte hämta fler paket.

När det gäller installation jämfört med uppgradering. Båda verktygen kan utföra en installation och RPM tillåter till och med att du installerar flera versioner samtidigt, men YUM kommer att berätta att det paketet redan är installerat. Så ingen YUM tillåter dig inte att installera flera versioner.

När det gäller yum update kommer detta att reagera på ett av två sätt. Om du berättar för det ett paket som du vill uppdatera kommer det att försöka göra det, ladda ner alla nödvändiga beroenden och installera dem också. Om du kör det utan något paketnamn försöker yum update att uppdatera alla paket som installeras på ditt system.

Om du använder yum upgrade det kommer att göra detsamma som yum update, förutom att det försöker ta bort alla paket som har markerats som ”föråldrade”.

Exempel

Här ”är ett scenario som inte skiljer sig från ditt eget. En ny version av vim-X11 är tillgänglig.

$ 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 

Och jag är för närvarande på den här versionen:

$ rpm -q vim-X11 | expand vim-X11-7.4.179-1.fc19.x86_64 

När vi försöker installera det:

$ 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 

Så i sammanfattning

  1. Kommer en yum install 1.1 efter att 1.0 redan är installerad, lista 2 paket?

Nej. YUM kommer fortfarande att utföra en uppdatering även när du har sagt att den ska göra en installation om paketet redan är installerat.

  1. Kommer körning av yum update some-package-1.1 att ersätta some-package-1.0?

Ja.

Kommentarer

  • Tack för det mycket detaljerade svaret. Så som jag ser det kan jag bara fortsätta använda yum install när jag anger paketnamn med version och inte är bekymrad över att det installerar flera versioner. En situation där jag skulle vilja använda yum update skulle vara när jag bara anger paketnamnet, rätt?
  • @aspiringCodeicialan – att ' är delvis korrekt. yum install kommer att upptäcka att ett paket redan är installerat och byter till att uppdatera det jämfört med att installera det, som mitt exempel visade.
  • @slm – För att klargöra kan rpm söka i ett arkiv som liknar zypper-sökning efter ett visst paket?
  • @Motivated – ingen rpm är som dpkg , det gäller bara sig själv med hantering av filerna på den lokala disken. För förvar " management " svartvitt ditt system + en repo behöver du något som yum eller dnf.
  • @Motivated – rpm när det används för att installera från en webbadress ' t gör något paket för att dra in dem också, det laddar bara ner varvtalet lokalt och installerar det sedan.

Lämna ett svar

Din e-postadress kommer inte publiceras. Obligatoriska fält är märkta *