diary/Kojima

・grub ベースのインストーラ

今まで,インストーラの CD ブートには syslinux(の中の isoliniux)を使って いたのだけど,調べてみたら最近 grub では stage2_eltorito という stage2 ファイルを作成して,これを用いれば CD boot が可能な模様.

どのバージョンから可能になったのかまでは調べてないけど,数年前は grub
では FD ブートは可能だったけど CD ブートは不可能だったので,CD ブート
には仕方なく syslinux を使っていた記憶がある.

CD ブートが可能ならば grub の方が応用が効く(syslinux は設定ファイルに登 録しているコマンド以外は利用できないけど,grub はコマンドラインに落して 自由に読み込むカーネルやカーネルの起動時オプションを設定できる)ので,さっそく インストーラのブート部分を grub に変更してみた.

 実際は stage2_eltorito というファイルがよきに計らってくれるようで,mkisofs 
 の起動コマンドとしてこのファイルを指定して,あとは /boot/grub/grub.conf を
 用意するだけで済んだ

最近の Plamo-4.2x のツリーではインストーラのカーネルもインストールする カーネルに合わせて 2.6.21.5 を使っているのだけど,このバージョンのカー ネルだと pcmcia-cs が動かない旨の報告が Plamo-ML に届いていたので, pcmciautils を使うように修正しようとしたら,pcmciautils は udev に依存 しているので,結局インストーラでも udev を使うハメになってしまい,結構 悪戦苦闘.Plamo-4.2x では国産の murasaki という hotplug エージェントを 使っているのだけど,murasaki の開発は 2005 年くらいから停滞しているので, 最近のカーネルの機能にどこまで対応しているかがよく分からず,murasaki を 使っている環境で pcmcia 回りのドライバがロードされないのは 果してどこに 問題があるのかの切り分けに四苦八苦.

デスクトップな PC 用の機能なら VMware でかなりのレベルはカバーできるの
で,mkisofs で作成したイメージファイルを仮想 CD に指定するだけでテスト
できるのだけど,PCMCIA 回りは VMware では対応していないので,実際のノー
ト PC でテストしないといけないため,CD イメージを作っては CD-RW に焼い
てノート PC で起動して,,の繰り返しだった.バグを 1 つツブしては実メ
ディア(今回は CD-R(W))を焼いて再テストする,というのを個人的には「賽の
河原の小石積み」と呼んでいるのだけど,久しぶりにこの作業をやるハメになっ
た(苦笑

まぁ,そんなこんなで苦労したけど,何とか murasaki の 0.81 あたりを使っ て,デフォルトでは off になっている PCMCIA 回りの認識を murasaki にやら せるようにすれば 2.6.21.5 カーネル + uClibc + udev + pcmciautils なイン ストーラ環境でも PCMCIA カードが認識されるようになった模様.ただ,この 環境を FD インストーラに持っていくことはまず不可能なので,FD インストー ラは 4.21 のままにしておく方がよさげな感じ.

最近だとレガシーデバイスの代表とも言える FDD は最初から用意してい ないマシンの方が多いし,CD ブートができずに FD インストーラが必要な環境 に新しいカーネルベースのインストーラが必要になるとも思えないので, FD インストーラにはヘンに手をかけない方がコストパフォーマンスはいいのだろ うなぁ..

FD インストーラを切り捨てて CD インストーラのみにすれば,使用サイズを抑 制するために uClibc を採用する必要もなくなるので,ある意味 CDplamo な環 境をインストーラに使うということが可能になるから,開発の手間としてはそっ ちの方が楽だとは思うのだが..



トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2021-12-17 (金) 16:35:41