对于新手来说使用minimal光盘安装Gentoo是个具有挑战性的事情,最好的选择是先用虚拟机安装一个Gentoo的基本环境,然后再慢慢学习emerge命令和编译内核等晋级内容。这里使用的虚拟机是VMware 7.0,文章同样适用于Snow Leopard下的VMware Fusion 3.0环境。
第一步:新建Virtual Machine。新建Virtual Machine的时候选择Advanced,由于VMware不能识别Gentoo安装光盘的ISO文件,选择Operation System的时候选择Linux,Other Linux 2.6.x kernel。Processor一般选择2个单核的,Network Type选择Bridged,这样光盘启动安装的时候能自动识别到网卡,省去了很多设置的麻烦。硬盘选择SCSI的,硬盘的内容存储在一个文件中。
第二步:启动Virtual Machine,开启SSH服务。用minimal光盘启动进入到livecd的环境,如果网络环境里配置了DHCP,通过命令ifconfig检查Virtual Machine所分配的IP;如果需要自己配置IP地址,通过下面的命令来设置:
ifconfig eth0 192.168.1.10/24 #设置IP地址:192.168.1.10
route add default gw 192.168.1.1 #设置网关:192.168.1.1
echo nameserver 192.168.1.1 > /etc/resolv.conf #设置域名解析
启动SSH服务:
/etc/init.d/sshd start #启动ssh服务
passwd #设置root的密码
现在可以使用PuTTY或者Terminal(Snow Leopard)登录到Virtual Machine进行安装,这样可以复制/粘贴命令进行安装。
第三步:准备使用fdisk命令准备Hard Disk。
fdisk /dev/sda
The number of cylinders for this disk is set to 6527.
There is nothing wrong with that, but this is larger than 1024,
and could in certain setups cause problems with:
1) software that runs at boot time (e.g., old versions of LILO)
2) booting and partitioning software from other OSs
(e.g., DOS FDISK, OS/2 FDISK)
Command (m for help):
使用到fdisk的基本命令:n 创建一个分区; p 显示所有的分区; a 指定一个分区为启动分区, 显示的时候这个分区标有一个*;d 删除一个分区; t 改变一个分区的类型,Linux swap / Solaris的编号是82;l 显示所有的分区类型。
为硬盘创建一个启动分区,一个交换分区和一个根分区:
Disk /dev/sda: 53.7 GB, 53687091200 bytes
255 heads, 63 sectors/track, 6527 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x5f13998e
Device Boot Start End Blocks Id System
/dev/sda1 * 1 17 136521 83 Linux
/dev/sda2 18 83 530145 82 Linux swap / Solaris
/dev/sda3 84 6527 51761430 83 Linux
创建完分区,使用 w 命令保存结果后退出。
第四步:格式化磁盘。
mke2fs /dev/sda1 #格式化boot分区
mke2fs -j /dev/sda3 #格式化根分区
mkswap /dev/sda2 && swapon /dev/sda2 #初始化和激活交换分区
#挂载分区
mount /dev/sda3 /mnt/gentoo
mkdir /mnt/gentoo/boot
mount /dev/sda1 /mnt/gentoo/boot
cd /mnt/gentoo
第五步:安装Stage和Portage。使用links命令下载x86的stage3和portage,然后进行解压:
links http://www.gentoo.org/main/en/mirrors.xml
tar xvjpf stage3-*.tar.bz2
tar xvjf /mnt/gentoo/portage-latest.tar.bz2 -C /mnt/gentoo/usr
如果你提前下载了这2个文件,用scp命令copy到Virtual Machine会快很多。
第六步:配置编译选项。
添加MAKEOPTS参数,使用MAKEOPTS可以定义在安装软件的时候同时可以产生并行编译的数目,一般是CPU的数目加1。
第七步:切换系统。
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 /etc/profile
export PS1="(chroot) $PS1" #执行后,盘符就会从livecd变为(chroot)了。
第八步:设定locale、时区和主机名。
cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
sed -i -e 's/HOSTNAME.*/HOSTNAME="vmware-gentoo"/' /etc/conf.d/hostname
hostname vmware-gentoo
hostname -f
nano -w /etc/locale.gen
添加中文UTF-8的支持
en_US.UTF-8 UTF-8
zh_CN.UTF-8 UTF-8
zh_CN.GBK GBK
然后支持locale-gen命令。
第九步:配置内核。安装内核和genkernel工具,对于初次安装使用genkernel会比自己配置内核容易一些,同时还可以用menuconfig参数进行自定义。
time emerge -avt gentoo-sources genkernel
zcat /proc/config.gz > /usr/share/genkernel/arch/x86/kernel-config-2.6
genkernel --menuconfig all
使用genkernel会编译的时间比较长,编译后会在/boot/目录下生成内核文件,类型kernel-genkernel-x86-2.6.30-gentoo-r8。
第十步:编辑/etc/fstab,用实际的分区名代替BOOT、ROOT和SWAP
/dev/sda1 /boot ext2 noauto,noatime 1 2
/dev/sda3 / ext3 noatime 0 1
/dev/sda2 none swap sw 0 0
第十一步:配置系统。
echo 'config_eth0=( "192.168.1.10/24" )' >> /etc/conf.d/net
echo 'routes_eth0=( "default via 192.168.1.1" )' >> /etc/conf.d/net
rc-update add sshd default
rc-update add net.eth0 default
passwd
nano -w /etc/conf.d/clock
time emerge -avt syslog-ng vixie-cron
rc-update add syslog-ng default
rc-update add vixie-cron default
第十二步:配置引导程序。
time emerge -avt grub
nano -w /boot/grub/grub.conf
default 0
timeout 30
splashimage=(hd0,0)/boot/grub/splash.xpm.gz
title Gentoo Linux 2.6.30-r8
root (hd0,0)
#-------------------------------------------------------------------
#以下内容在同一行,之间用空格分隔
#-------------------------------------------------------------------
kernel /boot/kernel-genkernel-x86-2.6.30-gentoo-r8
root=/dev/ram0 init=/linuxrc ramdisk=8192
real_root=/dev/sda3
#-------------------------------------------------------------------
initrd /boot/initramfs-genkernel-x86-2.6.30-gentoo-r8
使用grub-install安装GRUB:
grep -v rootfs /proc/mounts > /etc/mtab
grub-install --no-floppy /dev/sda
第十三步:重启。
exit
umount /mnt/gentoo/dev /mnt/gentoo/proc /mnt/gentoo/boot /mnt/gentoo
reboot
OK,现在就有了一个基本配置的Gentoo系统。
----------------------------------------------------
vmdk下载地址Gentoo.2.6.31.Base.OS.vmdk