准备磁盘
使用fdisk或者cfdisk创建分区规划。至少需要一个交换分区(类别为82)和一个Linux分区(类别为83)。下面是我们的手册选用的方案,创建包括一个/boot分区,一个交换分区和一个主分区。将/dev/sda替换为你自己的磁盘。大多数系统忽略启动标志,但有的系统需要它。使用fdisk的a命令在启动分区上设置这个标志。
代码 2.8: 创建分区 |
livecd ~ # fdisk /dev/sda
(本手册接下去使用以下分区规划)
livecd ~ # fdisk -l /dev/sda
Disk /dev/sda: 599.9 GB, 599978409984 bytes
255 heads, 63 sectors/track, 72943 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sda1 * 1 12 96358+ 83 Linux
/dev/sda2 13 110 787185 82 Linux swap / Solaris
/dev/sda3 111 72943 585031072+ 83 Linux |
使用mke2fs,mke2fs -j,mkreiserfs,mkfs.xfs和mkfs.jfs建立Linux分区的文件系统。使用mkswap和swapon初始化交换分区。
代码 2.9: 创建文件系统并激活交换分区 |
(ext2完全满足/boot分区的需要)
livecd ~ # mke2fs /dev/sda1
(主分区就用ext3吧)
livecd ~ # mke2fs -j /dev/sda3
(创建并激活交换分区)
livecd ~ # mkswap /dev/sda2 && swapon /dev/sda2 |
注意:如果我们把分区格式化成EXT4文件系统时,在编译内核的时候一定要注意选择上对EXT4文件系统的支持,然后再编译内核。我用的是2011年4月26日的 release 文件,默认是没有选上EXT4的,所以一定要手动的去选上。如果你想用其它的文件系统也是一样,编译内核前一定要确认一下有没有选上。
把新建的文件系统挂载到/mnt/gentoo。如果需要其他挂载点(如/mnt/gentoo/boot),也要为它们创建目录并挂载好。
代码 2.10: 挂载文件系统 |
livecd ~ # mount /dev/sda3 /mnt/gentoo
livecd ~ # mkdir /mnt/gentoo/boot
livecd ~ # mount /dev/sda1 /mnt/gentoo/boot
livecd ~ # cd /mnt/gentoo |
安装Stage
首先确保正确设置了日期和时间。执行date MMDDhhmmYYYY,使用UTC时间。
代码 2.11: 设定日期和UTC时间 |
(查看时钟)
livecd gentoo # date
Mon Mar 6 00:14:13 UTC 2006
(设置当前日期和时间,如果需要的话)
livecd gentoo # date 030600162006 (格式为MMDDhhmmYYYY)
Mon Mar 6 00:16:00 UTC 2006 |
接下来,从我们的镜像下载一份stage包:
代码 2.12: 下载一份stage3压缩包 (如果事先有在官方下载好这个文件,只要把下载好的文件放进硬盘上就OK了。) |
livecd gentoo # links http://www.gentoo.org/main/en/mirrors.xml
(选一个镜像,进入releases/x86/current-stage3/目录,高亮显示你需要的stage3包,
即i686 stage3,按下D键下载)
(或者不选择最近的镜像,直接用wget下载)
livecd gentoo # wget ftp://distfiles.gentoo.org/pub/gentoo/releases/x86/current-stage3/stage3-i686-*.tar.bz2 |
进入/mnt/gentoo,执行tar xjpf <stage3 tarball>解压stage包。
代码 2.13: 解开stage3压缩包 (注意当前目录是/mnt/gentoo,这个目录挂载是硬盘中要作为根 “/”的那个分区。boot分区就是挂载在/mnt/gentoo/boot/下,boot这个目录是mkdir在根“/”上的。) |
livecd gentoo # time tar xjpf stage3*
real 1m14.157s
user 1m2.920s
sys 0m7.530s |
安装最新的Portage快照。跟下载stage3压缩包一样:从我们的列表选择一个最近的镜像,下载最新的快照并解压。
代码 2.14: 下载最新的Portage快照 (如果事先有在官方下载好这个文件,只要把下载好的文件放进硬盘上就OK了。) |
livecd gentoo # cd /mnt/gentoo/usr
livecd usr # links http://www.gentoo.org/main/en/mirrors.xml
(选一个镜像,进入snapshots/目录,高亮显示 portage-latest.tar.bz2 ,按下D键下载)
(或者不选择最近的镜像,直接用wget下载)
livecd gentoo # cd /mnt/gentoo/usr
livecd usr # wget http://distfiles.gentoo.org/snapshots/portage-latest.tar.bz2 |
代码 2.15: 解开Portage快照 (注意当前目录,这个目录是在 /mnt/gentoo/usr/) |
livecd usr # time tar xjf portage-lat*
real 0m40.523s
user 0m28.280s
sys 0m8.240s |
切换系统
挂载/proc & /dev文件系统,拷贝/etc/resolv.conf文件,然后chroot到你的Gentoo环境。
代码 2.16: Chroot (很正要,也很简单,别出错。一定要理解,不会因为在这一步下面所涉及到的目录与在这步之上所涉及的目录的不同而困惑。) |
livecd usr # cd /
livecd / # mount -t proc proc /mnt/gentoo/proc
livecd / # mount -o bind /dev /mnt/gentoo/dev
livecd / # cp -L /etc/resolv.conf /mnt/gentoo/etc/
livecd / # chroot /mnt/gentoo /bin/bash
livecd / # env-update && source /etc/profile
>>> Regenerating /etc/ld.so.cache... |
设定时区
设置你的时区信息:使用/usr/share/zoneinfo中的正确条目。
代码 2.17: 设置时区 |
livecd / # ls /usr/share/zoneinfo
(以上海为例)
livecd / # cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
livecd / # date
Thu Aug 30 11:03:16 CST 2007 |
设定主机名和域名
在/etc/conf.d/hostname和/etc/hosts中设置主机名。以下例子中我们用mybox作为主机名,用at.myplace作为域名。可以用nano编辑这些配置文件,或者使用下面的命令:
代码 2.18: 设置主机名和域名 (主要是修改 /etc/hosts 和 /etc/conf.d/hostname 这两个文件,手动进去修改也行。) |
livecd / # cd /etc
livecd etc # echo "127.0.0.1 mybox.at.myplace mybox localhost" > hosts
livecd etc # sed -i -e 's/HOSTNAME.*/HOSTNAME="mybox"/' conf.d/hostname
(使用指定的主机名并检查)
livecd etc # hostname mybox
livecd etc # hostname -f
mybox.at.myplace |
