Unterschied zwischen yum update und yum install

Bei der Arbeit mit dem Befehl rpm ist mir aufgefallen, dass ich some-package-1.0 und führte dann ein weiteres rpm -ivh some-package-1.1 aus. Beide Pakete werden aufgelistet, wenn ich eine rpm -qa | grep some-package wie folgt mache :

some-package-1.0 some-package-1.1 

Wenn ich jedoch anstelle von 1.1 ein Upgrade über rpm -Uvh some-package-1.1 durchführe, erhalte ich das gewünschte Ergebnis von a Einzelpaket (1.1), wenn ich rpm -qa | grep some-package mache.

Jetzt gilt das gleiche Verhalten für yum install und yum update?

Ich frage, weil mit dem Befehl rpm -U (upgrade) ein Paket nicht existieren muss, um ein Upgrade durchzuführen / installieren, aber mit yum update (wenn ich mich nicht irre) muss bereits ein Paket vorhanden sein.

Ich bin besonders daran interessiert, das Ergebnis der Angabe von Paketen mit ihren zu kennen Versionen wie some-package-1.0. Zusammenfassend möchte ich also wissen, ob ich zwei spezifische Versionen wie some-package-1.0 und some-package-1.1 habe:

  1. Wird eine yum install unter 1.1 ausgeführt, nachdem 1.0 bereits installiert wurde, und 2 Pakete aufgelistet?
  2. Wird yum update some-package-1.1 erfolgreich ersetzen some-package-1.0?

Antwort

Der Major Unterschiede zwischen YUM und RPM bestehen darin, dass yum weiß, wie Abhängigkeiten aufgelöst werden, und diese zusätzlichen Pakete bei der Arbeit beziehen kann. rpm kann Sie zwar auf diese Abhängigkeiten aufmerksam machen, es können jedoch keine zusätzlichen Pakete bereitgestellt werden.

In Bezug auf Installation und Aktualisierung. Beide Tools können eine Installation durchführen, und mit RPM können Sie sogar mehrere Versionen gleichzeitig installieren. YUM teilt Ihnen jedoch mit, dass dieses Paket bereits installiert ist. Mit YUM können Sie also nicht mehrere Versionen installieren.

yum update reagiert auf zwei Arten. Wenn Sie ihm ein Paket mitteilen, das Sie aktualisieren möchten, wird er dies versuchen, indem er alle erforderlichen Abhängigkeiten herunterlädt und auch installiert. Wenn Sie es ohne Paketnamen ausführen, versucht yum update, jedes Paket zu aktualisieren, das auf Ihrem System installiert ist.

If Wenn Sie yum upgrade verwenden, funktioniert dies genauso wie yum update, außer dass versucht wird, alle als „veraltet“ gekennzeichneten Pakete zu entfernen.

Beispiel

Hier ist ein Szenario, das Ihrem eigenen nicht unähnlich ist. Eine neue Version von vim-X11 ist verfügbar.

$ 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 

Und ich bin derzeit in dieser Version:

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

Wenn wir versuchen, es zu installieren:

$ 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 

Also zusammenfassend

  1. Wird eine yum install für 1.1 ausgeführt, nachdem 1.0 bereits installiert wurde, 2 Pakete auflisten?

Nein. YUM führt weiterhin ein Update durch, auch wenn Sie es angewiesen haben, eine Installation durchzuführen, wenn das Paket bereits installiert ist.

  1. Wird das Ausführen von yum update some-package-1.1 erfolgreich ein Paket 1.0 ersetzen?

Ja.

Kommentare

  • Vielen Dank für die ausführliche Antwort. So wie ich es sehe, kann ich yum install einfach weiter verwenden, wenn ich den Paketnamen mit der Version spezifiziere und mich nicht darum kümmere, mehrere Versionen zu installieren. Eine Situation, in der ich yum update verwenden möchte, wäre, wenn ich nur den richtigen Paketnamen angeben würde?
  • @aspiringCodeArtisan – dass ' ist teilweise korrekt. yum install erkennt, dass ein Paket bereits installiert ist, und wechselt zur Aktualisierung im Vergleich zur Installation, wie in meinem Beispiel gezeigt.
  • @slm – Zur Verdeutlichung kann RPM-Suche in einem Repository ähnlich der Zypper-Suche nach einem bestimmten Paket?
  • @Motivated – no rpm entspricht dpkg Es geht nur darum, die Dateien auf der lokalen Festplatte zu verwalten. Für das Repository " Management " s / w Ihres Systems + eines Repos benötigen Sie etwas wie yum oder dnf.
  • @Motivated – rpm bei Verwendung zur Installation von einer URL nicht ' Sie müssen keine Paket-Dep ausführen, um sie auch abzurufen. Sie laden lediglich die Drehzahl lokal herunter und installieren sie dann.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.