USL-5Pのデュアルブート化

注文していた中古マイクロドライブ1Gが届いたので、早速チャレンジ開始。

まず最初に、今日参考にした主なページを紹介。「USL-5PのCFをマイクロドライブに入れ替えて、オリジナル環境とdebian26環境のデュアルブート」を作るなら、以下のページがかなり参考になった。


  • USL-5Pで自宅サーバー
  • USL-5Pで遊ぶ話
  • USL-5P - PukiWiki
  • まず最初にUSL-5Pの外装を分解し、内蔵CFにたどりつく。
    CFをはずしてPCに接続されたUSBカードリーダーに差し込む。

    Linuxマシンが無い場合、Knoppixを使うか、VMwareを使ってLinux環境を構築すれば十分。
    ちなみに、Microsoft Virtual Server 2005 R2はUSBコントローラをサポートしていないので、今回のような用途には使えない。

    あらかじめVMwareでFedora Core 5環境を用意していたので、バーチャルマシンにUSBコントローラを追加して、USBカードリーダをデバイスとして追加した。
    Fedora Core 5を起動した時点でCFはマウント済みであったので、デスクトップから右クリックでアンマウントして、以下、コンソールで作業。

    $ cat /proc/partitions

    CFディスクは/dev/sda、CFのパーティションは/dev/sda1として認識されていた。
    続いてddコマンドでディスクイメージの吸出し。

    $ dd if=/dev/sda of=./usl5p_org_disk.dat

    ddを使う場合、オリジナル環境のパーティションは64MBのまま書き戻される。
    今回オリジナル環境には手をつけず、そのまま起動できるようにしたかったので、ddコマンドを使うことにした。

    オリジナル環境をベースに拡張したい場合は64MBでは足りない。その場合はUSL-5P - PukiWikiで紹介されているように、tarコマンドで吸い出して、書き戻し、liloを書き込むのが良いようだ。

    吸出しが完了したら、CFをUSBカードリーダーから抜いて、マイクロドライブをUSBカードリーダーに差し込む。
    購入したマイクロドライブは既にFATフォーマット済みであったため、fdiskコマンドでパーティションを削除した。

    先ほどオリジナルのCFから吸い出したUSL-5Pのイメージを、今度は書き戻す。

    $ dd if=./usl5p_org_disk.dat of=/dev/sda

    吸出しよりはずっと時間がかかる。

    fdiskコマンドで確認すると、マイクロドライブ上には64MBのパーティションが作られていた。

    この状態でUSBカードリーダーから抜き、USL-5Pに装着して、緊張の電源オン。
    どうやら正常に動いているっぽいLEDの点滅があって、ピー!の音と共に準備完了。
    緊張の一瞬。管理Webページにアクセスするとちゃんとページが表示された。ファイル共有も問題ない。第一関門突破。

    USL-5Pオリジナル環境でブート成功したら、続いてそのUSL-5P上で作業するために、telnetdを組み込む。
    便利なことにUSL-5Pのファーム更新機能を使ってtelnetdを導入する方法が公開されているので、それを利用して、telnetの用意もできた。
    以降はUSL-5Pのオリジナル環境+telnetdを使って作業する。

    fdiskコマンドを使ってswapとdebian26用のパーティションを作る。

    実はlinuxを触るのは久しぶり。slackware3.xの頃に結構勉強したが、すっかり忘れてしまった。実は当時買ったオライリーのリファレンス本を片手に四苦八苦。

    /dev/hda2をswapに128MB、残りの/dev/hda3、800MB程度をdebian26用に割り当てた。
    mkswapコマンドと、mkfsコマンドを使ってそれぞれファイルシステムを作る。

    /dev/hda3 を /mnt/hda3にマウントし、以降、このフォルダにdebian26環境を用意する。

    debian26の導入 - USL-5Pで自宅サーバーを参考に、LANDISKで漕ぎいでな〜♪Kernel関連ページからbase26-sh4-20060329-etch.tgzをダウンロード。
    ちなみに、http://eggplant.ddo.jp/は回線が細いらしいので、ミラーhttp://iohack.sourceforge.jp/kogiidena/debian26/base/からダウンロード推奨。

    ダウロードしたファイルを/mnt/hda3以下に解凍する。
    さらに/mnt/hda3/etc以下のネットワーク関連ファイルを修正。

    続いてデュアルブート環境の構築

    debian26のカーネルとブートローダーを/bootにコピー。

    • sh-2.05b# cp /mnt/hda3/boot/vmlinuz-2.6.16-sh /boot
    • sh-2.05b# cp /mnt/hda3/boot/boot.b-selk /boot

    /mnt/hda3/etc/lilo-usl5p.conf
    を/etcにコピーし、lilo.confにリネーム。(オリジナルのlilo.confはバックアップしておく)
    とりあえず今は、デフォルトでUSL-5Pオリジナル環境をブートするよう修正した。

    /mnt/hda3/sbin/lilo
    を実行。

    今日はUSL-5Pのオリジナル環境とdebian26環境のデュアルブートが構築できたと
    ころまで。
    ここまで(作業用Linux環境を用意する時間は除いて)2時間とちょっと。
    ほとんど全部先人の成果に頼りっぱなしだけど、簡単なコマンドの知識があれば、特に迷うことなくここまで到達できる。

    次の予定:


  • SAMBAのインストールと設定
  • mt-daapdのインストールと設定