Gentoo源码安装
一、前期准备
(1)下载以下三个文件
install-x86-minimal-20121213.iso
portage-latest.tar.bz2
stage3-i686-2008.0.tar.bz2
根据版本不同可能后面的编号略有出入
二、配置安装环境
(1)用光盘引导到LiveCD环境,正常引导成功会出现“#”标示符
(2)配置当前LiveCD环境的网络 安装Gentoo时,服务器引导的LiveCD环境必须能够连接外网。因为在安装过程中需要在线下载内核和其它相关软件。而我们又想用ssh远程进行安装操作,所以服务器引导的当前LiveCD环境还要开启sshd服务,使服务器可以用Linux下的ssh或Windows下的PuTTY远程连接。所以这里的网络设置主要实现两个目的:一是使当前服务器引导的LiveCD环境能够连接外网,二是开启sshd服务,使服务器可以用ssh远程连接。
服务器的网络规划: 服务器有三个网卡:eth0、eth1、eth2。
这里只使用eth0和eth2两块网卡。
eth0 IP地址:192。168.10.200,用于远程连接。
eth2 IP地址:用dhcpcd命令自动获取IP,通过NAT联接外网。
设置IP地址:
检查服务器是否可以连接外网,这里ping一下百度的网站。
可以ping通百度,连接外网OK。
开启sshd服务并设置root密码: livecd ~# /etc/init.d/sshd start livecd ~# password root
注意: 这里的root是当前LiveCD环境的root用户。之所以设置密码,是因为sshd服务默认远程连接登录的用户必须设置密码。这里root用户密码设置为:123456
(3)从另一台主机通过LiveCD环境下开启的sshd服务远程连接到该服务器 在Linux下可以用ssh命令远程连接到开启了sshd服务的服务器,Windows下可以用PuTTY工具。我这里使用PuTTY。
三、建立分区
500GB硬盘分区规划:
/dev/sda1 /boot 200M
/dev/sda2 / 20GB
/dev/sda3 swap 20GB
/dev/sda5 /home 20GB
/dev/sda6 /usr/local 20GB
/dev/sda7 /var 20GB
/dev/sda8 100GB 预留空间100GB
/dev/sda9 100GB 预留空间100GB
/dev/sda10 200GB 乘余所有空间
(1)通过fdisk创建分区:
[root@localhost beinan]# fdisk /dev/sda
Command (m for help): 在这里按m ,就会输出帮助;
Command action
a toggle a bootable flag
b edit bsd disklabel
c toggle the dos compatibility flag
d delete a partition 注:这是删除一个分区的动作;
l list known partition types 注:l是列出分区类型,以供我们设置相应分区的类型;
m print this menu 注:m 是列出帮助信息;
n add a new partition 注:添加一个分区;
o create a new empty DOS partition table
p print the partition table 注:p列出分区表;
q quit without saving changes 注:不保存退出;
s create a new empty Sun disklabel
t change a partition's system id 注:t 改变分区类型;
u change display/entry units
v verify the partition table
w write table to disk and exit 注:把分区表写入硬盘并退出;
x extra functionality (experts only) 注:扩展应用,专家功能;
通过输入n来创建自己想要的分区,分区完成后可输入P来查看分区
分区完成后,输入w写入分区。
注意: 在创建时,由于 /dev/sda3是作交换分区的,所以要修改 /dev/sda3 的分区类型为82,/dev/sda1作为boot分区,所以要标记为可启动分区。
(2)重新读取sda分区表
partprobe /dev/sda
(3)创建ext4文件系统
mkfs.ext /dev/sda1
........
其他分区类似
(4)创建swap分区
mkswap /dev/sda3
(5)激活swap分区
swapon /dev/sda3
swapon -s
(6)挂载
注意: 在Linux中,所有的目录都挂载在根目录“/”下。所以先挂载原先规划好作为根分区的文件系统到根“/”目录这个挂载点下,再在这个根分区文件系统上建立其它相关挂载点。
livecd ~ # mount /dev/sda3 /mnt/gentoo
livecd ~ # mkdir
/mnt/gentoo/boot
livecd ~ # mount /dev/sda1 /mnt/gentoo/boot
livecd ~ #
mkdir /mnt/gentoo/usr
livecd ~ # mount /dev/sda5 /mnt/gentoo/usr
livecd ~
# mkdir /mnt/gentoo/tmp
livecd ~ # mount /dev/sda6 /mnt/gentoo/tmp
livecd
~ # mkdir /mnt/gentoo/var
livecd ~ # mount /dev/sda7
/mnt/gentoo/var
livecd ~ # chmod 1777 /mnt/gentoo/tmp
单独挂载的tmp需要修改权限使users可以使用
(7)安装stage Tarball
livecd ~ #date 确认日期
livecd ~ #cd /mnt/gentoo
livecd gentoo #wget http://ftp.twaren.net/Linux/Gentoo/releases/x86/2008.0/stages/stage3-i686-2008.0.tar.bz2使用links浏览下载
livecd gentoo #md5sum -c stage3-i686-2008.0.tar.bz2.DIGESTS 需下载MD5校验文件
livecd gentoo # tar xvjpf stage3-i686-2008.0.tar.bz2
livecd gentoo #wget http://ftp.twaren.net/Linux/Gentoo/snapshots/portage-latest.tar.bz2下载最新Portage快照
livecd gentoo #tar xvjf /mnt/gentoo/portage-latest.tar.bz2 -C /mnt/gentoo/usr
(8)优化编译选项
/etc/make.conf 根据cpu类型优化gcc参数;http://en.gentoo-wiki.com/wiki/Safe_Cflags
四、用chroot命令切换系统到/dev/sda2根分区上
cd /
mount -t proc proc /mnt/gentoo/proc
mount -o bind /dev/ /mnt/gentoo/dev/
cp -L /etc/resolv.conf /mnt/gentoo/etc/
chroot /mnt/gentoo/ /bin/bash
env-update && source /ect/profile
五、设置时区
设置时区信息:根据具体情况使用/usr/share/zoneinfo中的正确条目。我们这里使用上海。
cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
六、设置主机名为gentoo
cd /etc/
echo "127.0.0.1 gentoo localhost" > hosts
sed -i -e 's/HOSTNAME.*/HOSTNAME="gentoo"/' conf/d/hostname
hostname gentoo
hostname -f
七、内核配置
未完待续。。。。。。