在windows操作系统中,我们要想安装某个软件的时候,只要点开相应的exe文件,一直按“下一步”, 最后点“完成”,这样就可以在我们电脑上使用这个软件了。前面我们也提到过,Ubuntu提供了一个软件商店, 虽然它也可以提供软件的下载,并且能够自动安装,但是有些软件并不一定能够在里面搜索得到, 那只能以源码的方式来安装软件。采用源码的安装方式, 都需要检测当前的系统环境,设置编译的参数,如加入/剔除某个模块等,这样的安装方式就显得非常的繁琐。
1. 软件包与包管理工具
目前,大多数类 Unix 操作系统都提供了一种中心化的机制用来搜索和安装软件, 软件开发者先在固定的硬件平台上将需要安装或升级的软件编译好, 然后再将软件的所有相关的文件打包存放在公开的服务器中。用户想要安装某个软件时,通过包的形式进行分发, 包提供了操作系统的基本组件,以及共享的库、应用程序、服务和文档,当用户需要时, 可以运行特定的指令来安装。负责这部分工作内容的工具被称为包管理工具, 包管理工具除了安装软件外,它还负责更新已经安装的包。
在Linux操作系统中,最常见的两种包分别是deb和rpm。
1.1. deb包、dpkg及apt
在Debian、Ubuntu等Linux发行版中,通常使用deb(debian)形式的软件包