Linux学习之软件包管理--rpm命令管理

Posted 千纸鹤千颗心

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux学习之软件包管理--rpm命令管理相关的知识,希望对你有一定的参考价值。

1.rpm包命名规则

  对于Linux系统来说,所有的rpm包都在光盘里的Packages文件夹里。对于rpm包的命名规则,可以举例说明,如下面一个包:

    httpd-2.2.15-15.el6.centos.1.i686.rpm

  httpd        软件包名

  2.2.15         软件版本

  15          软件发布次数

  el6.centos        适合的Linux平台

  i686          适合的硬件平台

  rpm           rpm包扩展名

2.rpm把的依赖性

  1.树形依赖:安装a包,其依赖b包,装b包,其依赖c包。要安装c包才能安装b包再安装a包。

    a---b---c

  2.环形依赖:安装a包,其依赖b包,装b包,其依赖c包,装c包又依赖a包。此时可以用安装命令同时安装abc三个包。

    a---b---c--a

  3.模块依赖:软件包库依赖,提示信息以.so.数字结尾。它是某个软件包里面的一个文件,需要安装这个包。要想查询so文件所属的包,可以使用www.rpmfind.net网站以提示的so文件名进行查询。

3.包全名与包名

  包全名:包含软件包名、版本、适合硬件平台等信息的软件包的全部名称。操作的包是未安装的软件包时,使用包全名,如:安装、升级等。且要注意包所在的路径。

  包名:即包全名中的软件包名。操作的包是已经安装是软件包时,使用包名,如查询、卸载等。它会搜索/var/lib/rpm中的数据库,自动匹配。

4.rpm安装与升级

  语法:rpm -ivh 包全名

  -i(install)        安装

  -v(verbose)        显示详细信息

  -h(hash)        显示进度

  --nodeps         不检测依赖性(不推荐使用,不检测依赖性会导致底层功能缺失等问题)

  rpm包升级

  语法:rpm -Uvh 包全名

  -U(upgrade)    升级 

  如:安装httpd包,其会依赖各种底层包,按照错误提示依次安装即可。

 5.rpm查询

  5.1 查询是否安装

  语法:rpm -q 包名

  -q      查询(query) --查询是否安装

  -a      所有(all) --查询所有已安装包

  

  5.2 查询软件包信息

  语法:rpm -qi 包名

  -i       查询软件信息(information) --查询软件包详细信息

  -p      查询未安装包信息(package) --

  

  5.3 查询包中文件安装位置

  语法:rpm -ql 包名

  -l    列表(list) --以绝对路径显示包中文件位置

  -p      查询未安装包位置(包的安装位置在开发时就设置好了的,所以可以用这个命令查看未安装的包打算装在哪)

    

  5.4 查询系统文件属于哪个rpm包(文件必须是通过包安装的,而不能是自己建立的)

  语法:rpm -qf 系统文件名

  -f    文件(file)

  

  5.5 查询软件包的依赖性

  语法:rpm -qR 包名

  -R    查询软件包的依赖性(requires)

  -p    查询未安装包信息

  查询已安装的包的依赖性没有意义,此命令多用来查询未安装包的依赖性。此时,需要进入光盘中的存放包的目录。

     

 

以上是关于Linux学习之软件包管理--rpm命令管理的主要内容,如果未能解决你的问题,请参考以下文章

入门VMware Workstation下的Debian学习之基本命令

Linux学习之软件包管理--yum在线管理

linux学习之软件包安装

大数据学习之_01_Linux学习_02_组管理和权限管理+定时任务调度+linux磁盘分区挂载+linux的网络配置+进程管理(重点)+软件包管理+大厂面试题+感悟分享+资料附录

linux常用命令---rpm软件包管理

linux软件管理命令-- rpm