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 +包的名字