[LinuxFocus-icon]
<--  | 首页  | 站点地图  | 索引  | 搜索

新闻 | 过往期刊 | 链接 | 关于LF
This document is available in: English  ChineseGB  Deutsch  Francais  Nederlands  Russian  Turkce  Polish  

[Photo of the Author]
by Guido Socher (homepage)

关于作者:

Guido 非常喜欢 gentoo,因为 gentoo 能给他对安装过程更多的控制权,比其它任何发行版都多的控制权。


目录:

 

Gentoo linux

gentoo

摘要:

Gentoo Linux 是一个基于源码包的 Linux 系统。和已有的商业发行版相比,Gentoo 非常独特。

_________________ _________________ _________________

 

简介

如今的商业 linux 发行版提供了一个几乎完全自动化的安装过程。在自动的硬件检测之后,你只要回答几个问题,划分硬盘就可以了。一会功夫,所有的东西就都安装好了,你只要登陆就行了。

很多人都挺喜欢这种安装方式的,因为这确实非常简单,你根本就不需要对你的硬件有什么了解。

然而,有一个问题:你对系统的工作方式一无所知。以后如果出现了什么配置问题,你根本就不知道已有的设置从何而来,需要修改哪个文件或是使用什么配置工具来解决这个问题。  

Gentoo 的不同之处

Gentoo 和其它常见发行版相比十分与众不同。几乎没有东西是自动完成的。大部分的设置都是通过使用编辑器手工设置配置文件完成的,安装过程会消耗大量的时间。

Gentoo 的安装过程可以看做是一次 Linux 的课程。你可以从中学到很多有关系统的知识。大量的步骤都是手工完成的,消耗了很多时间,但从此以后,你可以更好地理解你的 Linux 系统地工作了。

Gentoo 还使用特定地编译器选项编译程序,这些选项可以生成为你的 CPU 定制的优化代码。除此之外,你还可以加入或去掉某些编译特征。最终的结果就是一个符合你的需要的优化的、个性化的系统。
gentoo screen shoot
Gentoo 的安装过程是基于命令行的
 

软件包管理

Gentoo 是基于源代码发布的。换句话说:缺省情况下,你将使用一个称为 emerge/ebuild 的自动编译系统从源代码开始安装系统。Emerge 使用 /usr/portage 目录树下的编译指令。在 /usr/portage 之下,你可以看到存放 emerge 的编译脚本的子目录。比如,目录 /usr/portage/app-editors/ 存放了用于编译各种编辑器的编译脚本。在 /usr/portage/packages 下,这里存放着编译前的二进制包。这些二进制包可以用于加速安装过程。在 /usr/portage/distfiles 之下,你可以存放由其它开发者发布的 tar 打包的源代码。如果这里已经存在代码了,emerge 就不会再去从网上下载源代码了。

一个非常重要的个性化选项就是 /etc/make.conf 文件中的 "USE flags"。许多应用程序都为它们的依赖关系提供了编译期选项(如:是否加入 mysql的支持,使用 Athena widget 还是 Qt,使用 oss 还是 alsa ...)。通过正确设置这些选项,你可以调整你的安装。

这是一个 emerge 使用的例子。要安装 vim,你只要运行:
emerge -k app-editors/vim
或直接运行
emerge -k vim

-k 选项意味着如果可以,就从二进制包开始安装,否则就从网上下载源代码、编译安装。如果要运行 "emerge -k vim" 的话,你可以使用 "-p" 选项在安装前查看系统将要做些什么。
emerge -k -p vim
这将告诉你,那些其它的被依赖的软件包将会被安装和如果你没有使用"-p"选项的话,系统将会做什么工作。(p 意味着 pretend,假装、佯动)

从 Red hat 转过来的用户会喜欢 “epm”命令的,它就是 gentoo 的 "rpm" 命令。比如,查询一个文件是属于哪个软件包的,你可以用:
epm -qil -f /the/file

如你所见,格式和 redhat 的 rpm 完全一致。

查询软件包的信息的另一个选择是 qpkg 命令。qpkg 也是一个非常强大的接口,但命令格式和 rpm 不一样了。例如,要大印所有已安装的软件包的列表,可以运行:
qpkg -I -nc
 

安装

Gentoo 需要良好的网络条件 (DSL 类的接入或更好)。理论上讲,gentoo 也可已仅仅使用 CD,但在我看来这是不太现实的。总会有些你需要的软件包在光盘上无法找到。Gentoo 有非常丰富的软件包 (或是编译指令更新)。

我建议第一次尝试 gentoo 的人使用光盘,从 "state3" 开始。"state3" 的 tar 包是大的预编译包。使用这些包可以大大加快安装速度。

除了这个建议,我不准备给什么更细节的解释,因为 gentoo 的安装指令涉及到了太多的东西。而 gentoo 的用户手册 (pdf, 1102643 bytes)快速参考手册 (pdf, 17899 bytes) 非常详尽。你应该首先阅读用户手册,并打印一份快速参考手册,一边一刻已在安装的时候参考。

你可能还需要看看 gentoo 1.4 安装指令手册 (pdf, 92926 bytes)。这些指令中的大部分在 gentoo 2004.0 中依然是合法的,但有些东西需要同时参考这份 117 页的安装指令手册和快速参考指南。

Gentoo 的一大优点就是你可以在安装过程中随时打断。如果你遇到什么问题,你可以卸载这些分区、调查问题。当你需要继续的时候,重新加载这些分区并继续中止了的安装过程就行了。

对于这些光盘,我建议你下载 CD1 和 2 的 ISO 镜像,但只刻录 CD1。CD1 是主安装光盘,也是一张不错的修复盘,包括很多工具。
CD2 只由预编译包,安装之后你就不再需要它了,除非你确信你要多次安装 Gentoo。CD2无需刻录,只要在安装时用 loopback 把它加载到 /usr/portage/packages 就行了:
mkdir /usr/portage/packages
mount -o loop -t iso9660 packages-pentium3-2004.0.iso /usr/portage/packages
# note: change the name of iso image to the right one for your cpu type
 

完成之后

主要安装过程将以命令行结束。也就是说,你还需要手工安装 X11, KDE, xfce, ... 或其它你想要得窗口系统。

你需要手工编辑 XF86Config 文件并用 startx 启动 X11。一旦 X11 工作了,你可以编辑 gdm 或 kdm 的配置文件来得到一个图形化的登陆窗口。

安装完成的系统仅包括命令行可能会打击一些用户,但这也给离你更多的控制权,你可以通过 emerge 控制每一个软件包的安装。  

结论

Gentoo 的目标受众是有经验的 UNIX/Linux 用户

要有效地使用 Gentoo,你需要诸如 DSL 的良好的网络条件。虽然很多网站提供 Gentoo 安装光盘,但在有 DSL 链接的情况下,可能还是把光盘镜像下载下来更好。

如果有几张 DVD 可以容纳全部 gentoo 的 distfiles 和对应的 portage tree 的 snapshots 将是一件很美妙的事情。这样的 DVD 可以允许我们在没有网络的情况下安装系统,并且可以长期维持一个比较老的安装版本。如果谁提供这样的服务请告知敝人,我将原意购买这张光盘。

Gentoo 的安装过程包括很多步骤,花费很长时间,但个性化和优化会带来很多不同。运行速度的增益可以达到 3-5%,当然这依赖于 USE flags 的设置。你可以体会到这是你的系统,而不是产品经理的。特别对于桌面计算机来说,你的系统中的所有软件都是按照你的需求设置的,这是一种非常美妙的感觉。

当我第一次看到 Gentoo 的时候被打击得够呛,但到现在我已经使用它半年了,我根本就不想再使用其它任何发行版了。我太喜欢 Gentoo 了。  

相关链接


 

对这篇文章发表评论

每篇文章都有各自的反馈页面。在这个页面里,您可以提交评论,也可以查看其他读者的评论:
 反馈页面 

<--, back to the index of this issue

主页由LinuxFocus编辑组维护
© Guido Socher, FDL
LinuxFocus.org
翻译信息:
en --> -- : Guido Socher (homepage)
en --> cn: 王旭 <wangxu(at)linuxfocus.org>

2004-05-08, generated by lfparser version 2.46