安装步骤:
1. 格式化分区(用parted工具)
空硬盘一共40GB,分区结果:
grub分区2MB
boot分区128MB
swap分区1024MB
系统分区剩下所有的
parted工具会在每一条命令执行完后,就把数据写到硬盘上,这里跟fdisk不一样
下面是命令:
进入parted:
root #
parted -a optimal /dev/sda
设置GPT标签:
(parted)
mklabel gpt
设置分区单位为MB:
(parted)
unit mib
创建grub分区:
(parted)
mkpart primary 1 3
(parted)
name 1 grub
(parted)
set 1 bios_grub on
创建boot、swap、系统分区:
(parted)
mkpart primary 3 131
(parted)
name 2 boot
(parted)
mkpart primary 131 643
(parted)
name 3 swap
(parted)
mkpart primary 643 -1
(parted)
name 4 rootfs
2. 创建文件系统
为第一步创建的分区创建文件系统:
创建boot分区为ext2文件系统:
root #
mkfs.ext2 /dev/sda2
创建系统分区为ext4文件系统:
root #
mkfs.ext4 /dev/sda4
创建swap分区为swap文件系统并使能:
root #
mkswap /dev/sda3
root #
swapon /dev/sda3
3. 挂载分区
root #
mount /dev/sda4 /mnt/gentoo
root #
mkdir /mnt/gentoo/boot
root #
mount /dev/sda2 /mnt/gentoo/boot
4. 下载文件系统
root #
cd /mnt/gentoo
root #
links http://www.gentoo.org/main/en/mirrors.xml
挑一个离自己比较近的镜像
进入目录:releases/amd64/autobuilds/
进入红框框起来的目录,其它的目录不知道是干嘛的,就先进这个什么后缀都没有的吧:
框起来的文件就是我们要下载的,按‘D’下载:
下完以后,解压:
root #
tar xvjpf stage3-amd64-20141204.tar.bz2
5. 修改编译选项
root #
vi /mnt/gentoo/etc/portage/make.conf
修改CFLAGS为:
CFLAGS="-march=native -O2 -pipe"
添加:
MAKEOPTS="-j4"
4就我的CPU核数,表示make时用4个线程同时跑。
6. chroot
选择镜像:
root #
mirrorselect -i -o >> /mnt/gentoo/etc/portage/make.conf
选择SYNC服务器:
root #
mirrorselect -i -r -o >> /mnt/gentoo/etc/portage/make.conf
复制DNS信息:
root #
cp -L /etc/resolv.conf /mnt/gentoo/etc/
挂载文件系统:
root #
mount -t proc proc /mnt/gentoo/proc
root #
mount --rbind /sys /mnt/gentoo/sys
root #
mount --rbind /dev /mnt/gentoo/dev
chroot:
root #
chroot /mnt/gentoo /bin/bash
root #
source /etc/profile
root #
export PS1="(chroot) $PS1"
7. 配置portage(这步不知道是干嘛的)
root #
emerge-webrsync
root #
emerge --sync
8. 配置时区
root #
echo "Asia/Chongqing" > /etc/timezone
root #
emerge --config sys-libs/timezone-data
9. 配置本地化
创建
/etc/locale.gen,并写入:
en_US ISO-8859-1
en_US.UTF-8 UTF-8
de_DE ISO-8859-1
de_DE@euro ISO-8859-15
root #
locale-gen
root #
eselect locale list
root #
eselect locale set 9
root #
env-update && source /etc/profile
10. 下载和编译内核
手动编译(自己试了,目前不会弄,内核起不来):
root #
emerge --ask sys-kernel/gentoo-sources
root #
emerge --ask sys-apps/pciutils
root #
cd /usr/src/linux
root #
make menuconfig
root #
make && make modules_install
root #
make install
自动编译:
root #
emerge --ask sys-kernel/genkernel
给/etc/fstab里加入:
/dev/sda2 /boot ext2 defaults 0 2
root #
genkernel all
自动编译时,不会添加大页面的支持,如果要加上,执行:
genkernel --menuconfig all
在menuconfig里选上Hugetlbfs:
File systems --->
Pseudo filesystems --->
[*] HugeTLB file system support
11. 安装initramfs
root #
emerge genkernel
root #
genkernel --install initramfs
root #
genkernel --lvm --mdadm --install initramfs
12. 配置系统
给/etc/fstab里添加如下内容:
/dev/sda2 /boot ext2 defaults,noatime 0 2
/dev/sda3 none swap sw 0 0
/dev/sda4 / ext4 noatime 0 1
/dev/cdrom /mnt/cdrom auto noauto,user 0 0
配置IP(/etc/conf.d/net):
config_eth0="192.168.100.43 netmask 255.255.255.0 brd 192.168.100.255"
routes_eth0="default via 192.168.100.1"
配置eth0开机启动:
root #
cd /etc/init.d
root #
ln -s net.lo net.eth0
root #
rc-update add net.eth0 default
13. 安装系统工具
安装日志工具:
root #
emerge --ask app-admin/syslog-ng
root #
rc-update add syslog-ng default
安装cron:
root #
emerge --ask sys-process/cronie
root #
rc-update add cronie default
安装文件索引:
root #
emerge --ask sys-apps/mlocate
默认sshd开机启动:
root #
rc-update add sshd default
安装DHCP客户端:
root #
emerge --ask net-misc/dhcpcd
14. 安装grub
root #
emerge --ask sys-boot/grub
root #
grub2-install /dev/sda
root #
grub2-mkconfig -o /boot/grub/grub.cfg