カーネル・コンパイル
[id:Orca:20080328] で放置したままだった, 未使用の 1GB程の領域を認識させてみた。
ホントは bigmemパッケージとかあればインストールするだけで簡単なんだけど Ubuntuにはそれが見当たらない。
てな訳で環境を整えてカーネル・コンパイル。
資料はここ → Kernel/Compile - Community Help Wiki
sudo aptitude install linux-kernel-devel # fakeroot build-essentialはインストールしてたので sudo apt-get build-dep linux-image-$(uname -r) apt-get source linux-image-$(uname -r) sudo apt-get build-dep linux-ubuntu-modules-$(uname -r) apt-get source linux-ubuntu-modules-$(uname -r) cd linux-2.6.24
ここからは古い方式でやってみた (古いと言っても make bzImageとかの方法じゃなく, Debianっぽい方式)。
cp /boot/config-`uname -r` .config # sudo aptitude install libncurses5-dev # ← menuconfig使うけどコレはインストール済み make menuconfig # "Processor type and features"→"High Memory Support"を 1〜4GBから 64GBへ # ついでに "Processor family"を "Opteron/Athlon64/Hammer/K8"へ # (Athlon X2だからコレかな? てことで。K6,K7,K8の項目はあるけど K9が無かったので) make-kpkg clean fakeroot make-kpkg --initrd --append-to-version=-be2400 kernel-image kernel-headers
コンパイル後に *.debができるので後はインストールするだけ。
grubのメニューにも登録された。
とりあえずは freeコマンドで 4GBを確認したけど, 結局このカーネルでの起動はあまり使ってなかったりして。