Linux软件安装管理(一):初识Linux软件包及其分类

内容提要

  1. 软件包发布的两种形式:源码包和RPM包
  2. 写脚本安装软件
  3. 利用yum软件管理RPM的依赖

1. 软件包分类

Linux的软件的发布形式有如下两种

  • 源代码包:需手工编译

    • 绝大多数开源软件都是直接以源代码形式发布,被打包成一个.tar.gz的归档压缩文件
    • 源代码需要手工编译才能运行,所以针对特定运行环境的编译出来的软件兼容性和可控性好
    • 优点:
      • 开源,学习者可以直接看到高手写的代码,可以修改源代码
      • 编译安装,更加适合自己的系统,更稳定高效
      • 卸载方便:直接删除安装文件目录就行
    • 缺点:
      • 安装过程步骤较多,尤其是大型软件
      • 编译过程时间长,编译时开源软件需要大量依赖其他开源软件包
      • 万一源码问题导致编译出错,不是自己写的很难解决
  • 二进制包(即RPM包):RPM命令管理

    • Linux系统就是用RPM包安装的,系统光盘中软件的系统默认包
    • 厂商把源码包编译好以后,发布的二进制包
    • 优点:
      • 软件包管理简单,通过命令就可以实现安装、升级、卸载
      • 软件安装速度快
    • 缺点:
      • 不能看到源代码
      • 依赖性:开源软件一般都会大量使用其他软件的功能,所以开源软件会有大量的依赖关系;安装中出现很多问题基本都是要解决依赖关系

3. 写脚本安装大型复杂软件

脚本安装:

  • 有的软件安装,需要几十个软件包联合安装
  • 高手把复杂的软件安装过程写成了shell脚本,安装直接执行脚本即可。但实际安装还是编译源码包或者RPM包
  • 优点:安装步骤少
  • 缺点:丧失了自定义性,自定义时需要修改脚本

2. 利用yum软件管理RPM依赖

  • 是用来管理RPM的软件
  • 用来解决RPM的依赖关系问题。特性:
    • 自动解决依赖关系
    • 可以对RPM进行分组,并基于组进行安装操作:原本RPM每个软件包独立的;基于组的安装即一次性安装一类软件,只需要安装一个组,一类软件就安装好了
    • 引入仓库概念,支持多个仓库
    • 配置简单

当前网速较慢或者你使用的浏览器不支持博客特定功能,请尝试刷新或换用Chrome、Firefox等现代浏览器