首页 > 技术文章 > Linux软件安装——软件包分类、RPM包管理

zhai1997 2019-12-09 17:26 原文

1、软件包分类:

(1)源码包:

        优点:开源,即用户可以看到源代码,用户可以修改源代码;可以自由选择所需的功能;软件是编译安装,效率更高。

        缺点:需要手动安装,安装慢。

(2)二进制包(RPM包、系统默认包):

        缺点:编译之后的包,不能看到源代码;功能选择不够灵活;依赖性(卸载安装有严格顺序)。

        优点:不需要手动安装,安装速度快;包管理系统简单(安装、卸载、升级、验证等)

 2、RPM包管理——命令管理方式

(1)RPM包命名规则:

 

noarch:适用于任何的硬件平台。

name:表示包的名称,包括主包名和分包名,如:httpd

version:表示包的版本信息,如:2.2.6

release:用于标识rpm包本身的发行号,可还包含适应的操作系统

arch:表示主机平台

发行号:如:1

(2)RPM包依赖:

 

 第一个为树形依赖,第二个为环形依赖。在树形依赖中,必须先安装软件包c,再安装软件包b最后安装软件包c,而卸载过程则正好相反。

由于依赖性的存在,使得安装卸载过程变得较为复杂,但是能够解决。

(3)模块依赖

a、挂载:

 

 b、进入文件夹:

 

 

 c、进入Packages目录,执行ls命令:

 

 所有的RPM包都被查询了出来。

e、安装:

 

 安装时存在模块依赖,依赖于libodbcinst.so.2  ,可以通过yum在线管理的方式解决。

 3、RPM包管理——yum在线管理

(1)包全名与包名:

包全名:操作的包是没有安装的软件包,使用的是包全名。

包名:操作的是已经安装的软件包,实际上是搜索/var/lib/rpm/中的数据库。

 

 这些文件都是二进制文件,不能用vim来查看。

(2)RPM包的安装:

a、先检验光盘是否已经挂载:

 

没有挂载的话先挂载:

 

 挂载成功:

 

 b、查看rpm包:

进入到mnt的cdrom目录下的Packages目录进行查看:

 c、安装:

rpm  -ivh  包全名

选项:

  -i (install)  安装

  -v (verbose) 显示详细信息

  -h (hash) 显示进度

  --nodeps 不检测依赖性(不允许使用)

 

 d、升级:

rpm  -Uvh  包全名

选项:

  -U  (upgrade) 升级

e、卸载:

rpm  -e  包名

选项:

  -e  (erase)卸载

  --nodeps 不检测依赖性(不允许使用)

f、查询:

rpm  -qa 

# 查询所有已经安装的RPM包

选项:

  -a  所有(all)

 g、验证:

rpm -V +软件包名

 

 

 

YUM:基于RPM包管理,能够直接从服务器自动下载RPM包并安装,可以自动处理依赖关系,并且一次安装所有的依赖软件包。

安装软件包:

yum install +包的名字

推荐阅读