一、软件包管理简介
1.1 软件包分类
- 源码包(绝大多数C语言写的)
- 脚本安装包 (不需要手动安装,安装界面)
- 二进制包(RPM包,系统默认包)(经过编译之后的)
1.2 源码包
优点:
- 开源
- 自由选择所需功能
- 软件是编译安装,所以更加适合自己的系统,稳定高效
- 卸载方便(可直接删掉目录)
缺点:
- 安装步骤多,容易出现拼写错误
- 编译过程时间长,安装比二进制安装时间长
- 因为是编译安装,安装过程中一旦报错新手很难解决
1.3 RPM 包
优点:
- 包管理系统简单,只通过几个命令就可以
- 安装速度更快
缺点:
- 看不到源代码
- 功能选择不如源码包灵活
- 依赖性
二、RPM包管理-rpm命令管理
2.1 rpm 命令管理 - 包命名与依赖性
noarch - 任何平台都可以
2.2 RPM包依赖性
树形依赖:a -> b -> c
环形依赖:a -> b -> c -> a
模块依赖:模块依赖查询网站:www.rpmfind.net
2.3 包全名和包名
- 包全名:操作的包是没有安装的软件包时,使用包全名,而且要注意路径。
- 包名:操作已经安装的软件包时,使用包名。是搜索 /var/lib/rpm中的数据库。
2.4 RPM安装
rpm -ivh 包全名
选项:
-i (install) 安装
-v (verbose) 显示详细信息
-h (hash) 显示进度
--nodeps 不检测依赖性
rpm -ivh httpd-(要安装的包全名)
根据提示的依赖包信息一步步安装
2.5 RPM包升级与卸载
rpm -Uvh 包全名
选项:
-U (upgrade) 升级
rpm -e 包名
选项:
-e (erase) 卸载
--nodeps 不检测依赖性
2.6 RPM命令管理 - 查询
2.6.1 查询是否安装
2.6.2 查询软件包详细信息
未安装的包信息
rpm -qip + 包全名