PS3のブートに使うpetitbootの解説


Fedoraのパッケージはここからダウンロードしてくる。
ppc版をもらってくる。
ここには Fedora Core 1から6までしかない。
Coreがはずれたのは7以降。
Fedora7以降は こちら

Fedora 12 をインストール

ここでは Fedora12 をインストールすることを考える。
Fedora12(ppc版)は ここからもらってくる。
kboot: linux video=480i text noselinux ps3fb=4M
うまくインストールできたと思った。
そして、REBOOTしてみたら、あらら、マウントのところでエラーストップしてしまった。
EXT2-fs: ps3da1: couldn't mount because of unsupported optional features (240).
というエラーでマウントができない。弱った。解決策は。。。
kboot: mount /dev/ps3da1 /mnt/root と試してみることも可能らしい。
もう一度、挑戦してみよう。
こんどは、
kboot: linux64 video=480i text noselinux selinux=0 ps3fb=4M
としてやってみる。
今度も失敗。
どうもファイルシステムがext4というのになったらしく、いままでのkbootだと、
ext4ファイルシステムは認識できないらしい。
非純正であるpetitbootだと認識ができるらしいので、kbootを替えることをしてみよう。
うまくいった。表示を見てるとやはり、EXT4という文字列が見える。Fedora12ではext4ファイルシステムに変わったようだ。
このpetitbootはext4を認識できるし、ネットのシステムも認識できるようだ。
petitbootはこれを使った。
Index of /pub/linux/kernel/people/geoff/cell/ps3-petitbootの 場所から、
ps3-petitboot-09.11.30-cui.bld 01-Dec-2009 01:02 3.2M
ダウンロードしてきたら、ファイル名を変更してotheros.bld と改名する。
そして、USBメモリに /PS3/otheros/otheros.bld となるようにする。
petitbootの使い方(たとえばeキーを押してargsを追加記入できることなど)は こちら
petitboot無修正で標準だと、タイムアウトしないから、いつまでたっても自動では進まない。
だけど、
そのときに、"Exit To Shell"を選んで、
ps3-bl-option -O 15
を実行すると、15秒で自動で始まるようにできる。

初期状態ではネットワークが無効になってた。 まずはネット接続できるよにようにしないと。

無線LAN(wlan0)を可能にする。

# yum install wpa_supplicant
インストールしました: wpa_supplicant.ppc 1:0.6.8-8.fc12
# chkconfig wpa_supplicant on
/etc/sysconfig/wpa_supplicantファイルを修正する。
つまり、
INTERFACES="-iwlan0"
DRIVERS="-Dwext"
のようにする。
さらに、 /etc/wpa_supplicant/wpa_supplicant.conf ファイルもいじる。
# wpa_passphrase "your-ssid" "secret-passphrase"
を実行してでてくるものを/etc/wpa_supplicant/wpa_supplicant.confに追加。
これらは、
fedora12-ps3[wiki]を参考にした。
/etc/sysconfig/network-scripts/ifcfg-wlan0 を修正。
LINKDELAY=15
DEVICE=wlan0
BOOTPROTO=dhcp
ONBOOT=yes
注意するのは、networkはwpa_supplicantのあとに起動しないといけない。
標準だとこの順番が逆になってるから、ついでに、そこも直してしまう。
# sed -i 's/chkconfig:.*/chkconfig: - 24 80/' /etc/init.d/network
# chkconfig network resetpriorities
# service network stop
# service wpa_supplicant start
# service network start
おお、やっと、やっと、無線LANが使えるようになった。
これでイーサーケーブルがはずせる。
Making wpa_supplicant work with dhclient on Fedora を参考に修正する。

ここまでできたら、調子に乗って、さらに追加で、
PS3をLinuxで動かしてるときはPS3のGPUは利用しない。
なので、そのGPUのメモリー(vram)をスワップエリアに使ってしまおうというアイデアだ。
wget http://us.fixstars.com/support/solutions/ydl_6.x/ps3-vram-swap -O /etc/init.d/ps3-vram-swap
sed -i "s/mtdblock0/ps3vram/" /etc/init.d/ps3-vram-swap
sed -i "s/mkswap/mkswap -f/" /etc/init.d/ps3-vram-swap
chmod 755 /etc/init.d/ps3-vram-swap
chkconfig --add ps3-vram-swap
chkconfig ps3-vram-swap on
service ps3-vram-swap start


つぎにはSDKをインストールしてみたいと思うのだが、あまりにも大きすぎるなら、 あとでアン・インストールしようと思う。
なので、インストールとアン・インストールの両方の手順を書いておこう。
The Cell SDK
前準備:
# yum install rsync tcl wget expat glibc-devel.ppc64 libspe2.ppc libspe2.ppc64 
# yum install libspe2-devel.ppc libspe2-devel.ppc64 libspe2-adabinding-devel elfspe2
Cell SDK はIBMからもらってくるが、ここにはアカウントが必要。
昔、IBMのアカウントを登録したことがあった。それが使えるかも。
使えた。
ここ から、"SDK 3.1"をもらってくる。
"Download SDK 3.1 for Fedora 9 from developerWorks"を選ぶ。
もらうのは3つ。(Fedora 9用でかまわない)
そして、インストール開始。


Fedora 10 をインストール

ここでは Fedora10 をインストールすることを考える。
テキストモードでインストールしないとメモリィが不足する。
kboot: linux video=480i text noselinux ps3fb=4M
する。
また、SE Linuxをオンにしてると、これも巨大になりすぎるから、SE Linux を disable する。
また、新しくコンパイルする場合:-Wa,-noexecstack を embedspu のオプションに追加する。

Fedora 9 をインストール

(2010.03.09)今回はFC9をインストールしよう。
ダウンロードは
http://archive.fedoraproject.org/pub/archive/fedora/linux/releases/9/Fedora/ppc/iso/
から行った。すでに古いからアーカイブに入ってる。
参考は、"http://cell.fixstars.com/ps3linux/index.php/PS3にFedora_9をインストールする"
ここでは FC9 をインストールすることを考える。
GameOSであれば、「他のシステム」に切り替える。
LinuxOSで起動すると、途中、"kboot:"というプロンプトが現れる。
このときに、 "kboot: linux64 video=720p" と入力する。
これだとグラフィカルになるが、解像度が劣る場合は、480i(インターレース)でテキストモードにする。
その場合ならば、"kboot: linux video=480i text noselinux ps3fb=4M" と入力する。
あらかじめ、インストールのCD/DVDを挿入しておく。
インストールの中で気になる質問:

参考とするリンク:
"http://cell.fixstars.com/ps3linux/index.php/PS3_Linuxのためのブートローダーをインストールする"
"http://cell.fixstars.com/ps3linux/index.php/PS3_Linuxのインストール"
"http://cell.fixstars.com/ps3linux/index.php/PS3_Linux_で無線LANを使う"
"http://cell.fixstars.com/ps3linux/index.php/PS3にFedora_9をインストールする"
"http://cell.fixstars.com/ps3linux/index.php/Fedora_9で無線LANを利用する"