3400.jpeg

LinuxPPC on Macintosh Powerbook 3400c/200




最終更新日/2000.3.17

Linux for PPC Japanese Edition

Introduction
長らくメールやweb閲覧端末として活躍してきたこの3400もG3の入手後はひまな生活を送っておりました。一時期、研究室で使われていたこともありましたが、それも他の環境が改善してくると棚の上に投げられっぱなしという状態に成り下がっていたので、ここはひとつLinuxだな、ということでインストールしてみました。PowerBookへのインストールは初めてだったのでなかなかてこずることになりました。

機器構成

本体
Apple PowerBook 3400c/200
メモリ/48MB
ハードディスク/2GB

Install
CD-ROMドライブを内蔵しているノートへのインストールは初めてでしたが、やっぱ、楽でいいですね。何も考えなくてもいいもん。ということで、インストール手順はレゾナンス出版からでている「公式ガイド」にそって行いました。インストール作業自体はそれでうまくいきます。ただし、内蔵HDにHFSとUNIX_SVR2の両方のパーティションを入れる場合、あとからHDDのパーティションを変更しようとすると結構はまるので、最初にどのような使い方をしてどのような容量配分にするか、しっかりと決めておく必要があります。

具体的には、PPC版で使うpdiskはAT互換機用のfdiskと比べて使い勝手が悪いのです。fdiskではおおよその容量を直接自分で入力して設定できます。(シリンダーの最初の位置を入力した後、+500Mとかで500MB程度のパーティションが作れます。)一方、pdiskでは、パーティションの大きさは自分で直接ブロック数を入力することになります。その時に、大きさが512の倍数でないとエラーが出て実行できません。また、ちゃんと行けてるはずなのに、エラーが出ることもあるので結構面倒くさいです。

Mac側からドライブ設定でパーティションを変更しようとしても、HFSの領域ごと初期化してしまうので、Mac側のデータも消えてしまいます。面倒くさいですね。ということで、最初にMacOSのCD-ROMで起動し、ドライブ設定でHFS領域として一つ、Linux用に自分のほしいだけのパーティションを「HFS」として、作成しておき、MacOSのインストール後にLinuxPPCのCD-ROMのpdiskでUNIX_SVR2形式に変更して準備するという本に書いてあるやり方が正しいし、後から変更も大変なので慎重に容量配分を決めてから作業に入りましょう。

Oh my God!
機器の構成や中身が千差万別のAT互換機と違い、機種、ハードウェアが限られているMacの場合にはインストールでとまどうことはほとんどありません。Xの設定も不必要ですし、インストールの難易度は簡単そのものです。ところが、この3400には落とし穴が待っていました。それは、内蔵Ethenetカードの問題です。

Decの10Base-Tカードが内蔵されていますが、このJapanese Editionのデフォルトのカーネルである2.2.6ではうまく動作しません。linuxppc-jpメーリングリストで聞いたところ、カーネルを新しいものにする必要があることを教えていただきました。(特に、花井@京都さんにはアップデート手順まで丁寧に教えていただき、大変感謝しております。)新しいカーネルを入手しようにもネットワークが使えないので、作業はMac側で行います。

Upgrade kernel #1 BenH
カーネルはなるべく新しいものがいい、ということでしたが、ネットワークが使えないとなにかと不便なのでまずはとりあえず内蔵Etherが動くようにする必要があります。コンパイル済みのカーネルならばMacのシステムフォルダに作られるLinux kernelsフォルダに入れて起動時にBootXで選べばいい、ということなのでPB3400の内蔵Etherの問題を回避できるBenHさんのものを取ってきます。これは、

http://ppclinux.apple.com/~benh/

にありますが、そこにあるカーネルとモジュール、システムマップ一式をMacにダウンロードします。tar.gzのものは、面倒ですが一旦LinuxPPCを起動しなおして、そちらへコピーした後伸長してもう一度Macへ戻しました。(MacZipがあればMac上でも出来るらしい)そして、vmlinuzを適当な名前で上述のフォルダに入れ、その他のモジュールとシステムマップはLinuxPPC側に持っていって、/dev/modulesと/bootに置きました。再起動してみると、無事に内蔵Etherが使えるようになっており、これで一安心。でも、System.mapがおかしいというエラーが出てしまうので、やっぱり最新版のカーネルにアップグレードしておくことにしました。

Upgrade kernel #2 kernel-2.2.14
最新の安定版カーネルは2.2.14ということなので、それをftpで取ってきて、伸長します。(実は、この作業で予想以上にハードディスクを使うことになり、パーティションを切り直す必要が出てきて、上に挙げたように結局はMacOSの再インストールからやり直すことになってしまいました。HDの容量には十分に注意しましょう。)カーネルは汎用の形式になっているのでMac用にパッチを当てる必要があるそうで、そのためにはrsyncコマンドが必要になります。これは、インストール時に入っていなかったので、CD-ROMからrpmで追加しておきます。/usr/src/linuxに展開したら、

rsync -avrz linuxcare.com.au::linux-pmac-stable .

というコマンドでLinuxPPC用のカーネルが出来上がるらしいです。で、その後は、いつものカーネル再構築で、ネットワークデバイスが指定されていることを確認して

make dep; make clean; make
make modules; make modules_install
で準備し、vmlinuzはMacのシステムフォルダのLinux kernelsフォルダに、System.mapを/bootに置いて、再起動。これでなんとか無事に終わりました。


Linuxなページに戻る

Masahiko Nawate (nawate@yasuragi.or.jp)