描述
Gentoo Linux意味着选择,允许用户自由的选择是Gentoo最大的特色。前首席设计师Daniel Robbins提到,“设计的基本出发点让我们和其他用户随意使用,没有限制。”
如同其他有影响力的发行版本一样,Gentoo Linux提供了自己的有特色的软件管理工具——Portage。Portage受到FreeBSD的Ports影响很大。
优点
与大多数GNU/Linux发行版本不同,Gentoo Linux为用户提供了大量的应用程序源代码。Gentoo Linux的每一部分都可以在最终用户的系统上重新编译建造,甚至包括最基本的系统库和编译器自身。 通过依赖关系描述和源代码镜像的形式提供软件,Gentoo Linux提供了大量软件供用户选择。 标准的源代码镜像包括162G(2012年8月14日,镜像中distfiles目录)的数据。 选择不仅在软件整体方面,也存在于软件的内部。由于可以在本地编译软件,参数和变量的选择可以由用户自己指定。
指定参数的优势不仅在于用户了解了设置,更多是增加了针对硬件进行性能提升的余地。 而且用户可以使用自己喜欢的补丁或插件对软件功能进行调整,比如当前的Gentoo Linux内核发布包括15种。
由于系统及应用软件的安装方法差异显著,Gentoo Linux社区对安装内容的探讨相当深入。即便不使用 Gentoo Linux的用户也可以通过了解参数选择明白软件内部的设定。应用软件的配置设定都记录在ebuild文件中,由ebuild、emerge命令管理。
局限
安装Gentoo Linux对计算机系统的性能也有较高的要求,包括CPU和存储器,不过随着计算机产业的快速发展,即使中低端PC和笔记本也能较为快速地完成编译。当然这不意味着Gentoo Linux不能使用在低配置设备上,只是用户将会在安装相同的环境时会付出更多时间,或者使用另一台主机上预编译好的软件包(BINHOST方式)。所以,对于低配置的用户,软件包的挑选尤为重要。
软件包管理
gentoo的包管理工具称为portage。emerge是这个portage的字符界面管理工具,图形界面工具还有portato,porthole,kuroo,himerge等。ebuild
ebuild是Portage包管理程序的根本。它是一个纯文本文件,而每一个ebuild都会对应一个包(软件包)。ebuild会告诉portage要下载的文件、该包可运行的平台、如何编译它、它所依赖的ebuild和一些修补代码的patch。Portage内有一个ebuild大集合,称为Portage tree,是gentoo网站所提供的ebuild。它包含了大部份常用的包,并会不时更新。如果要使用的包不在其内,也可以手动加入。
USE标志
全局USE标志的设置位于Gentoo系统的/etc/portage/make.conf中,作用是使得emerge在处理依赖关系的时候可以做到不安装不需要的软件包(例如安装Gnome的用户没有必要因为一个软件包的依赖关系而安装KDE与Qt),而安装指定的软件包(同样以Gnome举例,Gnome的用户基本上都会安装GTK+),把系统的设置专注化。
常用包管理命令
- 同步portage:emerge --sync 或 emerge-webrsync
- 升级所有的软件包:emerge -uDN world
- 重编译所有的软件包:emerge -e world