„opakovaný dotaz ” je program pro dotazování informací z úložišť YUM podobně jako rpm dotazy. „yum-utils Pro použití tohoto příkazu by měl být nainstalován balíček ”. Pokud ještě není nainstalován ve vašem systému, můžete balíček nainstalovat následujícím příkazem yum.
# yum install yum-utils
Následující příkaz nám umožňuje zobrazit závislosti již nainstalovaného rpm balíčku.
# repoquery --requires --resolve [package]
zde,
- –vyžaduje – Seznam závislostí balíčků.
- –vyřešit – Při použití s –requires přeloží schopnosti původních balíčků.
- balíček – název balíčku rpm
Příklad:
# repoquery --requires --resolve nano info-0:5.1-4.el7.x86_64 ncurses-libs-0:5.9-14.20130511.el7_4.x86_64 bash-0:4.2.46-29.el7_4.x86_64 glibc-0:2.17-55.el7_0.3.i686 glibc-0:2.17-106.el7_2.1.x86_64
Příkaz repoquery můžete použít k získání seznamu balíčků, které jsou závislými na balíčku, který chcete aktualizovat. Pamatujte, že tím získáte nejnovější verzi závislostí, i když zadáte verzi pro balíček, na který se ptáte
Další informace naleznete na manuálové stránce man repoquery nebo v textu nápovědy „repoquery –help“.
# man repoquery
# repoquery --help
Rekurzivní řešení závislostí
Můžete použít –rekurzivní možnost s „–vyžaduje –vyřešit ” možnost rekurzivně dotazovat balíčky. Například:
# repoquery --requires --resolve --recursive nano pcre-0:8.32-15.el7_2.1.x86_64 glibc-0:2.17-55.el7_0.3.i686 bash-0:4.2.46-29.el7_4.x86_64 libselinux-0:2.2.2-6.el7.x86_64 basesystem-0:10.0-7.el7.noarch tzdata-0:2014g-1.el7.noarch pcre-0:8.32-15.el7_2.1.i686 libstdc++-0:4.8.2-16.2.el7_0.x86_64 libgcc-0:4.8.2-16.2.el7_0.x86_64 nss-softokn-freebl-0:3.16.2.3-9.el7.x86_64 setup-0:2.8.71-4.el7.noarch ncurses-base-0:5.9-13.20130511.el7.noarch zlib-0:1.2.7-13.el7.x86_64 glibc-0:2.17-106.el7_2.1.x86_64 filesystem-0:3.2-21.el7.x86_64 redhat-release-server-0:7.3-7.el7.x86_64 libsepol-0:2.5-6.el7.x86_64 ncurses-libs-0:5.9-14.20130511.el7_4.x86_64 libgcc-0:4.8.3-9.el7.i686 info-0:5.1-4.el7.x86_64 glibc-common-0:2.17-78.el7.x86_64
Alternativní metoda – yumdownloader
Dalším způsobem je použít yumdownloader mějte však na paměti, že to nezachytí závislosti závislostí, takže to možná budete muset spouštět na dalších balíčcích v seznamu, dokud nebudete mít všechny požadavky.
# yumdownloader --resolve systemd Loaded plugins: langpacks, product-id --> Running transaction check ---> Package systemd.x86_64 0:219-42.el7_4.4 will be installed --> Processing Dependency: systemd-libs = 219-42.el7_4.4 for package: systemd-219-42.el7_4.4.x86_64 --> Running transaction check ---> Package systemd-libs.x86_64 0:219-30.el7_3.7 will be updated --> Processing Dependency: systemd-libs = 219-30.el7_3.7 for package: libgudev1-219-30.el7_3.7.x86_64 --> Processing Dependency: systemd-libs = 219-30.el7_3.7 for package: systemd-219-30.el7_3.7.x86_64 --> Processing Dependency: systemd-libs = 219-30.el7_3.7 for package: systemd-python-219-30.el7_3.7.x86_64 ---> Package systemd-libs.x86_64 0:219-42.el7_4.4 will be an update --> Running transaction check ---> Package libgudev1.x86_64 0:219-30.el7_3.7 will be updated ---> Package libgudev1.x86_64 0:219-42.el7_4.4 will be an update ---> Package systemd.x86_64 0:219-30.el7_3.7 will be updated --> Processing Dependency: systemd = 219-30.el7_3.7 for package: systemd-sysv-219-30.el7_3.7.x86_64 ---> Package systemd-python.x86_64 0:219-30.el7_3.7 will be updated ---> Package systemd-python.x86_64 0:219-42.el7_4.4 will be an update --> Running transaction check ---> Package systemd-sysv.x86_64 0:219-30.el7_3.7 will be updated ---> Package systemd-sysv.x86_64 0:219-42.el7_4.4 will be an update --> Processing Conflict: systemd-219-42.el7_4.4.x86_64 conflicts dracut < 033-499 --> Restarting Dependency Resolution with new changes. --> Running transaction check ---> Package dracut.x86_64 0:033-463.el7 will be updated --> Processing Dependency: dracut = 033-463.el7 for package: dracut-network-033-463.el7.x86_64 --> Processing Dependency: dracut = 033-463.el7 for package: dracut-config-rescue-033-463.el7.x86_64 ---> Package dracut.x86_64 0:033-502.el7 will be an update --> Running transaction check ---> Package dracut-config-rescue.x86_64 0:033-463.el7 will be updated ---> Package dracut-config-rescue.x86_64 0:033-502.el7 will be an update ---> Package dracut-network.x86_64 0:033-463.el7 will be updated ---> Package dracut-network.x86_64 0:033-502.el7 will be an update --> Finished Dependency Resolution Delta RPMs disabled because /usr/bin/applydeltarpm not installed. (1/8): dracut-config-rescue-033-502.el7.x86_64.rpm | 55 kB 00:00:00 (2/8): dracut-033-502.el7.x86_64.rpm | 321 kB 00:00:00 (3/8): dracut-network-033-502.el7.x86_64.rpm | 97 kB 00:00:00 (4/8): libgudev1-219-42.el7_4.4.x86_64.rpm | 83 kB 00:00:00 (5/8): systemd-libs-219-42.el7_4.4.x86_64.rpm | 376 kB 00:00:00 (6/8): systemd-python-219-42.el7_4.4.x86_64.rpm | 116 kB 00:00:00 (7/8): systemd-sysv-219-42.el7_4.4.x86_64.rpm | 70 kB 00:00:00 (8/8): systemd-219-42.el7_4.4.x86_64.rpm | 5.2 MB 00:00:00Jak používat „yum downloadonly“ ke stažení balíčku bez jeho instalace
Stažení konkrétní verze balíčku a jeho závislostí z úložiště pro offline instalaci pomocí YUMDownloading RPM balíčků se závislostmi [ yumdownloader vs yum-downloadonly vs repoquery]