Gentoo安装笔记

把Gentoo安装了一遍,才知道原来一个Linux系统是这样搭建起来的。


# 准备:
# install-x86-minimal-2008.0.iso
# vmware 256M内存 8G硬盘 桥接网络

# 启动
# 使用install-x86-minimal-2008.0.iso启动
# 启动选项:gentoo-nofb nox (no framebuffer, no X)

# 用远程安装
# 设置root的密码并启动ssh服务
passwd
/etc/init.d/sshd start

# 配置网络-自动获取了IP:
ifconfig

eth0 Link encap:Ethernet HWaddr 00:0C:29:32:33:2D
inet addr:192.168.0.20 Bcast:192.168.0.255 Mask:255.255.255.0
inet6 addr: fe80::20c:29ff:fe32:332d/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:44 errors:0 dropped:0 overruns:0 frame:0
TX packets:55 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:6297 (6.1 Kb) TX bytes:7888 (7.7 Kb)
Interrupt:16 Base address:0x2000

lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:3 errors:0 dropped:0 overruns:0 frame:0
TX packets:3 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:54 (54.0 b) TX bytes:54 (54.0 b)

route

Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.168.192.loc * 255.255.255.0 U 0 0 0 eth0
loopback * 255.0.0.0 U 0 0 0 lo
default 1.0.168.192.loc 0.0.0.0 UG 0 0 0 eth0

cat /etc/resolv.conf

# Generated by dhcpcd for interface eth0
search
nameserver 202.101.103.55
nameserver 192.168.0.1


# 配置网络-手动配置网络:
ifconfig eth0 192.168.0.20 netmask 255.255.255.0
route add default gw 192.168.0.1

# 准备磁盘:
fdisk /dev/sda

Command (m for help): p

Disk /dev/sda: 8589 MB, 8589934592 bytes
255 heads, 63 sectors/track, 1044 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x20461369

Device Boot Start End Blocks Id System
/dev/sda1 * 1 17 136521 83 Linux
/dev/sda2 18 80 506047+ 82 Linux swap / Solaris
/dev/sda3 81 203 987997+ 83 Linux
/dev/sda4 204 1044 6755332+ 8e Linux LVM


# 加载LVM模块
modprobe dm-mod
# 修改lvm配置文件如下所示
grep filter /etc/lvm/lvm.conf

filter = [ "a|/dev/sda|", "r/.*/" ]

# 配置LVM
vgscan

Reading all physical volumes. This may take a while...
No volume groups found

vgchange -a y

No volume groups found

pvcreate /dev/sda4

Physical volume "/dev/sda4" successfully created

vgcreate vg /dev/sda4

Volume group "vg" successfully created


# 创建文件系统
mke2fs /dev/sda1
mke2fs -j /dev/sda3
mkswap /dev/sda2
swapon /dev/sda2
lvcreate -L3G -nusr vg
lvcreate -L128M -nhome vg
lvcreate -L1G -nopt vg
lvcreate -L1G -nvar vg
lvcreate -L128M -ntmp vg
mke2fs -j /dev/vg/usr
mke2fs -j /dev/vg/home
mke2fs -j /dev/vg/opt
mke2fs -j /dev/vg/var
mke2fs -j /dev/vg/tmp
mount /dev/sda3 /mnt/gentoo
mkdir /mnt/gentoo/boot
mount /dev/sda1 /mnt/gentoo/boot
mkdir /mnt/gentoo/usr
mkdir /mnt/gentoo/home
mkdir /mnt/gentoo/opt
mkdir /mnt/gentoo/var
mkdir /mnt/gentoo/tmp
mount /dev/vg/usr /mnt/gentoo/usr
mount /dev/vg/home /mnt/gentoo/home
mount /dev/vg/opt /mnt/gentoo/opt
mount /dev/vg/var /mnt/gentoo/var
mount /dev/vg/tmp /mnt/gentoo/tmp
chmod 1777 /mnt/gentoo/tmp

# 对时
date 04091334

# 解压stage3和portage
cd /mnt/gentoo/
wget http://192.168.0.10:8080/gentoo/stage3-x86-2008.0.tar.bz2
tar xvjpf stage3-x86-2008.0.tar.bz2
# x表示解开(Extract),
# v表示详细信息(Verbose)可以用来查看解压缩时发生了什么(可选参数),
# j表示使用bzip2解压缩,
# p表示保留权限(Preserve permissions),
# 还有f表示我们要解开一个文件,而不是标准输入。
wget http://192.168.0.10:8080/gentoo/portage-20081004.tar.bz2
tar xvjf /mnt/gentoo/portage-20081004.tar.bz2 -C /mnt/gentoo/usr

# 挂载/proc和/dev文件系统
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"

# 修改新系统的编译选项/etc/make.conf
# 由于新系统中没有vi,可以在livecd系统中修改/mnt/gentoo/etc/make.conf,效果一样;
# 选项文件/etc/make.conf;

MAKEOPTS="-j2"
GENTOO_MIRRORS="http://192.168.226.0.10:8080/gentoo ftp://gentoo.anheng.com.cn/gentoo http://mirror.averse.net/pub/gentoo"
USE="-gnome -kde -qt3 -qt4 X mysql php apache2 java innodb gd hal startup-notification"

# 修改新系统的glibc Locales
# 文件/etc/locale.gen

en_US ISO-8859-1
en_US.UTF-8 UTF-8
zh_CN GBK
zh_CN.UTF-8 UTF-8

# 在新系统中执行locale-gen
# 后面以“(chroot)livecd ~”开头的指令都是指在新系统中执行
(chroot)livecd ~ locale-gen

# 修改时区
(chroot)livecd ~ cp /usr/share/zoneinfo/GMT /etc/localtime

# 安装源码编译内核
(chroot)livecd ~ emerge gentoo-sources
(chroot)livecd ~ cd /usr/src/linux
# 如果用的PuTTY,将终端类型设成xterm-color,可能有更好的视觉效果
(chroot)livecd ~ make menuconfig
# 检查以下内核选项
# Processor type and features ---> Processor family
# Device Drivers
# 去掉不需要的驱动;
# 确保开了LVM2,默认有开;
# 确保自己使用的网卡有选上,使用lspci可以查看检测到的硬件;
(chroot)livecd ~ make
(chroot)livecd ~ cp arch/x86/boot/bzImage /boot/kernel-2.6.25-gentoo-r8
# "x86"根据CPU的不同可能会不同,注意看编译最后的提示;
(chroot)livecd ~ make modules_install

# 安装lvm2包
(chroot)livecd ~ emerge lvm2
(chroot)livecd ~ rc-update add device-mapper boot
(chroot)livecd ~ rc-update add lvm boot

# 创建新系统的/etc/fstab

/dev/sda1 /boot ext2 noauto,noatime 1 2
/dev/sda3 / ext3 noatime 0 1
/dev/sda2 none swap sw 0 0
/dev/vg/usr /usr ext3 noatime 0 2
/dev/vg/home /home ext3 noatime 0 2
/dev/vg/opt /opt ext3 noatime 0 2
/dev/vg/var /var ext3 noatime 0 2
/dev/vg/tmp /tmp ext3 noatime 0 2
/dev/cdrom /mnt/cdrom auto noauto,ro 0 0


# 修改新系统的下列文件
# /etc/conf.d/hostname
# /etc/conf.d/net (放空会自动获取IP)
# /etc/hosts
# /etc/rc.conf
# /etc/conf.d/keymaps
# /etc/conf.d/clock
# /etc/resolv.conf

# 设置密码
(chroot)livecd ~ passwd

# 安装必要的系统工具
(chroot)livecd ~ emerge syslog-ng logrotate vim dhcpcd grub

# 配置启动
# 修改新系统的/boot/grub/grub.conf

default 0
timeout 5

title Gentoo Linux 2.6.25-r8
root (hd0,0)
kernel /boot/kernel-2.6.25-gentoo-r8 root=/dev/sda3

title Gentoo Linux 2.6.25-r8 (rescue)
root (hd0,0)
kernel /boot/kernel-2.6.25-gentoo-r8 root=/dev/sda3 init=/bin/bb

# 修改新系统的/boot/grub/device.map,去掉fd0
(chroot)livecd ~ grep -v rootfs /proc/mounts > /etc/mtab
(chroot)livecd ~ grub-install --no-floppy /dev/sda

# 卸载文件系统
umount /mnt/gentoo/boot
umount /mnt/gentoo/usr
umount /mnt/gentoo/home
umount /mnt/gentoo/opt
umount /mnt/gentoo/var
umount /mnt/gentoo/tmp
vgchange -a n

# 重启

# 安装distcc(可选,加快编译速度,当然要有其它gentoo服务器也安装了distcc)
emerge distcc
distcc-config --set-hosts "192.168.226.3 192.168.226.204"

# 配置文件/etc/conf.d/distccd

DISTCCD_OPTS="${DISTCCD_OPTS} --allow 192.168.226.0/24"


# 配置/etc/make.conf文件

FEATURES="distcc"
MAKEOPTS="-j4"


# 安装mysql apache php tomcat
emerge mysql apache php tomcat
emerge --config mysql
rc-update add mysql default
rc-update add apache2 default
rc-update add tomcat-6 default

# 安装工具
emerge gentoolkit pciutils

# 试试lvm
# 在虚拟机中添加一个硬盘;
# 用fdisk将新硬盘/dev/sdb分成一个区,类型8e;
pvcreate /dev/sdb1
vgextend vg /dev/sdb1
lvextend -L+2G /dev/vg/usr
resize2fs /dev/vg/usr
pvdisplay
lvdisplay

# 安装Xorg
# 修改make.conf

INPUT_DEVICES="keyboard mouse"
VIDEO_CARDS="vmware"
ALSA_CARDS="ens1371"

# 显示所有驱动选项
emerge -pv xorg-server
# 安装
emerge xorg-x11
env-update
source /etc/profile

# 配置Xorg
# 创建xorg.conf文件
Xorg -configure
# 测试xorg.conf.new文件
X -config /root/xorg.conf.new
# 或半自动创建xorg.conf
xorgconfig
# 另一个工具
xorgcfg
# (如果X崩溃或者配置失败,试试:)
xorgcfg -textmode
# 拷贝xorg.conf
cp /root/xorg.conf.new /etc/X11/xorg.conf

# 安装Xfce4
emerge -avt xfce4
env-update && source /etc/profile
/etc/init.d/hald start
rc-update add hald default
echo "exec startxfce4" > ~/.xinitrc
startx
emerge -avt slim
# 然后在/etc/conf.d/xdm中编辑DISPLAYMANAGER变量:

DISPLAYMANAGER="slim"

# 如果想一启动就到图形界面
rc-update add xdm default
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值