A rpm
paranccsal dolgozva észrevettem, hogy ha telepítettem a some-package-1.0
, majd végrehajtott egy másik rpm -ivh some-package-1.1
elemet, mindkét csomag fel lesz sorolva, amikor egy rpm -qa | grep some-package
típust csinálok :
some-package-1.0 some-package-1.1
Az 1.1 telepítése helyett azonban, ha a rpm -Uvh some-package-1.1
segítségével frissítek, akkor a egyetlen csomag (1.1), amikor rpm -qa | grep some-package
.
Most ugyanaz a viselkedés érvényes a yum install
és a yum update
?
Kérdezem, mert a rpm -U
(upgrade) paranccsal egy csomagnak nem kell léteznie a frissítéshez / telepíteni, de yum update
fájlnál (ha nem tévedek), akkor már léteznie kell egy csomagnak.
Különösen érdekel, hogy megtudjam a csomagok megadásának eredményét például some-package-1.0
. Összegezve tehát azt akarom tudni, hogy van-e két konkrét verzióm, például some-package-1.0
és some-package-1.1
:
- A
yum install
végrehajtása 1.1-n, miután az 1.0 már telepítve van, felsorol 2 csomagot? - A
yum update some-package-1.1
sikeresen lecserélnisome-package-1.0
?
Válasz
A fő A YUM és az RPM között az a különbség, hogy yum
tudja, hogyan oldja meg a függőségeket, és munkája során ezeket a további csomagokat is beszerezheti. Bár a rpm
figyelmeztetni tudja ezeket a függőségeket, nem tud további csomagokat beszerezni.
A telepítés és a frissítés tekintetében. Mindkét eszköz képes végrehajtani a telepítést, és az RPM akár több verzió egyidejű telepítését is lehetővé teszi, de a YUM elmondja, hogy az a csomag már telepítve van. Tehát a YUM nem engedélyezi több verzió telepítését.
Ami a yum update
-t illeti, ez a kétféle módon reagál. Ha elmondja neki a frissíteni kívánt csomagot, akkor megpróbálja megtenni, letölti és telepíti az összes szükséges függőséget. Ha csomagnév nélkül futtatja, akkor a yum update
megpróbálja frissíteni a rendszerre telepített minden csomagot.
Ha az yum upgrade
fájlt használja, ugyanúgy fog eljárni, mint a yum update
, kivéve, ha megpróbál eltávolítani minden olyan csomagot, amelyet “elavultnak” jelöltek.
Példa
Itt nem más a forgatókönyv. A vim-X11
új verziója érhető el.
$ 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
És én jelenleg ezen a verzión vagyok:
$ rpm -q vim-X11 | expand vim-X11-7.4.179-1.fc19.x86_64
Amikor megpróbáljuk telepíteni:
$ 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
Tehát összefoglalva
- A
yum install
végrehajtása 1.1-nél, miután az 1.0 már telepítve van, felsorol 2 csomagot?
Nem. A YUM akkor is végrehajtja a frissítést, ha azt mondtad neki, hogy telepítsen, ha a csomag már telepítve van.
- A
yum update some-package-1.1
futtatása sikeresen felváltja a some-package-1.0 alkalmazást?
Igen.
yum install
használatát, amikor megadom a csomag nevét verzióval, és nem foglalkozom azzal, hogy több verziót telepítsen. Az a helyzet, amikor ayum update
-t szeretném használni, akkor lenne, amikor csak a csomag nevét adom meg, helyes?yum install
észleli, hogy egy csomag már telepítve van, és áttér a frissítésre, illetve a telepítésre, amint azt a példám megmutatta.rpm
olyan, mintdpkg
, csak a helyi lemezen található fájlok kezelésével foglalkozik. A " tárház kezeléséhez " b / w a rendszered + egy repó, amire szükséged van:yum
vagydnf
.rpm
, ha URL-ről történő telepítéshez nem használják ' ne hajtsa végre a csomag dep-et, hogy azokat is behúzza, csupán lokálisan tölti le az rpm-et, majd telepíti.