玄箱でGentooLinuxを動かす

はじめに

2004/9/1自力構築できました。

OpenBlockSでGentooLinuxを動かすより難しいです。理由は以下のとおり。
  • コンソールがない(引き出せば可能だが)のでデバッグしにくい。インストールに失敗すると一からやりなおしに近い(恐ろしや)
  • カーネル再構築のリスクが高い。失敗すればタダの箱。(ちなみにOBSは失敗しても復旧可能)

とりあえず手を抜いてカーネル構築せずに玄箱標準カーネルを使いまわしてます。devfsを使用できないのでdevptsで動かしてます。

標準スペック

Motorola MPC8241 200MHz
mcpu=603e obs266より速いかも(推測)
64MB mem
Gentooで動作させるならばswap必須。
kernel 2.4.17_kuro-box
devfsが標準で無効。

注意点

以下はファームウェア1.02で確認。
  • kernel 2.4.17:devfsなし(devpts)。
  • ftpとtelnetが可能。
  • links2がない。他PCでダウンロードしてftpで転送。
  • bzip2がない。事前に解凍してからftpで転送。
  • fdiskがない。mfdiskがあるのでそれで代用。
# mfdisk -c /dev/hda
  • nanoがない。viで代用。
  • chroot, date, swaponがない。busyboxで対応可能。busybox万歳!
# cd /bin # ln -s busybox chroot # ln -s busybox date # ln -s busybox swapon

/usr/sbin/ppc_uartdをフラッシュメモリからもってくる。
Gentoo用の/etc/init.d/ppc_uartdは以下のとおり。
#!/sbin/runscript # Copyright 1999-2004 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 # $Header: $ depend() { use logger } start() { ebegin "Starting ppc_uartd" start-stop-daemon --start --quiet --exec /usr/sbin/ppc_uartd eend $? "Failed to start ppc_uartd" } stop() { ebegin "Stopping ppc_uartd" start-stop-daemon --stop --quiet --exec /usr/sbin/ppc_uartd eend $? "Failed to stop ppc_uartd" }


devfsは使えないのでdevptsを使用。fstabの記述に注意。
/dev/hda1 / ext3 noatime 0 1 /dev/hda2 none swap sw 0 0 none /proc proc defaults 0 0 none /dev/pts devpts gid=5,mode=20 0 0

baselayoutが壊れてる?depscan.shを実行しておくべきか
# /sbin/depscan.sh

チューニング

  • /etc/make.conf
CFLAGS="-O2 -mcpu=603e -pipe" CXXFLAGS="${CFLAGS}"

まだ試してないが下記CFLAGSも試してみるつもり
CFLAGS="-O3 -Winline -Wall -fPIC -mcpu=603e -mtune=603e -mstrict-align -mno-longcall" CXXFLAGS="${CFLAGS}"

TODO

  • マニュアル整備
  • SELinux カーネル再構築しないと難しい
  • OpenAFS 同上
  • Coda 同上
  • distcc
  • libmoto 603e準拠だからいらんかな

関連リンク

2005年12月17日(土) 21:51:52 Modified by t_matsuu




スマートフォン版で見る