[ << ]
[ < ]
[ 主页 ]
[ > ]
[ >> ]
6. 安装Gentoo基本系统
内容:
6.a. Chroot
可选:选择境像站点
为了快速下载源代码,建议你选择一个速度快的境像站点。Portage将在make.conf中查找并使用GENTOO_MIRRORS变量定义的境像列表。你也可以浏览我们的镜像列表来寻找一个或者多个离你最近的镜像(通常它们是最快的),不过我们提供了一个不错的工具来帮助你选择境像,它叫mirrorselect。
代码 1.1: 使用mirrorselect更新GENTOO_MIRRORS变量 |
# mirrorselect -i -o >> /mnt/gentoo/etc/make.conf
|
警告:
不要选择任何IPv6的境像。我们的stage目前还不支持IPv6。
|
另一个重要的设置就是make.conf里的SYNC设置。这个变量包含你更新Portage树(Portage下载和安装软件时需要用到的ebuild和脚本等信息的集合)时用到的rsync服务器信息。虽然你可以手动输入一个SYNC服务器地址,不过还是让mirrorselect来帮你完成更加的方便:
代码 1.2: 使用mirrorselect选择rsync镜像站点 |
# mirrorselect -i -r -o >> /mnt/gentoo/etc/make.conf
|
运行完mirrorselect以后,最好自己再检查一下/mnt/gentoo/etc/make.conf里的设置!
拷贝DNS信息
在我们进入新环境之前,还有一件事需要完成,那就是从/etc/resolv.conf拷贝DNS信息。这一步可以保证你在进入新的系统环境后还可以继续使用网络。/etc/resolv.conf包含了你网络里的域名服务器。
代码 1.3: 拷贝DNS信息 |
# cp -L /etc/resolv.conf /mnt/gentoo/etc/
|
挂载/proc和/dev文件系统
将/proc文件系统挂载到/mnt/gentoo/proc,这样chroot后的环境里安装时也可以获取内核提供的相关信息,然后以bind方式挂载/dev文件系统。
代码 1.4: 挂载/proc和/dev |
# mount -t proc none /mnt/gentoo/proc
# mount -o bind /dev /mnt/gentoo/dev
|
进入新的系统环境
现在所有的分区都已经被初始化,基本环境也已安装完毕,现在是到了该用chroot进入新安装环境的时候了。这意味着我们从当前安装环境(安装光盘或者其他安装介质)切换到你安装的系统里(也就是被初始化的分区)。
完成chroot有三步。首先我们用chroot把根文件系统从/(安装介质里)切换到/mnt/gentoo(在你的分区里)。然后我们使用env-update来建立新的环境,也就是创建新的环境变量。最后我们用source加载这些变量。
代码 1.5: chroot到新环境里 |
# chroot /mnt/gentoo /bin/bash
# env-update
>> Regenerating /etc/ld.so.cache...
# source /etc/profile
# export PS1="(chroot) $PS1"
|
祝贺你!你现在已经在你自己的Gentoo Linux环境里了。当然这离安装完成还有段时间,因为我们可以看到安装指南还剩下很多章节呢 :-)
6.b. 配置Portage
更新Portage树
你现在应该更新你的Portage树到最新版本。执行emerge --sync。
代码 2.1: 更新Portage树 |
# emerge --sync
# emerge --sync --quiet
|
如果你网络前面的防火墙的配置使得rsync请求被阻挡的话,你可以使用emerge-webrsync下载和安装一个最新的portage快照。
如果系统警告你有一个新版本的Portage可用,你可以使用emerge --oneshot portage来更新它。
选择正确的Profile
首先,我们看一下一些小的定义。
profile是每个Gentoo系统的构造块。它不仅指定了USE、CFLAGS以及其他重要变量的默认值,它还把系统可用的软件版本锁定在某个范围。而这些都是由Gentoo的开发者来维护的。
以前,这个profile很少会有用户接触到。然而,有些情况下你可以决定需不需要修改profile。
你可以用下面的命令来查看当前使用的profile:
代码 2.2: 验证系统profile |
# eselect profile list
Available profile symlink targets:
[1] ${profile} *
[2] ${profile}/desktop
[3] ${profile}/server
|
默认的profile会提供给你一个基于2.6版本内核的Linux系统。这是默认推荐的,但是你也可以选择另外一个profile。
系统也为某些架构提供了desktop和server的子profile。运行eselect profile list来显示所有可用的profile。
看完了你的体系结构可用的profile之后,如果你愿意,你可以换一个profile。
代码 2.3: 切换profile |
# eselect profile set 2
|
注意:
子profile developer是专为Gentoo Linux开发任务而准备的,而不是用来帮助构建一般性的开发环境的。
|
配置USE变量
USE是Gentoo为用户提供的最具威力的变量之一。很多程序通过它可以选择编译或者不编译某些可选的支持。例如,一些程序可以在编译时加入对gtk或是对qt的支持。其它的程序可以在编译时加入或不加入对于SLL的支持。有些程序甚至可以在编译时加入对帧缓冲的支持(svgalib)以取代X11(X服务器)。
大多数的发行版会使用尽可能多的支持特性编译它们的软件包,这既增加了软件的大小也减慢了启动时间,而这些还没有算上可能会涉及到的大量依赖性问题。Gentoo可以让你自己定义软件编译的选项,而这正是USE要做的事。
在USE变量里你可以定义关键字,它被用来对应相应的编译选项。比如,ssl会让程序在它编译时加入对它的支持。-X会移除其对于X服务器的支持(注意前面的减号)。gnome gtk -kde -qt3 -qt4将会在你编译软件的时候添加对gnome(和gtk)的支持,并且移除对kde(和qt)的支持,这可以让你的系统尽可能多的为GNOME做优化。
默认的USE设置位于你profile的make.defaults文件里。你可以在符号连接/etc/make.profile所指向的目录和它所有的父目录里找到make.defaults文件。默认的USE设置是所有make.defaults文件里USE的集合。所有你放在/etc/make.conf里的USE都会根据默认设置重新计算。如果你添加了一些USE的设置,它会被增加到默认的列表里。如果你删除了一些USE设置(通过放一个减号到它前面),它将被从默认的列表里移除(如果它确实在默认列表里的话)。绝对不要改变/etc/make.profile目录里的任何东西,它会在你更新Portage的时候被覆盖掉!
关于USE的详解你可以在Gentoo手册的第二部分,USE标记里找到。对于USE标记的详细介绍可以查看你的系统里/usr/portage/profiles/use.desc。
代码 2.4: 查看可用的USE标记 |
# less /usr/portage/profiles/use.desc
|
作为一个例子,我们展示一个基于KDE的系统并带有DVD、ALSA以及光盘刻录支持的USE设置:
代码 2.5: 打开/etc/make.conf |
# nano -w /etc/make.conf
|
代码 2.6: USE设置 |
USE="-gtk -gnome qt3 qt4 kde dvd alsa cdr"
|
可选:glibc Locales
在你的系统里可能只会用到一个或两个locale。你可用/etc/locale.gen来指定locale。
代码 2.7: 打开/etc/locale.gen |
# nano -w /etc/locale.gen
|
下面这个例子中的locale同时支持英语(美国)和德语(德国)并带有字符集格式(比如UTF-8)的支持。
代码 2.8: 指定你的locale |
en_US ISO-8859-1
en_US.UTF-8 UTF-8
de_DE ISO-8859-1
de_DE@euro ISO-8859-15
|
下一步我们运行locale-gen。它会产生所有你在/etc/locale.gen文件里指定的locale。
现在我们继续配置内核。
[ << ]
[ < ]
[ 主页 ]
[ > ]
[ >> ]
本文档的内容遵循知识共享-署名-相同方式共享许可协议
|