Gentoo安装部署手册(2)

20GB虚拟机硬盘分区规划:

/dev/sda1 /boot 200M

/dev/sda2 swap 1024M

/dev/sda3 / 剩余所有

(1)利用fdisk分区

# fdisk -l

Disk /dev/sda: 21.5 GB, 21474836480 bytes,41943040 sectors

Units = sectors of 1 * 512 = 512 bytes

Sector size (logical/physical): 512 bytes /512 bytes

I/O size (minimum/optimal): 512 bytes / 512bytes

# fdisk /dev/sda

sda1分区: n,p,1,回车,+200M

sda2分区: n,p,2,回车,+1024M

sda3分区: n,p,3,回车,回车

设置sda2分区为swap分区格式: t,2,82

最后保存写入分区并退出: w

(2)重新读取sda分区表:

# partx -a /dev/sda

(3)格式化为ext4文件系统

# mkfs.ext4 /dev/sda1

# mkfs.ext4 /dev/sda3

(4)格式化swap分区并激活

# mkswap /dev/sda2

# swapon /dev/sda2

# swapon -s

6.创建系统临时挂载点

# mount /dev/sda3 /mnt/gentoo

# mkdir /mnt/gentoo/boot

# mount /dev/sda1 /mnt/gentoo/boot

7.设置系统时间(重要)

# date 102314162013

8.下载系统编译包portage-latest.tar.bz2stage3-amd64-20131010.tar.bz2/mnt/gentoo目录下:

# cd /mnt/gentoo

# wget

#wget

# ls

boot lost+found portage-latest.tar.bz2 stage3-amd64-20131010.tar.bz2

9.解压stage3portage两个文件

# tar -jxvf stage3-amd64-20131010.tar.bz2

: stage3-amd64-20131010.tar.bz2解压的文件是Gentoo的目录结构,所以要解压到临时的系统目录下,/mnt/gentoo,方便后面进行chroot

# tar jxvf portage-latest.tar.bz2 -C /mnt/gentoo/usr

: portage-latest.tar.bz2解压的文件为系统软件目录结构,需要解压到/mnt/gentoo/usr目录下

10.切换系统到/dev/sda3根分区上并更新系统环境变量

# mount -t proc none /mnt/gentoo/proc

# mount -o bind /dev /mnt/gentoo/dev

# chroot /mnt/gentoo /bin/bash

# env-update

>> Regenerating /etc/ld.so.cache...

# source /etc/profile

# export PS1="(chroot) $PS1"

11.设置时区

# cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

12.设置主机名

# sed -i -e's/hostname.*/hostname="gentoo.example.com"/' /etc/conf.d/hostname

# echo "127.0.0.1 gentoo.example.com localhost" > /etc/hosts

13.设置DNS

# echo "nameserver 192.168.7.1" >> /etc/resolv.conf

14.内核配置

(1).安装内核源码

# emerge gentoo-sources

(2).安装自动编译内核工具genkernel

# emerge genkernel

(3).复制安装光盘的配置文件到genkernel搜索配置文件的默认位置

# zcat /proc/config.gz > /usr/share/genkernel/arch/x86/kernel-config

注:如果启动分区没有使用ext2或者ext3文件系统,则必须使用genkernel --menuconfig all来手动配置您的内核,把所使用的文件系统编译进内核。(不能编译为模块!)。EVMS2和LVM2也需要加上--evms2和--lvm2参数。

(4)运行genkernel

# cd /usr/src

# mv linux linux.bak

# ln -s linux-3.10.7-gentoo-r1 linux

注:以上三条命令如果未执行,直接genkernel all会报错

ERROR: Kernel Makefile (/usr/src/linux/Makefile) missing.....

原因可能是最新版本gentoo在/usr/src/linux下未找到Makefile文件,导致内核无法编译,需要重定向另一个目录,这里还是google老外的一篇文档中找到答案.

64位的gentoo安装好后,貌似会自动做一个以上的重定向处理,32位会有几率出现问题,需手动处理

# genkernel all

注: genkernel编译出的内核支持几乎所有硬件,编译需要一段很长的时间一旦genkernel运行完成,一个包括全部模块和initrd的内核将被建立。在后面配置引导程序时我们将会用到这个内核和initrd。请记下内核和initrd的名字,因为您将在配置引导程序的时候用到他们。initrd将会在启动真正的系统前自动识别硬件(如同安装光盘一样)。

(5)查看内核和initrd的名字

# ls /boot/kernel* /boot/initramfs*

-------------------------------

/boot/initramfs-genkernel-x86-3.10.7-gentoo-r1

/boot/kernel-genkernel-x86-3.10.7-gentoo-r1

-------------------------------

linux

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/19014.html