install 駆け足版

Sabayon 試してみたけどふつーに Gentoo インストールすることにして、そのまま Sabayon の Live CD から install してみる。

てきとーな linux で起動

  • network 繋がる事
  • あとはごく基本的なコマンド使えれば何とかなる

disk 準備

$ fdisk /dev/sd*
(中略)
$ mk***fs /dev/sd*n

mount して gentoo 環境作る

$ mkdir /mnt/gentoo
$ mount /dev/sd*n /mnt/gentoo
# 以下は boot パーティション作るなら
$ mkdir /mnt/gentoo/boot
$ mount /dev/sd*n /mnt/gentoo/boot

mirrorlist からてきとーにミラー選んで

  • stage3 tarball: /releases//current-stage3/stage3-*-yyyymmdd.tar.bz2
  • portage snapshot: /snapshot/portage-latest.tar.bz2

をもらってきて展開

$ cd /mnt/gentoo
$ wget ftp://<mirror>/release/<arch>/current-stage3/stage3-*-yyyymmdd.tar.bz2
$ wget ftp://<mirror>/snapshot/portage-latest.tar.bz2
$ tar xvjpf stage3-*
$ tar xvjf portage-latest.tar.bz2

一回 2008.0 の stage3 でやったら gcc が古かったりしてめんどいことになった。

/etc/make.conf の CFLAGS とか

# /mnt/gentoo/etc/make.conf

CFLAGS="-march=barcelona -O2 -pipe"
CXXFLAGS="${CFLAGS}"

MAKEOPTS="-j2"

chroot して諸々設定

# chroot'ing
$ cp -L /etc/resolv.conf /mnt/gentoo/etc/
$ mount -t proc none /mnt/gentoo/proc
$ mount -o bind /dev /mnt/gentoo/dev
$ chroot /mnt/gentoo /bin/bash
$ env-update && source /etc/profile
$ export PS1="(chroot) $PS1"
# portage というか profile と USE flags
$ emerge --sync --quiet
$ ln -snf /usr/portage/profiles/<profile name> /etc/make.profile
$ nano -w /etc/make.conf"

このタイミングでは vim がないので仕方なしに nano を使う。

# /etc/locale.gen
en_US ISO-8859-1
en_US.UTF-8 UTF-8
ja_JP.EUC-JP EUC-JP
ja_JP.UTF-8 UTF-8
ja_JP UTF-8
# timezone
$ cp /usr/share/zoneinfo/Japan /etc/localtime
# vim だけいれとく
$ emerge vim

kernel つくる

$ emerge gentoo-sources
$ cd /usr/src/linux
$ make menuconfig

handbook によると以下の設定は必須

Processor type and features --->
   [ ] Machine Check Exception
   [ ]    Intel MEC Features
   [ ]    AMD MEC Features
   Processor family (AMD-Opteron/Athlon64) --->
     ( ) Opteron/Athlon64/Hammer/K8
     ( ) Intel P4 / older Netburst based Xeon
     ( ) Core 2/newer Xeon
     ( ) Generic-x86-64

   # multi-CPU(multi-core でも)なら
   [*] Symmetric multi-processing support

Executable file formats / Emulations --->
   [*] IA32 Emulation
File systems --->
   Pseudo Filesystems --->
      [*] /proc file system support
      [*] Virtual memory file system support (former shm fs)
# 必要なもの選ぶ
   <*> Reiserfs support
   <*> Ext3 journalling file system support
   <*> JFS filesystem support
   <*> Second extended fs support
   <*> XFS filesystem support
# PPPoE 使うなら
Device Drivers --->
   Networking Support --->
      <*> PPP (point-to-point protocol) support
      <*>    PPP support for async serial ports
      <*>    PPP support for sync tty ports
# USB のキーボードorマウス使うなら
Device Drivers --->
   [*] HID Devices --->
      <*> USB Human Interface Device (full HID) support

終わったら

$ make && make modules_install
$ cp arch/x86_64/boot/bzImage /boot/kernel-2.6.xx-gentoo-rX

/etc/fstab つくる

# /etc/fstab
/dev/sda1   none     swap       sw        0 0
/dev/sda2   /        reiserfs   noatime   0 1
/dev/sdb1   /home    reiserfs   noatime   0 2

ネットワークの設定

色々できるしやりたいんだけど、とりあえず IP 固定で動くだけは動くように。

# /etc/conf.d/hostname
hostname="tux"
# /etc/conf.d/net
config_eth0=( "192.168.0.X/24 brd 192.168.0.255" )
routes_eth0=( "default via 192.168.0.X" )

dns_domain="localdomain"
dns_servers="192.168.0.XX 192.168.0.XX"

/etc/conf.d/net で色々設定してると /etc/resolv.conf を書き換えてくれやがったりしてくれやがる。ちゃんと理解して設定しないといけないっぽいのでそのうち調べる。

$ rc-update add net.eth0 default
# /etc/hosts
127.0.0.1      tux.localdomain tux localhost

諸々設定

# root の password
$ passwd

$ vim /etc/rc.conf
# /etc/conf.d/keymaps
KEYMAP="jp106"
# /etc/conf.d/clock
CLOCK="local"

TIMEZONE="Japan"

諸々インストール

$ emerge syslog-ng && rc-update add syslog-ng default
$ emerge vixie-cron && rc-update add vixie-cron default
$ emerge slocate openssh reiserfsprogs

bootloader

# emerge grub
# /boot/grub/grub.conf

default 0
timeout 10
splashimage=(hd0,1)/boot/grub/splash.xpm.gz

title Gentoo Linux 2.6.30-r5
root (hd0,1)
kernel /boot/kernel-2.6.30-gentoo-r5 root=/dev/sda2
$ grep -v rootfs /proc/mounts > /etc/mtab
$ grub-install --no-floppy /dev/sda

chroot から抜けて unmount して reboot