22.1 软件管理员简介
在前一章我们提到以源代码的方式来安装软件,也就是利用厂商释出的 Tarball 来进行软件的安装。不过,你应该很容易发现,那就是每次安装软件都需要侦测操作系统与环境、设置编译参数、实际的编译、 最后还要依据个人喜好的方式来安装软件到定位。这过程是真的很麻烦的,而且对于不熟整个系统的朋友来说,还真是累人啊!
那有没有想过,如果我的 Linux 系统与厂商的系统一模一样,那么在厂商的系统上面编译出来的可执行文件, 自然也就可以在我的系统上面跑啰!也就是说,厂商先在他们的系统上面编译好了我们使用者所需要的软件, 然后将这个编译好的可执行的软件直接释出给使用者来安装,如此一来,由于我们本来就使用厂商的 Linux distribution ,所以当然系统 (硬件与操作系统) 是一样的,那么使用厂商提供的编译过的可可执行文件就没有问题啦! 说的比较白话一些,那就是利用类似 Windows 的安装方式,由程序开发者直接在已知的系统上面编译好,再将该程序直接给使用者来安装,如此而已。
那么如果在安装的时候还可以加上一些与这些程序相关的信息,将他创建成为数据库,那不就可以进行安装、反安装、 升级与验证等等的相关功能啰 (类似 Windows 下面的“新增移除程序”)?确实如此,在 Linux 上面至少就有两种常见的这方面的软件管理员,分别是 RPM 与 Debian 的 dpkg 。我们的 CentOS 主要是以 RPM 为主,但也不能不知道 dpkg 啦!所以下面就来约略介绍一下这两个玩意儿。
那有没有想过,如果我的 Linux 系统与厂商的系统一模一样,那么在厂商的系统上面编译出来的可执行文件, 自然也就可以在我的系统上面跑啰!也就是说,厂商先在他们的系统上面编译好了我们使用者所需要的软件, 然后将这个编译好的可执行的软件直接释出给使用者来安装,如此一来,由于我们本来就使用厂商的 Linux distribution ,所以当然系统 (硬件与操作系统) 是一样的,那么使用厂商提供的编译过的可可执行文件就没有问题啦! 说的比较白话一些,那就是利用类似 Windows 的安装方式,由程序开发者直接在已知的系统上面编译好,再将该程序直接给使用者来安装,如此而已。
那么如果在安装的时候还可以加上一些与这些程序相关的信息,将他创建成为数据库,那不就可以进行安装、反安装、 升级与验证等等的相关功能啰 (类似 Windows 下面的“新增移除程序”)?确实如此,在 Linux 上面至少就有两种常见的这方面的软件管理员,分别是 RPM 与 Debian 的 dpkg 。我们的 CentOS 主要是以 RPM 为主,但也不能不知道 dpkg 啦!所以下面就来约略介绍一下这两个玩意儿。