Linux----RPM 包的管理

RPM 包的管理

包全名与包名

包全名

  • 当我们要操作的包是尚未安装的软件包时,需要使用包的全名,并且注明路径

  • 为啥要注明路径?

    • 如果我们要操作一个尚未安装的软件包,我们得需要让 Linux 能够找到这个软件包,因此我们要指定路径
  • 应用
    • 安装
    • 升级

包名

  • 当操作已经安装的软件包时,使用包名。
    • /var/lib/rpm中的数据库
  • 对于已经安装好的软件,我们只需要提供包名,Linux 操作系统就会去/var/lib/rpm/目录下的数据库中去查找。
    • /var/lib/rpm/目录下的文件都是二进制文件,不能使用vim打开,只能用相应的命令去操作
  • 应用
    • 查询
    • 卸载

rpm 命令管理

安装命令

  • 格式
    • rpm -ivh 包全名
      • -i
        • install 安装
      • -v
        • verbose 显示详细信息
      • -h
        • hash 显示安装进度
      • --nodeps不检测依赖性
        • 不建议使用--nodeps这个命令

升级命令

  • 格式
    • rpm -Uvh 包全名
      • -U
        • upgrade 升级

卸载命令

  • 格式
    • rpm -e 包名
      • -e erase 卸载
      • --nodeps 不检查依赖性

查询

安装和卸载我们可以使用 yum 来代替 rpm,但是“查询”我们只能用 rpm

查询包是否安装
  • 格式
    • rpm -q 包名
      • -q, query
    • rpm -qa
      • -a,all
      • 查询所有已经安装过的 rpm 包
查询软件包详细信息
  • 格式
    • rpm -qi 包名
      • -i,information,查询软件信息
    • rpm -qip 包全名
      • -p 包全名,package,查询尚未安装包的信息(在生产这个包的时候就指定了)
查询软件包文件安装位置
  • 格式
    • rpm -ql 包名
      • -l list,列表
    • rpm -qlp 包全名
      • 查询未安装包的安装位置(在生产这个包的时候就指定了),并以绝对路径列出
查询系统文件属于哪个 rpm 包
  • 格式
    • rpm -qf 系统文件名
      • -f,file,查询系统文件属于哪一个安装包
查询软件包的依赖性
  • 格式
    • rpm -qR 包名
      • -Rrequires,查询软件包的依赖性
    • rpm -qRp 查询未安装的软件包的依赖性信息
注意
  1. rpm 包的文件安装位置在安装包中是已经制定的了,当然你也可以更改,但是不建议修改器安装路径,因为一些系统搜索服务搜索的安装路径是固定的,如果我们修改了该路径,系统肯可能是找不到该路径的。一般我们试用期默认位置极了