Vertual BoxへGentoo Linuxをインストール

FreeBSDに慣れてしまったので、ports的な運用がしたくてGentoo Linuxを初めてインストールしてみた。仕事でUbuntuを触った印象がわるいのも理由である。

WEB上のドキュメントに記載されている方法でインストールしたわけだけど、これが面倒くさい。FreeBSDインストーラが親切丁寧だったのかと開眼するほどだ。この手作業で何をしてるか意味は分かるし、ディストリビューションを運用する上で有限なマンパワーをどこに使うかの問題だからこれでいいんだけど。それでも、インストーラは作らないとジリ貧だと思う。

インストール作業で間違ったこと

Gentooを初めてインストールしたのだけど、かなり苦労した。全て自分のミスだ。

kernel config

なにこれ、設定項目がメチャメチャ増えとる。3系のLinuxカーネルを設定するのは初めてだ。

インストール時に作成するカーネルでHDDをマウント出来ない

インストールしたkernelが/dev/sda3を見つけてくれなくて途方にくれる。色々と試しながら、調べた結果、1日かかってSATASCSIバイスとして見えていることがわかった。SCSIのモジュールでコンパイルエラーが出たので、無効にしたのがまずかった。
よくよく考えてみたら、SATAマシンでLinuxをインストールするのも初めてだった。

ext2にチェック入れ忘れ

インストールがようやく終わり、もう少しカーネルの設定を切り詰めようとしたところ、/bootがmountできない。インストール時に作ったカーネルext2のサポートを忘れていた。また、Minimal CDから起動してカーネルビルドを行った。

network設定

http://kohkimakimoto.hatenablog.com/entry/2012/01/19/053810
を参考にさせてもらった。ホストオンリーアダプタをeth1に割りふって、ホストOSからのみログインすることにする。VirtualBox側は、アダプタ1にホストオンリーアダプタを振り、ファイル->環境設定->ネットワークでVirtualBox Host-Only Ethernet Adapterを編集して192.168.58.1を設定した。192.168.56.*を使うのならデフォルトの設定で使える。
Gentoo側は、Gentooのガイドブックを参照しながら、流儀を学ぶ。/etc/conf/netに

config_eth1=( "192.168.58.2 broadcast 192.168.58.255 netmask 255.255.255.0")
routes_eth1=( "default gw 192.168.58.1")

を追加して、

# cd /etc/init.d
# ln -s net.lo net.eth1
# rc-update add net.eth1 default

ついでに、sshdも動くようにしておいた。

rc-update add sshd default

これでホストOS側から192.168.58.2:22でsshでログインする。

Portage

emergeはまだ使い方を良く理解できていない。

Ruby1.9

eselect ruby listでRuby1.9を選択した。現在の正しい作法がよくわからない。ブロックリストと呼ばれる物があるらしいが、ちょうど今Ruby1.9が正式サポートになったみたい。
http://wiki.gentoo.org/wiki/Project:Ruby/Ruby_1.9_migration