我们知道,如果一个计算器没有安装任何操作系统,它只是一堆无用的电子设备;安装了操作系统,没有应用软件,也是一个花瓶。因此,我们要想学会把这个“花瓶”变成我们可以使用的机器,就必须要学会安装软??件。在Windows系统中,安装软件非常简单。大多数情况下,运行安装包,然后“下一步”几步即可完成软件安装。但是,在Linux系统中,软件包的安装和管理远比Winodws复杂。许多。Linux下有两种软件包,分别是源代码包和二进制包。Linux源码包到底是什么?源代码包是源代码程序的一个大集合,是软件工程师按照特定的格式和语法编写的代码,是人类用计算机语言编写的指令。我们都知道计算机只能识别机器语言,也就是二进制语言,所以安装源码包需要一个中间角色,将代码语言“abcdedg”翻译成二进制语言。我们称这个中间角色为“编译器”。“编译”是指由计算机(或虚拟机)直接执行的从源代码到目标代码的翻译过程。编译器的作用是将源代码翻译成二进制代码,供计算机识别和运行。由于源码包的安装需要将源码编译成二进制码,所以安装时间比较长。比如我们在windows系统下安装一个几十兆的软件,可能几分钟就可以完成,因为不需要经过编译过程,所以安装速度非常快。但是在Linux系统中,如果我们采用源码包安装的方式安装一个压缩包只有20、30兆的软件,可能需要十几分钟到几个小时。并且在安装过程中,如果遇到错误,初学者很难解决,也很难继续安装。因此,为了解决这些使用源码包安装方式的问题,Linux包的安装方式就出现了使用二进制包安装方式。什么是Linux二进制包?二进制包是源码包编译成功后生成的包。由于在发布前已经编译好二进制包,用户可以更快地安装软件,安装过程中出现错误的几率也大大降低。二进制包是Linux下默认的安装包,所以有时候我们也把二进制包称为默认安装包。目前主流的二进制包管理系统主要有两种:RPM包管理系统:功能强大,易于安装、升级、查询和卸载,所以很多Linux发行版默认采用这种机制作为软件安装的管理方式。如Fedora、CentOS、SuSE等。DPKG包管理系统:DebianLinux开发的包管理机制。通过DPKG包,DebianLinux可以管理软件包。它主要用于Debian和Ubuntu。因为我使用的是CentOS系统,下面的讲解都是基于RPM二进制包的。源码包PKBinarypackage源码包一般包含多个文件的集合。出于分发的需要,通常将源码包打包压缩后发布。Linux中最常用的包压缩格式是“tar.gz”,所以源码包也被称为Tarballs。而源码包需要自行到软件官网下载。源码包的结构一般如下:源码相关文件配置和检测程序,比如config等软件安装说明和软件使用说明,比如README源码包优点:开源,如果有足够的能力修改源代码可以自由选择需要的功能。软件编译安装,更适合自己的系统,更稳定,更高效。方便卸载源码包。缺点:安装过程步骤较多,特别是在安装比较大的软件时组装时(比如在LAMP环境下搭建),容易出现拼写错误。编译过程耗时较长,安装时间比二进制安装时间长。因为是编译安装,安装过程中一旦报错,新手很难解决。正如我之前所说,二进制包在软件中。该包在发布时已经编译好,所以安装速度比源码包快很多。但是因为已经进行了翻译,所以大家已经看不到软件的源代码了。目前主流的两种二进制包系统是DPKG包和RPM包。RPM包的优点是:包管理系统简单,只需要几条命令就可以实现包的安装、升级、查询和卸载。安装速度比源码包快很多。源码功能选择不像源码包那样灵活和依赖。比如安装包a时需要先安装b和c,安装b时需要先安装d和e。这需要先安装d和e,然后是b和c,最后是a
