查阅rpm的依赖关系
1 使用RPM命令可以列出目标包所依赖的所有包,如下
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
| [root@sam Packages]# rpm -qR vim-enhanced /bin/sh config(vim-enhanced) = 2:8.0.1763-15.el8 libacl.so.1()(64bit) libacl.so.1(ACL_1.0)(64bit) libc.so.6()(64bit) libc.so.6(GLIBC_2.11)(64bit) libc.so.6(GLIBC_2.14)(64bit) libc.so.6(GLIBC_2.15)(64bit) libc.so.6(GLIBC_2.2.5)(64bit) libc.so.6(GLIBC_2.28)(64bit) libc.so.6(GLIBC_2.3)(64bit) libc.so.6(GLIBC_2.3.4)(64bit) libc.so.6(GLIBC_2.4)(64bit) libdl.so.2()(64bit) libdl.so.2(GLIBC_2.2.5)(64bit) libgpm.so.2()(64bit) libm.so.6()(64bit) libm.so.6(GLIBC_2.2.5)(64bit) libpthread.so.0()(64bit) libpthread.so.0(GLIBC_2.2.5)(64bit) libselinux.so.1()(64bit) libtinfo.so.6()(64bit) rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(FileDigests) <= 4.6.0-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 rpmlib(PayloadIsXz) <= 5.2-1 rtld(GNU_HASH) vim-common = 2:8.0.1763-15.el8 which
|
2 查还没有安装的
1 2 3 4 5 6 7 8 9 10 11 12 13
| [root@sam Packages]# rpm -qpR /tmp/iso2/Packages/vim-common-7.4.160-5.el7.x86_64.rpm /bin/sh config(vim-common) = 2:7.4.160-5.el7 libc.so.6()(64bit) libc.so.6(GLIBC_2.2.5)(64bit) libc.so.6(GLIBC_2.3)(64bit) libc.so.6(GLIBC_2.3.4)(64bit) rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(FileDigests) <= 4.6.0-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 rtld(GNU_HASH) vim-filesystem rpmlib(PayloadIsXz) <= 5.2-1
|
3 要下载一个 RPM 包而不安装,可以使用叫做’yumdownloader’的工具,下面我们先安装yumdownloader:
现在我们来检查一个未安装的RPM包的依赖关系(本例使用 tcpdump)。首先,我们使用yumdownloader把tcpdump的RPM包下载下来
1
| [root@sam Packages]# yumdownloader --destdir=. tcpdump
|
4 显示目标包所依赖的包:(为让repoquery正常的工作,需要保持网络的畅通,应为repoquery需要在Yum库中查找信息)
1
| [root@sam Packages]# repoquery --requires --resolve <package-name>
|