Gentooをインストールしたことがなかったので, Gentooハンドブック通りにやってみる. 日本語版が更新されてないのがよく分かった.
環境
- uname -a: Linux debian 3.13-1-amd64 #1 SMP Debian 3.13.7-1 (2014-03-25)x86_64 GNU/Linux
- Virtualbox 4.3.6
1. Gentoo Linuxのインストールについて
- シンプル,先進的なメタディストリビューション
- システム全体をスクラッチからでも,コンパイル済みからでも,
- 半分だけでもおk
2. 適切なインストールメディアの選択
- http://mirrors.stuhome.net/gentoo/releases/x86/autobuilds/current-iso/install-x86-minimal-20140401.isoを使った
- GentooインストールCDは独立したGentoo環境を含むブート可能CD
install-x86-minimal-<release>.iso
- ディスク容量が104MBしか使わない
- 必ずネットワーク上環境が必要
- stage3 tarball
- 本マニュアルの対象
- 現在でもstage1, stage2は配布している
- ドキュメントもある
- 書き込んでブートする
- http://www.gentoo.org/main/en/mirrors.xmlから取ってくる
- releases/x86/autobuilds/current-iso
- パラメータを指定する
- 例えばgentooカーネルにカーネルパラメータdopcmciaを指定するなら,
- boot: gentoo dopcmciaみたいにする
- 普通に boot: gentooってやった
- すぐにキーボードを変更する.
- 22 JPにする
3. ネットワーク設定
- 勝手につながってたので飛ばす
- proxyの設定はこのタイミングで
- net-setup, pppoe-setup, pptpを使う
- net-setupが一般的
- もし,カーネルモジュール(ドライバ)に不足があれば
- 手動でやる
- ls /lib/modules3.12.13-gentoo/kernel/drivers/net/
- から見つけて modprode pcnet32とする
- 無線の場合はiwconfigでチェック
- iwconfig eth0 essid hogehogeman
- iwconfig eth0 key 1234hoehogeman
4. ディスクの準備
- ブロックデバイス
- SCASI,SATAは/dev/sd*みたいに
- パーティション
- MBRなら
- 4つの基本パーティション
- それ以上なら論理パーティションとして
- partedでパーティション作り
- パーティションIDは指定するが,
- ファイルシステム自体は次で作成する
- parted /dev/sda
- (parted) print
- (parted) mklabel gpt # パーティションテーブルをGPTに
- (parted) rm 2 # いらんパーティションがあれば消す
- (parted) mkpart primary ext2 0 32mb # /boot
- (parted) mkpart primary linux-swap 32mb 544mb # swap
- (parted) mkpart primary btrfs 544mb -1s # /
- パーティションにbtrfs、ext*、ocfs2またはxfsファイル・システムを作成する場合は、ext4??
- ファイルシステム作成
- mkfs.ext2 /dev/sda1
- mkfs.btrfs /dev/sda3
- mkswap /dev/sda2
- swapon /dev/sda2
- マウント
- mkdir /mnt/gentoo
- mount /dev/sda3 /mnt/gentoo
- mkdir /mnt/gentoo/boot
- mount /dev/sda3 /mnt/gentoo/boot
5. Gentooインストールファイルをインストールする
- stage3-i686-20140401.tar.bz2を保存,解凍
- cd /mnt/gentoo
- links http://www.gentoo.org/main/en/mirrors.xml
- tar xvf stage3-i686-20140401.tar.bz2
- portageのインストール(/snapshotから)
- cd /mnt/gentoo/usr
- links http://www.gentoo.org/main/en/mirrors.xml
- tar xvf portage-latest.tar.bz2
- /mnt/gentoo/etc/make.confls
- portageのコンパイル設定
- /mnt/gentoo/usr/share/portage/config/make.conf.exampleを参考に
- /mnt/gentoo/etc/make.confを設定
6. Gentooベースシステムのインストール
- DNS情報のコピー
- cp /etc/resolv.conf /mnt/gentoo/etc
- chrootで新しい方に潜る
- 潜ったら
- env-update #環境変数の変更??
- source /etc/profile
- export PS1="(chroot) $PS1"
- portage更新
- emerge –sync
- profileの確認??
- eselect profile list
- USE変数の確認??
- 第二部に詳細あり
7. カーネル設定
- emerge gentoo-sources
- 別ttyでtail -f /mnt/gentoo/var/log/emerge-fetch.logとか
- usr/src/内に保存
- emerge pciutilsして,lspciか
- chroot外で,lspciか
- lsmodをパクるか
- make menuconfig
- Processor type and features –> Processor family
- Device Drivers –> Generic Driver Options –> Maintain a devtmpfs filesystem to mount as /dev
- File systems –> Btrfs filesystem support
- File systems –> Partition Types
- Enable the block layer
- あたり注意
- make -j3
- CPU you selected does not support x86-64だったので,
- 64bit kernelを諦める
- make modules_install
- /lib/modulesあたりにインストール
- カーネルイメージを移動
- cp arch/i386/boot/bzImage /boot/kernel-3.12.13-gentoo-r1
- /etc/conf.d/modulesあたりでオートロードなモジュールを設定
8. システム設定
- /etc/fstabを設定していく
- ここらでvimが欲しくなったので,emerge vim
- /etc/conf.d/hostname
- /etc/conf.d/net
9. システムログツール
- emerge syslog-ng; rc-update add syslog-ng default
- まあいいや
- emerge btrfs-progs
- もう,いらないか...
10. ブートローダを設定する
- もうgrub2だから英語の方を参考にする
- emerge sys-boot/grub
- grub2-install /dev/sda
- パーティションにbios_grubフラグがないとダメみたい
- this GPT partition label contains no BIOS boot partition;とか怒られる.
- (parted) set 1 bios_grub onでおk
- http://wiki.gentoo.org/wiki/GRUB2
- grub2-mkconfig -o /boot/grub/grub.cfg
- /etc/default/grubか/etc/grub.dに書いてもいいけど
- 書かなくても勝手に探してくれる
- ファイルシステムを特定できないみたい
- grub2-probe / => btrfs
- grub2-probe /boot => unknown filesystem
- ext2が認識できないのはまずい
- 恐らくgrub2-installとかでやっちゃったんだと思う
ハマる
- ここでBIOS boot partitionとBoot Partitionが必要なことに気づく…
- /bootだけフォーマットしなおす
- できた
- マウントしなおして潜る
- mount /dev/sda3 /mnt/gentoo/
- mkfs.ext2 /dev/sda4
- mount /dev/sda4 /mnt/gentoo/boot
- mount –rbind /dev /mnt/gentoo/dev
- mount -t proc none /mnt/gentoo/proc
- mount –rbind /sys /mnt/gentoo/sys
- chroot /mnt/gentoo /bin/bash * /etc/fstabを治す,カーネルをコピーしてくる * grub2をもっかいインストール
- grubからgentooを起動する
- rootのパスワードを設定忘れる
- 潜ってpasswd root