人気ブログランキング | 話題のタグを見る

Haiku on 実機

これまで Haiku はずっと VMware 上の仮想マシンで実行していたのですが、仮想マシンで実行しているが故にコンパイルが遅いという開発における致命的な問題がありました。
Haiku がまだ安定していなかったのと、BeOS 系ではずっと実機のドライバで苦労していたので面倒かもというのがあったわけですが、Haiku R1 の α1 も出たし、JPBE.net の方で Aspire one での動作例があったし(だいぶ前からありましたが…)、Ubuntu 9.10 が出たし(!)、ということで、Haiku を実機に入れてみました。

マシンは Aspire one (AOA150-BW)。去年の夏、発売される前から予約して買った Netbook です(この Netbook 上で VMware 動かしてたから遅いのですが)。
Windows パーティションは消したくなくてマルチブートにしたかったのでブートローダ GRUB が必要です。
いったん Ubuntu をインストールすれば GRUB も入れてくれるので、その後で Haiku を入れて、Windows, Ubuntu, Haiku のマルチブートにしようと思っていたのですが、Ubuntu 9.10 でブートローダが GRUB2 に変わるということで、どうせならそれを待とうと思って待ってたわけです。

やったこと:

  1. USB メモリを購入。BUFFALO の 4GB のもの (RUF2-K4GE-WH) を買いました。

  2. VMware Player 3.0 を別 PC にインストール(たまたまリリースされたので…^^;)

  3. Ubuntu Netbook Remix 9.10 をダウンロードして、まず VMware Player 上にインストールしていろいろ試してみます。そこから [システム - システム管理 - USB スタートアップ・ディスクの作成] を使って USB メモリを起動ディスクにしました。

  4. Aspire one 上で USB メモリから起動 (F2 で BIOS 設定に入り、Boot の USB HDD を F5 キーで先頭に持ってきます)

  5. LiveCD(LiveUSBメモリ?)で遊んだあと、インストール。

  6. Ubuntu でしばらく遊んだあと、Haiku Filesから Haiku のナイトリービルドのイメージをダウンロードし、Windows 環境にて DD for Windows を使って USB メモリに書き込みました。(←これを Aspire one じゃなく別 PC でやっていたところ、どうしても USB メモリが書き込み先として表示されずはまりました。Aspire one 上でやったらうまくいきました)

  7. Haiku を USB メモリから起動し、楽しんだあと、Haiku をインストールするためのパーティションを用意していなかったことに気づきます(爆)

  8. Ubuntu 上から、再び USB メモリをスタートアップディスクにします。そこから起動して GParted でパーティションを分割するためです。(←ここでどうしても USB メモリのフォーマットがうまくいかずはまりました。ディスクユーティリティでいったん初期化してからやったらうまくいきました)

  9. USB メモリから起動して GParted を起動し、とりあえず unformat でパーティションだけ作成します。

  10. 再び、Windows 上で DD for Windows を使って USB メモリを Haiku にします。

  11. USB メモリから起動して、Haiku 上で DriveSetup を使って、パーティションを BFS に変更します。そこへ Installer を使ってインストールしました

  12. Ubuntu 上で GRUB2 のブートメニューに Haiku を足そうとして、どうしてもいまくいかずはまります。sudo update-grub をした際に「menuentry: not found」とか出てきます。めっちゃはまります。パーティションを作り直してみたり、Haiku をインストールしなおしてみたり、いろいろやってうまくいきません。めちゃめちゃはまります。

  13. 最終的に、スクリプトが間違っていることに気づきました。exec tail -n +3 $0 の行がいるんですよ。。。うまくいったスクリプトを書いておきます。/etc/grub.d/50_haiku という名前。

    #!/bin/sh
    exec tail -n +3 $0
    menuentry "Haiku" {
    set root=(hd0,7)
    chainloader +1
    }


実は子供がインフルエンザになってどこにも出かけられないので、こんなことをやってる暇があったわけですが。
by hironytic | 2009-11-03 11:50 | 近況
<< 多忙 Peの夢 >>