Gentoo Linux PPC クイックスタートガイド
1. インストールの前に
Warning: この文書は古くなっています。 代わりに Gentoo Linux/PPC Installation Guide を参照して下さい。 |
もし、この箱にLinuxのみを入れようとしているのなら、始める準備は完了です。もし、OS9と/またはOSXを必要とするのなら、最初にMac環境からセットアップする必要があります。 ここには全般的な手引きがあります:
http://people.debian.org/~branden/ibook.html 加えてここも見て下さい:
http://www.oreillynet.com/pub/a/mac/2002/03/29/ibook_linux.html
これらの手順で1つだけ重要な違いがあります: インストーラを起動するためにOpen Firmwareに行く必要はありません - Macパーティションがインストールされている場所で1度CDから起動します
たくさんのパーティションを作るのに夢中になってはいけません - ドライブをmac-fdiskで見ると、Appleはドライバのためにドライブの先頭に少なくとも8パーティションをすでに持っていることがわかるでしょう。そして、我々が使用するある種のフェイクMBRのためにさらにもう1つ必要となります。私はLinuxを使い始めてから、ドライブ上の数多くのパーティションのためにOSXはむしろクラッシュづいていると感じています。なお、考慮に入れる1つとして、小さめの、素のHFS("Apple標準")パーティションを作成するということがあります。そうすることによって、LinuxとMacの間で楽にファイルのやり取りが出来ます - 1つのフォーマットでお互いが読み取り出来ます。(とは言うもののHFS上のファイルを削除することで私はかなり多くのLinuxカーネルパニックに陥りました。; そしてこの共有パーティションを削除した後は、OSXがクラッシュすることは無くなりました。)
Note:
ほとんどのOSXユーザーは、たとえOSXと同じパーティションにインストールすることが出来たとしても、OS9 ("Classic")用に別のパーティションを持つと言うgoodな考え方には賛成すると思います。 |
2. インストールCDを使って
インストールCD用のisoイメージは、http://ftp.sunsite.dk/projects/gentooppc/buildからダウンロード出来ます。それをマスターCDとして焼けば、Macをそれで起動させることが出来ます。ドライブにCDを入れて、Cキーを押しながらMacの電源を入れます。あるいは、ブートメニューの間Optionキーを押し続け、CDを選択します。古いMacでは、C, D, Shift, Optionキーなどの神秘的な組み合わせを要求されるかもしれません。もし、それらのうちの1つなら、試して下さい。または、 マニュアルを参照して下さい。
Note: もし古いMacを持っていて、Open Firmwareを使用しない、あるいは、古いバージョンのOFを使用している("Blue and White" G3より以前のほとんどのマシン)場合、CDから起動するためにBootXを使う必要があります。(GentooPPC boot imageにStuffItアーカイブとして含まれています) これは、最初にMacOSへインストールして設定しなければいけません。いくつかの(簡単な)説明のためにこの文書 を参照して下さい。"initrd"をRAMディスクに、そしてCDの"boot"フォルダからカーネル(vmlinux)をMacのシステムフォルダにコピーする必要があります。その後、BootXでそれらのファイルを指定します。BootXに含まれるReadMeを必ず読んで下さい - 知らなければならない事柄がそこに書かれています。
|
ftpサイトにアクセスしている間に、build-ppc.tar.bz2のバージョンがあるかどうか見て下さい。それは、CDイメージよりも新しいものです。もしあればそれも取り込んで下さい。 - その中にはあなたが欲しいものが多分あるでしょう。
もしCDからの起動に成功したのなら、ブートモードを選択することが出来るでしょう。最近4年以内に作られた全てのMacもしくは"New-World"と呼ばれているマシンは、デフォルトのブートモードを使用できます。
3. セットアップ
x86のブートCDと違い、PPCバージョンは、modprobeする必要なく全ての必要なハードウェアをほとんど確実に動かせるでしょう。あなたは、ネットワークを動かすための説明を見るでしょう。 - はい、ethernetドライバを探す必要はありません。もしifconfigが、今のところ動作してなければ、ロードできるドライバがあるかどうか見るために、/lib/modulesの辺りを探る事が出来ます。 - 見たところpci autodetectionは、常にiBook上のsungemカードを見つけ出すわけではないようです。その場合、あなたは"modprobe sungem"をする必要があるかもしれません。
一方、/lib/modulesには他にもいろいろ役に立つドライバがあります - 特にFirewireなど。もしインストールの間Firewireドライバを使いたいのなら(あるいはpowerbookでターゲットディスクモードを使いたいなら :-) - 例えば、新しいビルドのtarballをロードするとか - 試して下さい:
Code listing 3.1 |
# modprobe ieee1394
# modprobe ohci1394
# modprobe sbp2
|
これは、ドライブをscsiデバイスのエミュレーションとして認識させるでしょう。 - それが示されているのを見るためには、dmesgをチェックして下さい。もし動作してないのであれば、チェックするために、モジュールをアンロードし再ロードする事を2度試して下さい。 - firewireのサポートはかなり進歩しています。しかし、まだ不完全です。特に、 - 皮肉な事に - PPCサイドにおいて
Note: 私は、Linuxでターゲットディスクを試してません - 考えだけですが... |
いったんネットワークの設定をしてしまえば、mac-fdiskを使ってパーティションを切る準備は完了です。 それはとても簡単です - デフォルトのスタートとエンドのブロックを選択するためにパーティション番号の後に"p"を使います。上に挙げたガイドを見て下さい。それと、"b"コマンドを使って特別なブートストラップ パーティションを作成するのを忘れないで下さい。 - これは我々が作り替えたMBRです。(けれどもYabootの代わりにBootXを使う必要が無ければ必要ありません。) もしこれを最初の(no-driver)パーティションに作るなら、Macは最初にそれからブートしようと試みます; しかし、この方法でそれをする必要が無いことに注意して下さい。いったんインストールしてしまえば、OpenFirmare (Cmd-Option-O-F)でブートすることが出来ます。そして、どのパーティションからブートするかは、ある謎めいた強制コマンドをマシンに出すことで出来ます: setenv boot-device
hd:9,\\:tbxi わかりきった事ですが、ここの9を適当なパーティション番号に入れ替える必要があります。
Note: 私は、非常に多くのパーティションを持つことに関して心配だったため、rootパーティションに/bootをおいていました。これまでは不測の事態はありません。そして、OSXは共有のHFSパーティションを削除して以来クラッシュしていません。
|
Note: 全てのAppleパーティションに対して、重要なパーティション番号と名前をどこかに書きとめておくといいでしょう。
|
4. インストール
もう標準的なGentooインストールガイドのほとんどを通して進めることが出来ます。きっとネット接続は動作しているでしょう。 (例えば、/etc/resolv.confに入力がある);
linuxファイルシステムを作成し、それをマウントします。/mnt/gentooにビルドのtarballをアンパックします。 - もしアップデートされたtarballを今取り込みたいなら、wgetが役に立つでしょう - procをマウントし、/etc/resolv.confを上書きしてchrootします。
これでemerge rsyncを動作させる事が出来ます。しかし、最初に/etc/make.confをチェックして下さい。 - rsync://rsync.gentoo.org/gentoo-portageにSYNCをセットします。ブートストラップとemergeシステムの準備は完了です。
Note: 私は、始める前に全てのソースを手に入れておくことを強くお勧めします。: bootstrapの前に、emerge --fetchonly baselayout, gcc, glibc,
binutils, gettextをすべきです。emerge systemの前にemerge --fetchonly systemをします。
|
Important: 多くのMacは、CDをイジェクトするためのボタンがありません。そして、Linuxではキーボード上のイジェクトボタンは動作しません(設定した後で無い限り)。ブートイメージでは、CDを取り出すためにはeject -rのコマンドを出す必要があります。いったんCDからブートし、linuxパーティションに必要なもの全てをコピーあるいはuntarすれば、もうCDは必要ありません。もし他のCDを使いたいなら、おそらく、アップデートされたビルドのtarballをロードする。あるいは、どこか速く接続できるところからプログラムのソース("distfiles")をダウンロードして使います。その後、(もしマウントされていれば)ブートCDをアンマウントし、eject -rして、他のCDをインサートします。いったん中身をemergeすることが出来れば、きっとemerge ejectのコマンドが動作するでしょう。CDからdistfileを取り出すための直接的なPortageの仕方の説明が出ているメインのインストールガイドを見てください。
|
Note: 必ず/etc/make.confはppc用の設定にしなければなりません: それをnanoで開き、ppc用のコンパイラフラグがコメントアウトされていないか確認して下さい。フラグの2つの定義済みセットを選択することがわかると思います。確実に最適化のレベルが低い方がより信頼性があります。もしある理由でmake.confが混乱してしまったなら、もっとも最近のppcディレクトリの/usr/portage/sys-apps/portage/filesの中にオリジナルを見つけることが出来ます。
|
5. システム設定
x86 Linuxとのもっと主だった違いはbootloaderのyabootです(BootXを使う必要が無い限り - 上記を参照)。それはliloと多くの点で似通っています: /etc/yaboot.confを設定します - 私のはこんな感じです:
Code listing 5.1 |
## /etc/yaboot.conf
##
## run: "man yaboot.conf" for details. Do not make changes until you have!!
## see also: /usr/share/doc/yaboot/examples for example configurations.
##
## For a dual-boot menu, add one or more of:
## bsd=/dev/hdaX, macos=/dev/hdaY, macosx=/dev/hdaZ
## our bootstrap partition:
boot=/dev/hda9
##hd: is open firmware speak for hda
device=hd:
partition=11
root=/dev/hda11
delay=5
defaultos=macosx
timeout=30
install=/usr/lib/yaboot/yaboot
magicboot=/usr/lib/yaboot/ofboot
#################
## This section can be duplicated if you have more than one kernel or set of
## boot options
#################
image=/boot/vmlinux
label=Linux
read-only
##################
macos=/dev/hda13
macosx=/dev/hda12
enablecdboot
enableofboot
|
いったんyaboot.confが希望通りに設定されたら、bootstrapパーティションに設定をインストールするためにmkofboot -vを実行します。これを忘れないで下さい! もし全てうまく行き、私と同じオプションなら、次の再起動は単に5つのブートメニューになるでしょう。もし後でyabootの設定をアップデートしたなら、bootstrapパーティションをアップデートするためにybinを実行する必要があります - mkofbootは、イニシャルのセットアップのためだけのものです。
Note:
Yabootはブート時のコンフィグを設定するためにいくつかの機能を持っています。より詳しい情報はhttp://penguinppc.org/projects/yabootを見て下さい。
|
kernelのコンフィグとコンパイルに限れば、gentoo ppcのソースはデフォルトのコンフィグとして重要な内容をすでに設定してあります。大抵Macのハードウェアは、ドライバの選択肢が非常に少ないです。加えて、必要なものはほぼ確実にあらかじめ選択されています。それにもかかわらず疑わしければ、make menuconfigで'help'を使用します。bzImageを作成するのに問題があることに注意して下さい。もし実行している内容を理解していなければ、make vmlinuxを変更しないで下さい。言い換えると、kernelを設定した後、こうして下さい:
Code listing 5.2 |
# make dep; make clean; make vmlinux; make modules; make modules_install
# cp vmlinux /boot
# cp System.map /boot
|
Important: kernelソースのPPCバージョンをインストールするのに、sys-kernel/ppc-sourcesをemergeしたいです。現在のところ、それらはppc用のkernelパッケージだけのものです - しかしx86 kernelソースパッケージの大部分と違って、それはXFSパッチを含みます。
|
Note: もしBenが何者かを知りたければ、http://penguinppc.org/~benhあるいはhttp://ppckernel.orgを見て下さい。彼は、PPC kernelのメインテナーで、多くのPPC linuxユーザーがkernel.orgのツリーではなく、彼のツリーのソースを使っています。
|
他にppcで癖のあるところは、XFreeの設定が難しいところです。最初に、ビデオカードでのダイレクトレンダリングを使用したいなら、確実に、適当なkernelモジュールを最初に読み込むことを試みて下さい。2番目に、私は最近XFree86 --configureで幸運がもたらされました; 我々には今ppcのみのxeasyconfのebuildがあります。(emerge x11-misc/xeasyconf) - Mark Guertinによって特別に書かれた素晴らしいプログラムです。それでもコンフィグプログラムが動作すべきであると考えることはないでしょう。ところでusbマウスは多分/dev/input/miceにあります。もしあなたが持っているハードウェア(例えばビデオカード)のことがわからなければ、pci-utilsをemergeしてみて下さい。その後、lspciコマンドを出します。それが関連した詳細をピックアップします。
Note:
"Option" "UseFBdev"はあなたの友達です :-)
|
Macでlinux用のsoundを設定することも魔術です。しかし、大丈夫です。kernel/drivers/sound内のモジュール(soundcore and dmasound_pmac)を読み込みます(modprobe)。ミキサー(例えばaumix)をインストールして再生します。KDEにおいては、8-bitサウンドだけでOSSを使うことをサウンドサーバに伝える必要があることに注意して下さい。もしAlsaに挑戦したいなら、適切なドライバがsnd-card-awacsにあります。しかし、まだsoundcore (kernel)とsnd (alsa)を最初にロードさせる必要があります。KDEにおいてAlsaを使うには、alsa-oss互換のモジュール(snd-pcm, snd-pcm-plugin, snd-pcm-oss, snd-mixer-oss)もロードします。そして、ArtsサウンドサーバにAlsaではなく(そうなんです、実は)、OSSを使うことを伝えます。これは、Alsa 0.5に対して適用されます。 - Alsa 0.9が主流になるときには変るかもしれません。
Note: もしkernel内でdmasoundをコンパイルするなら、Alsaを試すためにそれをアンロードすることは出来ないでしょう。(故にモジュールを代わりに使います)
|
もしhfs+パーティションにアクセスしたいなら、penguinppcサイトでhfsplus utilitiesの説明を見て下さい。あとはkdeコンポーネントのkio-macです。 - 私はまだこれらを試したことがありませんが、それらは、konquerorでmacパーティションを読むためのものです。 すぐにebuildされることを期待します。
他のパワフルなlinux-ppcのツールは、MOL (Mac on Linux)です。もしOS9やそれ以前のバージョンのパーティションを持っているなら、きっとネイティブに近いスピードでそのシステムをlinux内で動作させることが出来るでしょう。設定は少しばかりトリッキーですが、それはかなりクールです。emerge molとタイプするだけでインストールできます。さあ、これで再起動せずにPhotshopも実行できるし、webでFlashやShockwaveのアニメーションも見れます :-)。
さあ、出来ました。今のところうまく機能しているけれど、多くの人がテストすることでより良くすることができます。もし自分の手で機種依存のebuildを作るのに挑戦したいなら、/usr/portage/media-sound/mpg123/mpg123r-r1.ebuildを見ましょう。作者がppc用を用意してくれない限り、ダウンロードしたebuildのバイナリファイルが壊れてしまうかも知れないことに注意しましょう。(新しい xanim ebuildを参照)
Note: A quick tip: Linuxコンソールは、私のiMac(DV400/2000)のスクリーン上においてその位置が完全に右になりません: fbset -move rightはこの問題を修正します。
|
6. BootXトラブルシューティング
いくつかの注意点はメーリングリストから拾ってきています:
- もし、BootXからの起動でエラーが出たら、MacOSを起動する際に機能拡張と/または 仮想メモリを切ります
- BootXでのインストール (Gerkの好意による):
- ハードディスクのわかる場所にCDからBootX_1.2.2.sitアーカイブを解凍する
- ハードディスクに解凍したBootXフォルダ内のLinux kernelフォルダ内にvmlinuxファイルをGentoo CDの/bootフォルダからコピーする
- BootXフォルダにGentoo CDの/bootフォルダからinitrd.imgをコピーする
- BootXアプリケーションをダブルクリックする
- 'options'ボタンをクリックし、ramdiskとして、コピーしたinitrd.imgを選択する
- okをクリックする
- ramdiskのサイズを24000にセットする
- kernelの引数の枠に次の文字を追加する: rw
- Linuxボタンをクリックしてインストールを開始する (任意にsave prefsをクリックする)
- もし、まだread-onlyでinitrd ramdiskをマウントしているなら、次のようにread-writeとして再マウントすることが出来ます:
#mount /dev/root / -o remount,rw
- initrdには多くの重要なコマンドがbusyboxにシンボリックリンクされています。もし"command not found"エラーが出たとしたら、リンクが切れているかもしれません - rwで(必要なら)再マウントし、自分自身でリンクを作成して下さい。
- 以下のSUSEのサイトリストは、特にBootXの問題に役に立ちます。
7. リソース
|