运维之道 | 查询软件的依赖库包文件

一、yum

  • provides
[root@localhost ~]# yum provides wget
已加载插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
 * base: mirrors.huaweicloud.com
 * extras: mirrors.huaweicloud.com
 * updates: mirrors.cn99.com
wget-1.14-18.el7_6.1.x86_64 : A utility for retrieving files using the HTTP or FTP
                            : protocols
源    :base

wget-1.14-18.el7.x86_64 : A utility for retrieving files using the HTTP or FTP protocols
源    :@anaconda
  • deplist
[root@localhost ~]# yum deplist wget
已加载插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
 * base: mirrors.huaweicloud.com
 * extras: mirrors.huaweicloud.com
 * updates: mirrors.cn99.com
软件包:wget.x86_64 1.14-18.el7_6.1
   依赖:/bin/sh
   provider: bash.x86_64 4.2.46-33.el7
   依赖:/sbin/install-info
   provider: info.x86_64 5.1-5.el7
   依赖:libc.so.6(GLIBC_2.17)(64bit)
   provider: glibc.x86_64 2.17-292.el7
   ......
   ......

二、rpm

  • R
[root@localhost ~]# rpm -q wget				///查看对应的rpm包
wget-1.14-18.el7.x86_64
[root@localhost ~]# rpm -qR wget			///R的:requires就是依赖哪些软件包
/bin/sh
/bin/sh
/sbin/install-info
/sbin/install-info
config(wget) = 1.14-18.el7
libc.so.6()(64bit)
libc.so.6(GLIBC_2.11)(64bit)
libc.so.6(GLIBC_2.14)(64bit)
......
......
  • –test
    通过--test进行测试删除,查看是否有依赖关系,如果有会阻止删除,测试是否能够删除
[root@localhost ~]# rpm -e --test wget				///没有依赖包,可以删除
[root@localhost ~]# rpm -e --test nfs-utils			///有依赖包,不可以删除
错误:依赖检测失败:
        nfs-utils  (已安裝) libvirt-daemon-driver-storage-core-4.5.0-10.el7.x86_64 需要
  • 企业一般使用 rpm 安装软件,使用yum安装会连接依赖包,且会升级软件版本
  # rpm -q	包名				///查询软件是否已安装
  # rpm -ivh 包名  				///安装软件
  # rpm -e  包名  				///卸载软件
  # rpm -ql openssh-server  	///列出包的所有文件

三、 ldd

作用:用来查看程式运行所需的共享库,常用来解决程式因缺少某个库文件而不能运行的一些问题

  • 第一列:程序需要依赖什么库
  • 第二列:系统提供的与程序需要的库所对应的库
  • 第三列:库加载的开始地址
[root@localhost ~]# which wget				///查询软件或命令的绝对路径
/usr/bin/wget
[root@localhost ~]# ldd /usr/bin/wget 
        linux-vdso.so.1 =>  (0x00007fffde7cd000)
        libssl.so.10 => /lib64/libssl.so.10 (0x00007fbdde979000)
        libcrypto.so.10 => /lib64/libcrypto.so.10 (0x00007fbdde516000)
        libz.so.1 => /lib64/libz.so.1 (0x00007fbdde300000)
        libdl.so.2 => /lib64/libdl.so.2 (0x00007fbdde0fc000)
        libidn.so.11 => /lib64/libidn.so.11 (0x00007fbdddec9000)
        libuuid.so.1 => /lib64/libuuid.so.1 (0x00007fbdddcc4000)
        ......
        ......	
发布了118 篇原创文章 · 获赞 13 · 访问量 9426

猜你喜欢

转载自blog.csdn.net/VillianTsang/article/details/104188873